朔州城市建设网站,除了小红书还有什么推广平台,劳务合同免费模板下载,大连网站建设多少钱一.Docker Swarm集群raft算法讲解 Raft #xff1a;一致性算法#xff0c;在保证大多数管理节点存活的情况下#xff0c;集群才能使用#xff0c; 所以就要求如果集群的话#xff0c; manager 节点必须 3 台 #xff0c;如果是两个台#xff0c;其中一台宕机#…一.Docker Swarm集群raft算法讲解 Raft 一致性算法在保证大多数管理节点存活的情况下集群才能使用 所以就要求如果集群的话 manager 节点必须 3 台 如果是两个台其中一台宕机剩余的一台也将不可用以致整个集群不可用 Manager 管理节点用于管理工作节点,为了利用 swarm 模式的容错特性 Docker 建议根据组织的高可用性要求实现 奇数个节点, 当有多个管理器时可以从管理器节点的故障中恢复而无需停机 一个有三台管理器集群最多可以容忍一台管理器的宕机一个有五台管理器集群最多可以同时丢失两个管理器节点宕机一个有N台管理器集群最多可以容忍丢失 (N-1)/2管理器宕机Docker 建议一个 swarm 最多使用七个管理器节点 可以在前面章节的基础上,再次创建2台服务器,作为manager,这样就有3台机器作为mananger了,分别为:192.168.31.81,192.168.31.82,192.168.31.83, 在192.168.31.81机器上创建一个集群,命令: docker swarm init --advertise-addr 192.168.31.81 然后执行命令: docker swarm join-token manager,获取增加manager管理节点的命令,如下: [rootmanager_81 conf.d]# docker swarm join-token managerTo add a manager to this swarm, run the following command:docker swarm join --token SWMTKN-1-5hts6hqq9ooww75omdfdd2v4tx9vpy20cpjcoc4ieetdys4tc3-8zth4t1az8rbg4yaj1quantoo 192.168.31.81:2377把上面命令分别在192.168.31.82,192.168.31.83上执行,这样这三台机器就是集群的manager了,其中一台为Leader,可以通过命令docker node ls查看集群状态,然后可以对这几台manager就行操作 二.Docker Swarm Web管理工具 当Docker部署规模逐步变大后可视化监控容器环境的性能和健康状态将会变得越来越重要,Docker的图形化管理工具提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作包括上传下载镜像创建容器等操作、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能,常用工具如下 docker UIlocal portainer daocloud 1.使用portainer可视化管理工具 使用portainer不仅可以管理docker swarm,还可以管理k8s,官网:https://www.portainer.io/ (1).安装portainer 需要在manager节点docker pull portainer/portainer,这里以192.168.31.81这个manager节点为例 [rootmanager_81 conf.d]# docker pull portainer/portainer
docker: pull portainer/portainer is not a docker command.
See docker --help
[rootmanager_81 conf.d]# docker pull portainer/portainer
docker: pull portainer/portainer is not a docker command.
See docker --help
[rootmanager_81 conf.d]#
[rootmanager_81 conf.d]#
[rootmanager_81 conf.d]# docker pull portainer/portainer
Using default tag: latestlatest: Pulling from portainer/portainer
772227786281: Pull complete
96fd13befc87: Pull complete
0bad1d247b5b: Pull complete
b5d1b01b1d39: Pull complete
Digest: sha256:47b064434edf437badf7337e516e07f64477485c8ecc663ddabbe824b20c672d
Status: Downloaded newer image for portainer/portainer:latest
docker.io/portainer/portainer:latest
[rootmanager_81 conf.d]# [rootmanager_81 conf.d]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gowebimg v1.0.1 be3c1ee42ce2 2 days ago 237MB
mycentos v1 4ba38cf3943b 3 days ago 434MB
nginx latest a6bd71f48f68 3 days ago 187MB
mysql latest a3b6608898d6 4 weeks ago 596MB
portainer/portainer latest 5f11582196a4 12 months ago 287MB
[rootmanager_81 conf.d]#
(2).然后再使用如下命令运行Portainer容器 portainer其实就是一个web网站,只不过把它制作成为了一个容器而已 docker run -p 9000:9000 --name portainer \
--restartalways \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /mydata/portainer/data:/data \
-d portainer/portainer
[rootmanager_81 ~]# docker run -p 9000:9000 --name portainer \--restartalways \-v /var/run/docker.sock:/var/run/docker.sock \-v /mydata/portainer/data:/data \-d portainer/portainer
be27e0d46d28fff3fc04f5fff3a57381ca5682e05397fcdb21c86237e245f4b7
[rootmanager_81 ~]#
[rootmanager_81 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
be27e0d46d28 portainer/portainer /portainer 30 seconds ago Up 20 seconds 8000/tcp, 9443/tcp, 0.0.0.0:9000-9000/tcp, :::9000-9000/tcp portainer
(3).外部访问Portainer容器 访问192.168.31.81:9000 2.汉化portainer 官网地址:https://hub.docker.com/r/6053537/portainer-ce (1).下载
[rootmanager_81 ~]# docker pull 6053537/portainer-ce
Using default tag: latest
latest: Pulling from 6053537/portainer-ce
795a208431d7: Pull complete
...
b8d846b08218: Pull complete
Digest: sha256:059e3de691409f22b1cdcc8ef36e2c12cd45f305652a7a163efe465d10af9473
Status: Downloaded newer image for 6053537/portainer-ce:latest
docker.io/6053537/portainer-ce:latest
[rootmanager_81 ~]#
[rootmanager_81 ~]#
[rootmanager_81 ~]#
[rootmanager_81 ~]#
[rootmanager_81 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gowebimg v1.0.1 be3c1ee42ce2 2 days ago 237MB
mycentos v1 4ba38cf3943b 3 days ago 434MB
nginx latest a6bd71f48f68 3 days ago 187MB
6053537/portainer-ce latest b9c565f94ccc 4 weeks ago 322MB
mysql latest a3b6608898d6 4 weeks ago 596MB
portainer/portainer latest 5f11582196a4 12 months ago 287MB
[rootmanager_81 ~]#
(2).启动容器 在启动之前,先停止portainer docker run -p 9000:9000 --name portainer-ce \
--restartalways \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /mydata/portainer/data:/data \
-d 6053537/portainer-ce
[rootmanager_81 ~]# docker run -p 9000:9000 --name portainer-ce \--restartalways \-v /var/run/docker.sock:/var/run/docker.sock \-v /mydata/portainer/data:/data \-d 6053537/portainer-ce
29d46940629a1ef0d385718d1b8ebcacdc39e72e718d84f5fb2c8a091afa35c4[rootmanager_81 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
29d46940629a 6053537/portainer-ce /portainer 7 seconds ago Up 3 seconds 8000/tcp, 9443/tcp, 0.0.0.0:9000-9000/tcp, :::9000-9000/tcp portainer-ce
(3).访问 该portainer工具可以帮助我们查看集群信息,容器信息,服务信息,以及一些简单的操作,比较直观, 如果要操作集群的话,还是推荐使用命令行工具 [上一节][Docker]十.Docker Swarm讲解