当前位置: 首页 > news >正文

swarm集群部署

1.部署前准备

IP地址计算机名角色
192.168.8.150server01swarm_manager
192.168.8.151server02swarm_node
192.168.8.152server03swarm_node

2.所有节点都要安装docker

apt-get -y install ca-certificates curl gnupg lsb-release
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
apt-get -y install docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER# 设置镜像加速和私有镜像站
cat >> /etc/docker/daemon.json << EOF
{"registry-mirrors":["https://docker.rainbond.cc"],"insecure-registries": ["http://192.168.57.200:8099"]
}EOF#重启docker
systemctl daemon-reload
systemctl restart docker

# 所有节点设置 hosts 解析 cat >> /etc/hosts << EOF

192.168.146.10 server01

192.168.146.11 server02

192.168.146.12 server03

EOF

3.主节点初始化集群-init

[root@server01 ~]# docker swarm init --advertise-addr 192.168.8.150

#--advertise-addr参数表示其它swarm中的worker节点使用此ip地址与manager联系

# Swarm initialized: current node (dh6qthwwctbrl0y3hx1k41icl) is now a manager.

To add a worker to this swarm, run the following command:

# 保存下列命令与token令牌,用于添加工作节点 docker swarm join --token SWMTKN-1-0vdbyxq80uk8sf9nlnahsnkv6w3gaf5necl992ia0g8dmc5x8c-bkenoigc7kwizoch08r3fc4wq 192.168.8.150:2377

# 添加Manager节点到Swarm集群时,执行'docker swarm join-token manager'获取令牌 To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

4.添加worker(node节点)到swarm

# 复制你自己上一步中输出的完整命令到工作节点中。

root@server02:~# docker swarm join --token SWMTKN-1-00hjfw0qja65fe0icmzu3u45zcvvpmhab5nx2fb9b0za9e5x91-d0sawsg9x0bmjzttllwdgx903 192.168.146.10:2377
This node joined a swarm as a worker.
root@server03:~# docker swarm join --token SWMTKN-1-00hjfw0qja65fe0icmzu3u45zcvvpmhab5nx2fb9b0za9e5x91-d0sawsg9x0bmjzttllwdgx903 192.168.146.10:2377
This node joined a swarm as a worker.

5.验证加入情况

docker node ls

6.在Swarm中部署服务(nginx为例)

# 创建网络在部署服务

# 创建网络

root@yjy-virtual-machine:~# docker network create -d overlay nginx_net
w73swt4bakgvn2hwp994x52h5


root@yjy-virtual-machine:~# docker netwwork ls | grep nginx_net
docker: unknown command: docker netwwork

Run 'docker --help' for more information

#部署服务

root@yjy-virtual-machine:~# docker service create --replicas 1 --network nginx_net --name my_nginx -p 80:80 nginx:1.26
6m9xenp8d9lz0f2kuwi7c9egt
overall progress: 1 out of 1 tasks 
1/1: running   
verify: Service 6m9xenp8d9lz0f2kuwi7c9egt converged 
 

在 manager与node 节点上使用上面这个覆盖网络创建 nginx 服务 其中,--replicas 参数指定服务由几个实例组成 注意:不需要提前在节点上下载 nginx 镜像,这个命令执行后会自动下载这个容器镜像

7.(1)使用docker service ls 查看正在运行服务的列表

(2)查询Swarm中服务的信息 -pretty 使命令输出格式化为可读的格式,不加 --pretty 可以输出更详细的信息:

(3)查询到哪个节点正在运行该服务

还能做负载均衡实验

1.先要进入三个节点的容器,再编辑网页内容,编辑完之后退出容器

manage:

node1:

node2:

2.用curl就能访问到了

http://www.dtcms.com/a/512762.html

相关文章:

  • 建设网站的工作wordpress更改导航栏样式
  • 企业网站建设时间表廊坊哪里有做阿里巴巴网站的
  • 使用 mina-sshd 库通过 SCP 上传文件并解决无法上传大文件的问题
  • apifox mock 假数据
  • 脑机接口:LFP相关知识
  • 外网访问象过河软件
  • dedecms小说网站模板下载wordpress收录提交插件
  • HarmonyOS 5 鸿蒙多设备适配与分布式开发指南
  • 使用C#代码删除 Excel 中的公式但保留数值
  • 科技设计网站广告设计制作发布
  • 网站域名管理怎么登陆网站响应式首页模板
  • 企业公司做网站企业网站访问对象有哪些
  • Eureka 多层缓存机制详解
  • HarmonyOS 5 鸿蒙Context上下文机制与资源管理详解
  • wordpress播放器插件杭州百度seo
  • 网站维护费用2021国内军事新闻大事件
  • vue 中 directive 作用,使用场景和使用示例
  • Orleans 与 Kubernetes 完整集成指南
  • 珠海网站建设网有心学做网站
  • 网站建设 教学大纲wordpress 文章查询
  • 推广方案设计台州seo优化公司
  • 新浪微博 搭建网站建立网站的方案
  • 用易语言做抢购网站软件下载云搜索神器
  • C#上位机软件:2.5 体验CLR实现多语言混合编程
  • 网页站点江苏网站集约化建设
  • 怎么把做的网站传怎样设置自己的网站
  • 安徽网站设计哪家效果好茂名做网站的公司
  • Linux C/C++ 学习日记(29):IO密集型与CPU密集型、CPU的调度与线程切换
  • 网站布局案例网站内容如何管理
  • (持续更新中!!~)30、原来可以这样理解C语言_项⽬实践-贪吃蛇