#关闭selinux、防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
sed -i '/^SELINUX=.*/c SELINUX=disabled' /etc/selinux/config
sed -i 's/^SELINUXTYPE=.*/SELINUXTYPE=disabled/g' /etc/selinux/config
grep --color=auto '^SELINUX' /etc/selinux/config
setenforce 0

# 节点node1

docker run -d --name etcd --restart=always \
-p 2379:2379 \
-p 2380:2380 \
kubernetes/etcd:v3.2.4 \
/usr/local/bin/etcd \
--name node1 \
--initial-advertise-peer-urls http://172.19.15.92:2380 --listen-peer-urls http://0.0.0.0:2380 \
--advertise-client-urls http://172.19.15.92:2379 --listen-client-urls http://0.0.0.0:2379 \
--initial-cluster-state new \
--initial-cluster-token docker-etcd \
--initial-cluster node1=http://172.19.15.92:2380,node2=http://172.19.15.93:2380,node3=http://172.19.15.94:2380

# 节点node2

docker run -d --name etcd --restart=always \
-p 2379:2379 \
-p 2380:2380 \
kubernetes/etcd:v3.2.4 \
/usr/local/bin/etcd \
--name node2 \
--initial-advertise-peer-urls http://172.19.15.93:2380 --listen-peer-urls http://0.0.0.0:2380 \
--advertise-client-urls http://172.19.15.93:2379 --listen-client-urls http://0.0.0.0:2379 \
--initial-cluster-state new \
--initial-cluster-token docker-etcd \
--initial-cluster node1=http://172.19.15.92:2380,node2=http://172.19.15.93:2380,node3=http://172.19.15.94:2380

# 节点node3

docker run -d --name etcd --restart=always \
-p 2379:2379 \
-p 2380:2380 \
kubernetes/etcd:v3.2.4 \
/usr/local/bin/etcd \
--name node3 \
--initial-advertise-peer-urls http://172.19.15.94:2380 --listen-peer-urls http://0.0.0.0:2380 \
--advertise-client-urls http://172.19.15.94:2379 --listen-client-urls http://0.0.0.0:2379 \
--initial-cluster-state new \
--initial-cluster-token docker-etcd \
--initial-cluster node1=http://172.19.15.92:2380,node2=http://172.19.15.93:2380,node3=http://172.19.15.94:2380

# 配置网络

 [root@k8s ~]# docker exec etcd etcdctl set /k8s/network/config '{"Network":"192.100.0.1/16"}'
{"Network":"192.100.0.1/16"}

# 查看 etcd 成员

 [root@k8s ~]# docker exec etcd etcdctl member list
14a0991cbae18c78: name=node3 peerURLs=http://172.19.15.94:2380 clientURLs=http://172.19.15.94:2379 isLeader=false
33a95350dcc12573: name=node1 peerURLs=http://172.19.15.92:2380 clientURLs=http://172.19.15.92:2379 isLeader=true
6cb8872859c66c95: name=node2 peerURLs=http://172.19.15.93:2380 clientURLs=http://172.19.15.93:2379 isLeader=false

# 查看 etcd 健康状态

 [root@k8s ~]# docker exec etcd etcdctl cluster-health
member 14a0991cbae18c78 is healthy: got healthy result from http://172.19.15.94:2379
member 33a95350dcc12573 is healthy: got healthy result from http://172.19.15.92:2379
member 6cb8872859c66c95 is healthy: got healthy result from http://172.19.15.93:2379
cluster is healthy

# docker 命令行启动

 /usr/bin/dockerd --registry-mirror=http://f2d6cb40.m.daocloud.io --bip=192.100.68.1/24

