在 Ubuntu 20.04 LTS 上安装和配置 Docker Swarm

介绍

Docker Swarm 是一个容器编排工具。 也就是说,它允许创建 docker 主机集群并将它们变成单个虚拟服务器。 这使您在容器上运行的应用程序通过在集群内的可用主机之间分布来实现高性能和高可用性。 您将在本文中学习怎样安装和配置 docker swarm。

先决条件

在 Vultr 部署两个或更多完全更新的 Ubuntu 20.04 LTS,至少有 2GB 的 RAM 和 1 个 vCPU 内核。 在两台服务器上创建一个具有 sudo 访问权限的非 root 用户。

1. 配置集群主机

对于部署的服务器数量,一个将是 管理节点 其余的 工作节点. 当工作节点运行容器时,管理节点处理所有集群管理任务。 在本文中,我们将使用两个节点,例如:

192.0.2.11 manager
192.0.2.12 worker-1

以具有 sudo 访问权限的非 root 用户身份通过​​ SSH 连接到所有 Ubuntu 服务器。

编辑主机文件 /etc/hosts 在所有节点中。

$ sudo nano /etc/hosts

在文件中添加以下代码。

192.0.2.11 manager
192.0.2.12 worker-1

使用主机名 Ping 所有节点。

$ ping -c 4 manager
$ ping -c 4 worker-1

2.安装Docker CE

在所有节点上安装 Docker CE。 在所有节点上执行此步骤中的所有阶段。

更新系统包。

$ sudo apt update

安装所有必需的软件包。

$ sudo apt install apt-transport-https ca-certificates curl software-properties-common -y

安装 Docker 存储库签名密钥。

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

添加 Docker 存储库。

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

更新系统包。

$ sudo apt update

安装 Docker CE。

$ sudo apt install docker-ce -y

确认 Docker 的状态。

$ sudo systemctl status docker

启用 Docker 服务在系统启动时自动运行。

$ sudo systemctl enable docker

将您当前的用户添加到 docker 团体。

$ sudo usermod -aG docker ${USER}

3.创建Docker Swarm集群

要创建 Docker Swarm 集群,您首先需要在集群上初始化 swarm 模式 经理 节点。 然后,将工作节点加入集群。 严格使用节点IP地址。

初始化集群模式。

$ sudo docker swarm init --advertise-addr 192.0.2.11

前往 工人 1 节点并将其添加到集群中。 修改 --token 用你自己的价值。

$ sudo docker swarm join --token SWMTKN-1-2jxta71638d1pyioznb9jo4hi4u5ppd8t7lc90linwi9acu54s-aef4mqdy23ktrkcxsp57uyoma 192.0.2.11:2377

前往 经理 node 并验证所有工作节点是否成功加入集群。

$ sudo docker node ls

4. 将应用程序部署到集群

前往 经理 节点并创建一个名为“Docker 入门网页”的服务 docker-tutorial 它将在默认的 http 端口 80 上运行并将其公开到主机服务器上的端口 80。

$ sudo docker service create --name docker-tutorial --publish 80:80 docker/getting-started

验证创建的服务的状态。

$ sudo docker service ls

5. 创建服务副本

我们的集群中有两个节点,我们将制作服务的两个副本。 这将允许从管理器和工作器节点访问服务。

创建副本。

$ sudo docker service scale docker-tutorial=2

验证服务副本的状态。

$ sudo docker service ls

转到您的浏览器并从您的所有节点访问该服务。 例如:

管理节点.

https://192.0.2.11

worker-1 节点.

https://192.0.2.12

结论

您已成功安装和配置 Docker Swarm。 您现在可以通过向集群添加更多工作程序节点并创建您正在运行的服务的更多副本来扩展您的应用程序。

相关阅读:

Posted in: LinuxTags: