Ubuntu 20.04服务器上设置Docker Swarm集群的步骤

瑞兹 发表于2020-10-19 17:07
浏览次数:
在手机上阅读
此文章约为1492字,阅读需要4 分钟

ubuntu 20.04服务器上设置Docker swarm集群。Docker Swarm是用于创建Docker主机集群的工具,借助Docker Swarm,我们可以创建一个高可用性和高性能集群。

步骤1:准备节点

在我的设置中,我有一个管理器节点和两个工作器节点,在每台主机上,将hosts文件配置为包括所有其他节点:

sudo vim /etc/hosts

将以下内容添加到文件:

192.168.1.10 manager

192.168.1.11 worker-01

192.168.1.12 worker-02

保存文件,确保可以使用主机名,而不是IP地址从每个主机ping通所有主机。

步骤2:在ubuntu 20.04上安装Docker CE

我们将在主机上安装Docker CE,要在Ubuntu 20.04上安装Docker CE,请执行以下步骤。

使用以下命令安装依赖包:

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

使用以下命令将docker key和docker存储库添加到您的主机中:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

更新包:

sudo apt-get update

确保您要从官方Docker仓库,而不是默认的Ubuntu仓库进行安装:

$ apt-cache policy docker-ce
docker-ce: 
Installed: (none) 
Candidate: 5:19.03.13~3-0~ubuntu-focal 
Version table: 
5:19.03.13~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
5:19.03.12~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
5:19.03.11~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
5:19.03.10~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
5:19.03.9~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages

在Ubuntu 20.04上安装Docker CE:

sudo apt install docker-ce

安装后,应启动Docker守护程序,通过运行以下命令来确认状态:

$ sudo systemctl status docker

出现Active: active (running)就表示成功了。

将您的用户添加到Docker组中,以避免每次运行docker命令时键入sudo:

sudo usermod -aG docker ${USER}

步骤3:创建Docker Swarm集群

要设置群集集群,我们首先需要在管理器节点上初始化Docker Swarm模式,然后将工作节点添加到群集中,运行以下命令以初始化管理器上的Docker swarm节点:

$ sudo docker swarm init --advertise-addr 192.168.1.10
Swarm initialized: current node (fsuaqqpihi2eabmmq8gldzhpv) is now a manager. 
To add a worker to this swarm, run the following command: 
sudo docker swarm join --token SWMTKN-1-018kvdektwa74z8fajb5c1u6jyz6qfk4ood8u4qotw7go9jj0p-cfpnh7omy86
xcgoh45vau2kaj 192.168.1.10:2377

要将管理器添加到该群,请运行“docker swarm join-token manager”并按照说明进行操作。

现在,我们将使用集群“manager”节点中的“join-token”将“worker-01”和worker-02节点添加到集群“manager”中:

$ sudo docker swarm join --token SWMTKN-1-13xo81gxpb3ttjh5e335pfrmz9fbnliikgfys7u8l4r8k4m575-2gsjwjs3y1i
4kgeua2yu840hw 192.168.1.10:2377 
This node joined a swarm as a worker.

通过在管理器上运行以下命令,检查工作节点是否已成功添加到集群中:

$ sudo docker node ls

Ubuntu 20.04服务器上设置Docker Swarm集群的步骤

步骤4:在集群中部署应用程序

我们创建一个服务Nginx Web服务器,使其在默认的http端口80上运行,然后将其公开给主机上的端口8080:

$ sudo docker service create --name web-server --publish 8080:80 nginx:1.13-alpine
pq5txw0p9c1qcjrrl2lw3mh5p
overall progress: 1 out of 1 tasks
1/1: running   [========================>]
verify: Service converged

通过运行以下命令来确认创建的服务:

$ sudo docker service ls

Ubuntu 20.04服务器上设置Docker Swarm集群的步骤

步骤5:Replicas和Scaling服务

我们将制作3个Web服务器服务副本,以便可以在管理器和两个工作程序节点上访问该服务:

$sudo docker service scale web-server=3
web-server scaled to 3
overall progress: 3 out of 3 tasks
1/3: running   [========================>]
2/3: running   [========================>]
3/3: running   [========================>]
verify: Service converged

确认创建的服务Replicas:

$ sudo docker service ls

Ubuntu 20.04服务器上设置Docker Swarm集群的步骤

使用以下所有节点IP从浏览器访问该服务:http://192.168.1.10:8080,http://192.168.1.11:8080和http://192.168.1.12:8080,您应该获得一个nginx欢迎页面,如下所示:

Ubuntu 20.04服务器上设置Docker Swarm集群的步骤

至此,在Ubuntu 20.04上设置Docker Swarm的操作全部完成。

446 个用户觉得很有用

uc电脑园提供的技术方案或与您产品的实际情况有所差异,您需在完整阅读方案并知晓其提示风险的情况下谨慎操作,避免造成任何损失。

如此好文,分享给朋友

图片来源:网络

发表评论
验证码:
评论列表
共0条