Docker 搭建 etcd 集群配置的更多相关文章

  1. Docker 搭建 etcd 集群

    阅读目录: 主机安装 集群搭建 API 操作 API 说明和 etcdctl 命令说明 etcd 是 CoreOS 团队发起的一个开源项目(Go 语言,其实很多这类项目都是 Go 语言实现的,只能说很 ...

  2. docker搭建etcd集群环境

    其实关于集群网上说的方案已经很多了,尤其是官网,只是这里我个人只有一个虚拟机,在开发环境下建议用docker-compose来搭建etcd集群. 1.拉取etcd镜像 docker pull quay ...

  3. Docker 搭建 etcd 集群及管理

    环境 host1 10.1.99.13 host2 10.1.99.14 host3 10.1.99.15 host4 10.1.99.12(用于测试添加删除节点) 初始化集群 host1 $ doc ...

  4. 庐山真面目之十二微服务架构基于Docker搭建Consul集群、Ocelot网关集群和IdentityServer版本实现

    庐山真面目之十二微服务架构基于Docker搭建Consul集群.Ocelot网关集群和IdentityServer版本实现 一.简介      在第七篇文章<庐山真面目之七微服务架构Consul ...

  5. Docker搭建RabbitMQ集群

    Docker搭建RabbitMQ集群 Docker安装 见官网 RabbitMQ镜像下载及配置 见此博文 集群搭建 首先,我们需要启动运行RabbitMQ docker run -d --hostna ...

  6. 搭建etcd集群

    一 介绍 etcd 高可用一致性键值存储系统,使用Raft一直算法处理日志复制以保证数据一致性.主要在搭建kubernates时关注到etcd来研究部署etcd.使用golang语言编写,和zooke ...

  7. 基于Docker部署ETCD集群

    基于Docker部署ETCD集群 关于ETCD要不要使用TLS? 首先TLS的目的是为了鉴权为了防止别人任意的连接上你的etcd集群.其实意思就是说如果你要放到公网上的ETCD集群,并开放端口,我建议 ...

  8. 使用Docker搭建Spark集群(用于实现网站流量实时分析模块)

    上一篇使用Docker搭建了Hadoop的完全分布式:使用Docker搭建Hadoop集群(伪分布式与完全分布式),本次记录搭建spark集群,使用两者同时来实现之前一直未完成的项目:网站日志流量分析 ...

  9. 使用Docker搭建Hadoop集群(伪分布式与完全分布式)

    之前用虚拟机搭建Hadoop集群(包括伪分布式和完全分布式:Hadoop之伪分布式安装),但是这样太消耗资源了,自学了Docker也来操练一把,用Docker来构建Hadoop集群,这里搭建的Hado ...

随机推荐

  1. ES6系列_3之变量的解构赋值

    ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构. 解构有三种类型: 1.数组的解构赋值 (1)简单的数组解构 以前,我们给变量赋值是直接单个指定值,比如: let a=0; ...

  2. [Z] Windbg以及vs debug使用

    Windbg 一篇中国人写的质量非常高的Windbg文章:篇中国人写的质量非常高的Windbg文章: http://www.yiiyee.cn/Blog/windbg/ code project上的W ...

  3. 归纳整理Linux下C语言常用的库函数----内存及字符串控制及操作

    在没有IDE的时候,记住一些常用的库函数的函数名.参数.基本用法及注意事项是很有必要的. 参照Linux_C_HS.chm的目录,我大致将常用的函数分为一下几类: 1. 内存及字符串控制及操作 2. ...

  4. mac 下 python链接mysql

    安装过程 :http://blog.topspeedsnail.com/archives/6018 注意 报错的话要先装一个东西 http://cdn.mysql.com/Downloads/Conn ...

  5. 使用.sig签名验证文件

    Linux下载文件的时候,由于网络等原因,下载的文件可能不完整,对于别有心机的人可以更改文件,这就需要我们对文件的完整性进行验证.这里以securityonion-14.04.5.2.iso为例进行验 ...

  6. linux shell脚本编程笔记(三): 三种引号的区别

    双引号.单引号.反引号的区别 测试用例: OPDATE=`date -d '-1 day' +%Y%m%d` ) do FILEDATE=`date -d "-$i day" +% ...

  7. jsp中常用的标签

    jsp本质上就是一个servlet,只是tomcat会将其翻译成servlet,servlet本质上是一个类,那么jsp也是一个类.jsp中各种标签都会被tomcat翻译成各种基本的java代码 如果 ...

  8. 关于ueditor使用说明

    1.后台配置文件config.json中的各种prefix,相对的都是网站(发布后的)的根目录, 2.需要在iis下将net文件夹转换为应用程序 3.<div>    <h1> ...

  9. oracle 求班级平均分

    select * from ( selectclass 班级,subject,avg(grade) avg_gradefrom student_score group by class,subject ...

  10. Oracle ADF VO排序及VO的查询模式

    常规应用中,当需要使用Table向终端用户展示数据时,Table中数据的显示排序一致性极大程度的影响到了客户体验.通常希望诸如多次查询结果显示顺序相同.插入数据在原数据上方等的实现. ADF为开发人员 ...