导航:首页 > 编程大全 > docker编排工具

docker编排工具

发布时间:2025-02-23 07:50:17

1. Docker Swarm

Swarm 是使用 SwarmKit 构建的 Docker 引擎内置(原生)的集群管理和编排工具。 Docker Swarm 是 Docker 官方三剑客项目之一,提供 Docker 容器集群服务,是 Docker 官方对容器云生态进行支持的核心方案。

使用它,用户可以将多个 Docker 主机封装为单个大型的虚拟 Docker 主机,快速打造一套容器云平台。Swarm mode 内置 kv 存储功能,提供了众多的新特性,比如:具有容错能力的去中心化设计、内置服务发现、负载均衡、路由网格、动态伸缩、滚动更新、安全传输等。使得 Docker 原生的 Swarm 集群具备与 Mesos 、 Kubernetes 竞争的实力。使用 Swarm 集群之前需要了解以下几个概念。

运行 Docker 的主机可以主动初始化一个 Swarm 集群或者加入一个已存在的 Swarm 集群,这样这个运行 Docker 的主机就成为一个 Swarm 集群的节点 (node) 。节点分为 管理 (manager) 节点和工作 (worker) 节点 。

管理节点用于 Swarm 集群的管理, docker swarm 命令基本只能在管理节点执行(节点退出集群命令 docker swarm leave 可以在工作节点执行)。一个 Swarm 集群可以有多个管理节点,但只有一个管理节点可以成为 leader ,leader 通过 raft 协议实现。

工作节点是任务执行节点,管理节点将服务 ( service ) 下发至工作节点执行。管理节点默认也作为工作节点。你也可以通过配置让服务只运行在管理节点。来自 Docker 官网的这张图片形象的展示了集群中管理节点与工作节点的关系。

任务(Task) 是 Swarm 中的最小的调度单位,目前来说就是一个单一的容器; 服务(Services) 是指一组任务的集合,服务定义了任务的属性。服务有两种模式:

两种模式通过 docker service create 的 --mode 参数指定。来自 Docker 官网的这张图片形象的展示了容器、任务、服务的关系。

我们这里利用上一节的 docker machine 来充当集群的主机,首先先创建一个 manager 节点,然后在该节点上执行初始化集群命令:

执行 docker swarm init 命令的节点自动成为管理节点。

管理节点初始化完成后,然后同样的用 docker-machine 创建工作节点,然后将其加入到管理节点之中去即可:

我们可以看到上面的提示信息: This node joined a swarm as a worker. ,表明节点已经加入到 swarm 集群之中了。

经过上边的两步,我们已经拥有了一个最小的 Swarm 集群,包含一个管理节点和两个工作节点。

管理节点使用 docker node ls 查看集群:

使用 docker service logs 来查看某个服务的日志。

使用 docker service rm 来从 Swarm 集群移除某个服务:

正如之前使用 docker-compose.yml 来一次配置、启动多个容器,在 Swarm 集群中也可以使用 compose 文件(docker-compose.yml)来配置、启动多个服务。

上一节中,我们使用 docker service create 一次只能部署一个服务,使用 docker-compose.yml 我们可以一次启动多个关联的服务。

我们以在 Swarm 集群中部署 WordPress 为例进行说明:(docker-compose.yml)

其中 constraints: [node.role == manager] 是调度策略,文档地址: https://docs.docker.com/swarm/scheler/filter/

在 Swarm 集群管理节点新建该文件,其中的 visualizer 服务提供一个可视化页面,我们可以从浏览器中很直观的查看集群中各个服务的运行节点。

在 Swarm 集群中使用 docker-compose.yml 我们用 docker stack 命令,下面我们对该命令进行详细讲解。

部署服务使用 docker stack deploy ,其中 -c 参数指定 compose 文件名。

要移除服务,使用 docker stack down :

该命令不会移除服务所使用的 数据卷 ,如果你想移除数据卷请使用 docker volume rm 。

阅读全文

与docker编排工具相关的资料

热点内容
实现http协议下的多线程文件传输 浏览:655
23款app遭下架的都有哪些 浏览:360
移动版大王卡套包含哪些app 浏览:897
买二手东西哪个网站好 浏览:103
文件夹删除了如何恢复 浏览:363
jsp按钮圆角 浏览:699
javafx的使用 浏览:827
dvd里面的文件用什么软件复制 浏览:598
文件下载到哪里去 浏览:365
linux下php上传图片 浏览:195
win10开机后qq打不开 浏览:95
女生购物用哪些app 浏览:641
新浏览器支持js并行加载 浏览:843
西门子hrs代码大全 浏览:981
翻译失误曾让冷战升级 浏览:762
苹果服务器掉单 浏览:326
苹果qq文件怎么删除 浏览:474
snapchat保存视频在哪个文件夹 浏览:97
高德导航下载地图文件在哪里 浏览:126
下载宽带密码查看器 浏览:182

友情链接