首页 > 科技 >

docker之DockerSwarm的了解

2019-02-15 17:13:59 网络整理 阅读:166 评论:0

这次一起了解下docker Swarm,什么是dockerSwarm。

docker之DockerSwarm的了解

什么是docker Swarm

产品背景

使用docker的流程,ssh到一台服务器,运行docker命令来运行本机的docker服务,随着docker发展,越来越多的服务想要运行在docker容器中,如果在这样挨个的登录在每个ssh主机上管理容器,就非常的吃力了,而且我们的应用也需要高可用,也需要避免单点的故障,docker现有的能力已经很难满足这样的需求了,在这样的背景下,docker社区就产生类的dockerSwarm项目。

概念

什么是swarm,swarm这个名词比较贴切,swarm这个单词的意思就是动物的集群行为,,比如我们常见的蜂群,鱼群,大雁南飞都可以成为swarm,swarm项目就是把多个docker 实例聚集在一起形成一个大的docker实例,对外提供集群服务,同时这个集群提供所有的api,用户可以相使用docker实例一样使用docker的集群。

昨日今日

docker swarm在1.12之前是一个独立的项目,需要单独下载,在1.12之后该项目就合并到了docker中,成为docker的子项目,目前docker唯一的一个原生支持docker集群的管理工具。

docker swarm的架构图

下面这个图,就可以看到docker swarm管理docker的一个架构图。以前使用docker命令行是针对docker主机的,然后到这台机器上单独的控制这台机器上的主机,有了swarm之后,客户端命令是针对docker集群的。它的命令几乎等同于docker的原生命令,它把命令发送给swarm,swarm选择发送一个节点去真正的执行,swarm是通过docker自带的远程的API,来实现对docker的控制。

docker之DockerSwarm的了解

下面这个图,这张图跟上面一张图描述的是一个事情,只不过它暴露了更多的的细节,上面的大框和下面的小框都代表了一台服务器,物理机或者虚拟机,我们从上面说,上面是swarm的一个manager节点,管理这个worker节点,可以看到管理了多少个cpu,多少个内存,每个上面运行的服务,每个服务的状况,比如他们的标签,他们的健康状态,Manager管理者每个节点的生命周期,比如加入一个节点,下线一个节点,manager还管理者每个服务的生命周期,服务的部署,更新,停止,删除,Node节点比较单纯他就运行了docker daemon,因为在1.12之后swarm已经融入了docker本身,开发一个远程的api给manager节点调度,运行具体的服务和容器,下面咱们一起看看服务的部署流程是怎样的,在这样的架构上是如何体现的。

docker之DockerSwarm的了解

环境的搭建

标签:节点 容器 集群

相关文章