部署docker swarm集群

基础环境
| 
 机器名称  | 
 IP地址  | 
 安装的软件  | 
| 
 node-1  | 
 192.168.10.190  | 
 docker-ce  | 
| 
 node-2  | 
 192.168.10.191  | 
 docker-ce  | 
| 
 node-3  | 
 192.168.10.192  | 
 docker-ce  | 
系统信息
[root@huanglf ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
[root@huanglf ~]# uname -a
Linux huanglf 3.10.0-1127.18.2.el7.x86_64 #1 SMP Sun Jul 26 15:27:06 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@huanglf ~]#
1、基础优化
1、时间同步
echo "#time sync by fage at 2020-7-22" >>/var/spool/cron/root && echo "*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1" >>/var/spool/cron/root && systemctl restart crond.service
2、关闭防火墙和selinux
systemctl stop firewalld && systemctl disable firewalld && setenforce 0 && sed -i s#SELINUX=enforcing#SELINUX=disable#g /etc/selinux/config
3、更改主机名
hostname node-1
echo "node-1" >/etc/hostname
hostname node-2
echo "node-2" >/etc/hostname
hostname node-3
echo "node-3" >/etc/hostname
4、更改hosts文件
cat >/etc/hosts <<EOF
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.190 node-1
192.168.10.191 node-2
192.168.10.192 node-3
EOF
5、分发公钥,每台都要执行
ssh-keygen -t rsa -f /root/.ssh/id_rsa -P ""
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.10.190
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.10.191
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.10.192
6、安装基础软件
yum install -y lrzsz nmap tcpdump screen tree dos2unix nc iproute net-tools unzip wget vim bash-completion.noarch telnet ntp ntpdate lsof curl
7、更换国内原
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
2、安装docker
yum install -y yum-utils device-mapper-persistent-data lvm2
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
yum makecache fast
yum install -y docker-ce-19.03.12
mkdir -p /etc/docker
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload && systemctl enable docker
systemctl start docker && systemctl status docker
docker info
docker -v
#Docker version 19.03.12, build 48a66213fe
3、初始化swarm集群
docker swarm init --advertise-addr 192.168.10.190 #执行 docker swarm init 命令的节点自动成为管理节点
docker swarm join-token manager #获取加入集群的token
第一个token是以woker节点进行加入,
docker swarm join --token SWMTKN-1-3vlcflfbvznbgs7jpwoyhxvxkeuvegj9a7y03z0kanx1g8x2br-7wr0xgld21j37cah9y4l78reg 192.168.10.190:2377
第二个是以manager方式进行加入
docker swarm join --token SWMTKN-1-3vlcflfbvznbgs7jpwoyhxvxkeuvegj9a7y03z0kanx1g8x2br-bz1kyjun7waedda9iusenl2e9 192.168.10.190:2377
常用指令
docker node ls #查看节点数量
docker node promote node-2 # 将工作节点提升为管理节点
docker node demote node-3 # 将管理节点降级为woker节点
service管理
docker service create --name web -p 80:80 nginx
 查看service
docker service ps web
 扩容和缩容service
docker service scale web=3
 删除service
docker service rm web
部署docker swarm集群的更多相关文章
- 通过docker-machine和etcd部署docker swarm集群
		
本片文章介绍一下 使用docker-machine 搭建docker swarm 集群:docker swarm是docker 官方搭建的容器集群编排工具:容器编排,就是可以使你像使用一太机器一样来使 ...
 - 故障公告:docker swarm集群“群龙无首”引发部分站点无法访问
		
今天傍晚 17:38-18:18 左右,由于 docker swarm 集群出现 "The swarm does not have a leader" 问题,造成博问.闪存.园子. ...
 - 故障公告:docker swarm集群“群龙无首”造成部分站点无法访问
		
今天傍晚 17:38-18:18 左右,由于 docker swarm 集群出现 "The swarm does not have a leader" 问题,造成博问.闪存.园子. ...
 - 云计算之路-阿里云上-容器难容:优化自建 docker swarm 集群的部署
		
在上周六遭遇阿里云容器服务 swarm 版的故障之后,我们决定还是走自建 docker swarm 之路,只要不是阿里云底层的问题,我们相信会找到办法解决或避开自建 docker swarm 不稳定的 ...
 - Docker Swarm集群中部署Traefik负载均衡器
		
一.创建单节点的Docker Swarm集群 docker swarm init 二.在Swarm集群中创建一个网络 docker network create --driver=overlay tr ...
 - Docker Swarm 集群环境搭建及弹性服务部署
		
上一篇文章<Docker Swarm 集群管理利器核心概念扫盲>中我们把 Swarm 重要的概念性知识给大家讲解了一波,理论完事就该实战了,这篇文章带大家从零开始,搭建 Docker Sw ...
 - Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例
		
目录 [TOC] 1.环境准备  本文中的案例会有四台机器,他们的Host和IP地址如下 c1 -> 10.0.0.31 c2 -> 10.0.0.32 c3 -> 10.0.0. ...
 - 云计算之路-阿里云上-容器难容:自建docker swarm集群遭遇无法解决的问题
		
我们从今年6月开始在生产环境进行 docker 容器化部署,将已经迁移至 ASP.NET Core 的站点部署到 docker swarm 集群上.开始我们选用的阿里云容器服务,但是在使用过程中我们遭 ...
 - 云计算之路-阿里云上:docker swarm 集群故障与异常
		
在上次遭遇 docker swarm 集群故障后,我们将 docker 由 17.10.0-ce 升级为最新稳定版 docker 17.12.0-ce . 前天晚上22:00之后集群中的2个节点突然出 ...
 
随机推荐
- Linux—账号管理及命令使用详解
			
关注微信公众号:CodingTechWork,一起学习进步. 引言 在Linux系统中,我们常常会看到目录或文件的所属关系: [root@linux01 ~]# ll -d test.sh -rw ...
 - js+canvas画随机4位验证码
			
啥都不说了,复制代码吧!!! <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
 - Zabbix如何解决“System time is out of sync (diff with Zabbix server > 60s)”告警
			
Zabbix如何解决"System time is out of sync (diff with Zabbix server > 60s)"这种告警呢? 这个错误对应的中文提 ...
 - Java接口讲解
			
Java中的接口其实就是一套“标准”或者“规范”,比如使用接口实现[电脑对鼠标.键盘使用USB接口的管理],鼠标和键盘他们与接口之间并不存在子类和父类的关系,但是鼠标和键盘又都要通过USB接口插入电脑 ...
 - 老男孩教育python全栈第22期Day15笔记
			
day15 今日内容大纲 昨日内容回顾作业讲解 装饰器:完美的呈现了开放封闭原则.装饰器的本质:闭包. def wraper(f): def inner(*args, **kwargs): " ...
 - [LeetCode]Mysql系列5
			
题目1 1112. 每位学生的最高成绩 编写一个 SQL 查询,查询每位学生获得的最高成绩和它所对应的科目,若科目成绩并列,取 course_id 最小的一门.查询结果需按 student_id 增序 ...
 - 【深入理解Linux内核架构】3.2 (N)UMA模型中的内存组织
			
内核对一致和非一致内存访问系统使用相同的数据结构.在UMA系统上,只使用一个NUMA结点来管理整个系统内存.而内存管理的其他部分则相信他们是在处理一个伪NUMA系统. 3.2.1 概述 内存划分为结点 ...
 - Prometheus Metrics 设计的最佳实践和应用实例,看这篇够了!
			
Prometheus 是一个开源的监控解决方案,部署简单易使用,难点在于如何设计符合特定需求的 Metrics 去全面高效地反映系统实时状态,以助力故障问题的发现与定位.本文即基于最佳实践的 Metr ...
 - openstack (共享组件) 时间同步服务
			
云计算openstack共享组件——时间同步服务ntp(2) 一.标准时间讲解 地球分为东西十二个区域,共计 24 个时区 格林威治作为全球标准时间即 (GMT 时间 ),东时区以格林威治时区进行 ...
 - Raspberry Pi 4B 安装 CentOS 8
			
最近新入手一块Raspberry Pi 4B 8G的板子,想在这块板子上搭建CentOS 8的环境.经过数次采坑终于安装成功. 准备条件: 1.Raspberry Pi 4B 板子 + SD卡 2. ...