containerpilot容器监管demo

containerpilot

containerpilot:云原生应用的初始化系统.它用于容器内部的服务发现,配置和生命周期自动化管理,使你专心于业务开发.

编排:应用操作自动化.包括连接依赖组件,启动时的特殊操作等.

但是为了实现编排,应用需要:

  • 自注册到服务列表,便于其他应用使用
  • 查询服务列表,获取依赖服务
  • 当容器启动时完成配置,每次部署都要再配置

而containerpilot出现就是为了解决上面问题.
它被设计为容器的初始系统,作为线程监管人执行健康检查,注册服务到服务列表,观测服务列表变化,使你的特殊需求可以通过容器的生命周期事件被激活.containerpilot使用Consul来协调容器应用的全局状态

快速启动:

git clone https://github.com/liulei3/hello-world.git
cd hello-world
docker-compose up -d

访问 http://localhost

容器缩放:将hello扩展为2个服务,将world扩展为3个服务

docker-compose up --scale hello=2 --scale world=3 -d

服务架构图:

其中nginx作为入口层,主要作用是配合consul进行服务发现和调用,顺带做了反向代理.

具体技术细节参考下面文档:

containerpilot官方文档:https://github.com/joyent/containerpilot
workshop说明文档 https://www.joyent.com/blog/applications-on-autopilot
原文地址:https://www.cnblogs.com/chengmuyu/p/13054555.html