搭建etcd集群
一 介绍
etcd 高可用一致性键值存储系统,使用Raft一直算法处理日志复制以保证数据一致性。主要在搭建kubernates时关注到etcd来研究部署etcd。使用golang语言编写,和zookeeper一样可用用于服务注册发现,以及配置管理等。github地址:https://github.com/coreos/etcd
二 单点部署
1. 使用 git,wget 下载源码
2. cd etcd-master
3. etcd 启动

4. 测试
使用 etcdctrl 测试

以上通过单点部署etcd 以及测试体验etcd作为键值存储所做的工作。
三 实现etcd集群的部署
1. 部署环境
为了方便部署过程只在通过IP指定无需修改host文件指定hostname。
只在一台机器搭建集群通过端口地址不同来区别。
192.168.100.128:2381
192.168.100.128:2382
192.168.100.128:2383
github 集群搭建地址:https://github.com/coreos/etcd/blob/master/Documentation/op-guide/clustering.md#etcd-discovery
2. 启动
node1:
etcd --name infra0 --initial-advertise-peer-urls http://192.168.100.128:2381 \
--listen-peer-urls http://192.168.100.128:2381 \
--listen-client-urls http://192.168.100.128:2279,http://127.0.0.1:2279 \
--advertise-client-urls http://192.168.100.128:2279 \
--initial-cluster-token etcd-cluster-1 \
--initial-cluster infra0=http://192.168.100.128:2381,infra1=http://192.168.100.128:2382,infra2=http://192.168.100.128:2383 \
--initial-cluster-state newnode2:
etcd --name infra1 --initial-advertise-peer-urls http://192.168.100.128:2382 \
--listen-peer-urls http://192.168.100.128:2382 \
--listen-client-urls http://192.168.100.128:2280,http://127.0.0.1:2280 \
--advertise-client-urls http://192.168.100.128:2280 \
--initial-cluster-token etcd-cluster-1 \
--initial-cluster infra0=http://192.168.100.128:2381,infra1=http://192.168.100.128:2382,infra2=http://192.168.100.128:2383 \
--initial-cluster-state newnode3:
etcd --name infra2 --initial-advertise-peer-urls http://192.168.100.128:2383 \
--listen-peer-urls http://192.168.100.128:2383 \
--listen-client-urls http://192.168.100.128:2281,http://127.0.0.1:2281 \
--advertise-client-urls http://192.168.100.128:2281 \
--initial-cluster-token etcd-cluster-1 \
--initial-cluster infra0=http://192.168.100.128:2381,infra1=http://192.168.100.128:2382,infra2=http://192.168.100.128:2383 \
--initial-cluster-state new3 效果图
四 描述
另外文档还给出了TLS ca证书安装部署方式,以及自动自动证书安装 部署方式,以及使用DNS启动部署。
五 docker 环境 etcd 启动
在github中有Dockerfile文件可以构建镜像然后根据所需搭建etcd集群容器。
六 总结
etcd 和 zookeeper一样解决了数据一致性以及通过自动选举算法实现解决容灾问题,保证数据的高可用性以及强一致性。我们可以用etcd做服务注册发现以及配置管理等。当也可以当作key,vlue存储键值数据。
研究部署etcd主要是为了搭建kubernates服务,因为kubernates系统资源调度使用etcd做服务注册发现。
搭建etcd集群的更多相关文章
- Docker 搭建 etcd 集群
阅读目录: 主机安装 集群搭建 API 操作 API 说明和 etcdctl 命令说明 etcd 是 CoreOS 团队发起的一个开源项目(Go 语言,其实很多这类项目都是 Go 语言实现的,只能说很 ...
- docker搭建etcd集群环境
其实关于集群网上说的方案已经很多了,尤其是官网,只是这里我个人只有一个虚拟机,在开发环境下建议用docker-compose来搭建etcd集群. 1.拉取etcd镜像 docker pull quay ...
- 【转】centos7 搭建etcd集群
转自http://www.cnblogs.com/zhenyuyaodidiao/p/6237019.html 一.简介 “A highly-available key value store for ...
- 二进制搭建kubernetes多master集群【一、使用TLS证书搭建etcd集群】
上一篇我们介绍了kubernetes集群架构以及系统参数配置,参考:二进制搭建kubernetes多master集群[开篇.集群环境和功能介绍] 下面本文etcd集群才用三台centos7.5搭建完成 ...
- Docker 搭建 etcd 集群及管理
环境 host1 10.1.99.13 host2 10.1.99.14 host3 10.1.99.15 host4 10.1.99.12(用于测试添加删除节点) 初始化集群 host1 $ doc ...
- Docker 搭建 etcd 集群配置
#关闭selinux.防火墙 systemctl stop firewalld.service systemctl disable firewalld.service firewall-cmd --s ...
- 多主机搭建etcd集群
下载https://github.com/etcd-io/etcd/releases/download/v3.4.10/etcd-v3.4.10-linux-amd64.tar.gz分别放到两台主机上 ...
- 基于已有集群动态发现方式部署 Etcd 集群
etcd提供了多种部署集群的方式,在「通过静态发现方式部署etcd集群」 一文中我们介绍了如何通过静态发现方式部署集群. 不过很多时候,你只知道你要搭建一个多大(包含多少节点)的集群,但是并不能事先知 ...
- 基于 DNS 动态发现方式部署 Etcd 集群
使用discovery的方式来搭建etcd集群方式有两种:etcd discovery和DNS discovery.在 「基于已有集群动态发现方式部署etcd集群」一文中讲解了etcd discove ...
随机推荐
- IPFS搭建&集群
下载go-ipfs wget https://github.com/ipfs/go-ipfs/releases/download/v0.4.17/go-ipfs_v0.4.17_linux-amd64 ...
- ibatis打印sql
###显示SQL语句部分log4j.logger.com.ibatis=DEBUGlog4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUGl ...
- css 自定义滚动条
我遇到的场景: 对于iframe窗口,自带滚动条是整个窗口的大小.有时需要顶部或底部固定,则滚动条不应该触碰到顶部或底部. 那么首先打开iframe时应该去掉滚动条 scrolling="n ...
- @FindBy、@FindBys、@FindAll的区别
原文地址http://blog.csdn.net/tea_wu/article/details/21080789 selenium-webdriver中获取页面元素的方式有很多,使用注解获取页面元素是 ...
- jq--ajax中止请求
比如我后端设置延迟3s再响应给前端,我用的是node之koa2 router.get('/vueDemo/getStudents', async ( ctx ) => { //延迟3s asyn ...
- XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem F. Matrix Game
题目: Problem F. Matrix GameInput file: standard inputOutput file: standard inputTime limit: 1 secondM ...
- 2017 Multi-University Training Contest - Team 1 03Colorful Tree
地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=6035 题面: Colorful Tree Time Limit: 6000/3000 MS ( ...
- [转]Unix/Linux开源世界资源链接汇总
转自:http://blog.csdn.net/21aspnet/article/details/6754126 最后更新:2012.12.04 说明:好东西在后面,Linux镜像基本涵盖全球主要下载 ...
- Java-线程池专题(什么是线程池,如何使用,为什么要用)
1.什么是线程池: java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池 多线程技术主要解决处理 ...
- Win10应用《纸书科学计算器》更新啦!
<纸书科学计算器>在2016年8月拿了计算机设计大赛国家一等奖,现在仍记得我在答辩时还给评委们普及了一波UWP平台的知识.受此鼓励,这款应用也不会停下更新的脚步^_^.最近从1.9小幅升级 ...


