文档章节

etcd集群部署

张富贵
 张富贵
发布于 2015/11/12 15:01
字数 528
阅读 1111
收藏 5

etcd clustering guide

##架构设计 etcd架构设计如下图: 由3个节点的etcd node构建,服务端通过haproxy进行访问

###服务器列表 |Name|Address|HostName| |-----|-----|-----| |node1|10.10.0.11|niub-etcd1| |node2|10.10.0.12|niub-etcd2| |node3|10.10.0.13|niub-etcd3| |haproxy|10.10.0.14|haproxy|

##etcd配置 ###node1 编辑etcd启动脚本/usr/local/etcd/start.sh

/usr/local/etcd/etcd -name niub1 -debug \
-initial-advertise-peer-urls http://niub-etcd-1:2380 \
-listen-peer-urls http://niub-etcd-1:2380 \
-listen-client-urls http://niub-etcd-1:2379,http://127.0.0.1:2379 \
-advertise-client-urls http://niub-etcd-1:2379 \
-initial-cluster-token etcd-cluster-1 \
-initial-cluster niub1=http://niub-etcd-1:2380,niub2=http://niub-etcd-2:2380,niub3=http://niub-etcd-3:2380 \
-initial-cluster-state new  >> /niub/etcd_log/etcd.log 2>&1 &

###node2 编辑etcd启动脚本/usr/local/etcd/start.sh

/usr/local/etcd/etcd -name niub2 -debug \
-initial-advertise-peer-urls http://niub-etcd-2:2380 \
-listen-peer-urls http://niub-etcd-2:2380 \
-listen-client-urls http://niub-etcd-2:2379,http://127.0.0.1:2379 \
-advertise-client-urls http://niub-etcd-2:2379 \
-initial-cluster-token etcd-cluster-1 \
-initial-cluster niub1=http://niub-etcd-1:2380,niub2=http://niub-etcd-2:2380,niub3=http://niub-etcd-3:2380 \
-initial-cluster-state new  >> /niub/etcd_log/etcd.log 2>&1 &

###node3 编辑etcd启动脚本/usr/local/etcd/start.sh

/usr/local/etcd/etcd -name niub3 -debug \
-initial-advertise-peer-urls http://niub-etcd-3:2380 \
-listen-peer-urls http://niub-etcd-3:2380 \
-listen-client-urls http://niub-etcd-3:2379,http://127.0.0.1:2379 \
-advertise-client-urls http://niub-etcd-3:2379 \
-initial-cluster-token etcd-cluster-1 \
-initial-cluster niub1=http://niub-etcd-1:2380,niub2=http://niub-etcd-2:2380,niub3=http://niub-etcd-3:2380 \
-initial-cluster-state new  >> /niub/etcd_log/etcd.log 2>&1 &

##防火墙 在这3台node服务器开放2379、2380端口,命令:

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 2379 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 2380 -j ACCEPT

##haproxy配置 haproxy配置过程略 编辑/etc/haproxy/haproxy.cfg文件,增加:

frontend etcd
    bind 10.10.0.14:2379
    mode tcp
    option tcplog
    default_backend etcd
    log 127.0.0.1 local3
    backend etcd
    balance roundrobin
    fullconn 1024
    server etcd1 10.10.0.11:2379 check port 2379 inter 300 fall 3
    server etcd2 10.10.0.12:2379 check port 2379 inter 300 fall 3
    server etcd3 10.10.0.13:2379 check port 2379 inter 300 fall 3

##检查etcd服务运行状态 使用curl访问:

curl http://10.10.0.14:2379/v2/members

返回以下结果为正常(3个节点):

{
  "members": [
    {
      "id": "1f890e0c67371d24",
      "name": "niub1",
      "peerURLs": [
        "http://niub-etcd-1:2380"
      ],
      "clientURLs": [
        "http://niub-etcd-1:2379"
      ]
    },
    {
      "id": "b952ccccefdd8a93",
      "name": "niub3",
      "peerURLs": [
        "http://niub-etcd-3:2380"
      ],
      "clientURLs": [
        "http://niub-etcd-3:2379"
      ]
    },
    {
      "id": "d6dbdb24d5bfc20f",
      "name": "niub2",
      "peerURLs": [
        "http://niub-etcd-2:2380"
      ],
      "clientURLs": [
        "http://niub-etcd-2:2379"
      ]
    }
  ]
}

##etcd备份 使用etcd自带命令etcdctl进行etc备份,脚本如下:

#!/bin/bash
 
date_time=`date +%Y%m%d`
etcdctl backup --data-dir /usr/local/etcd/niub3.etcd/ --backup-dir /niub/etcd_backup/${date_time}
 
find /niub/etcd_backup/ -ctime +7 -exec rm -r {} \;

##其他

###查看版本命令

curl http://10.10.0.14:2379/version

© 著作权归作者所有

共有 人打赏支持
张富贵
粉丝 15
博文 16
码字总数 10690
作品 0
普陀
系统管理员
私信 提问
Kubernetes集群高可用的策略和实践

Kubernetes高可用也许是完成了初步的技术评估,打算将生产环境迁移进Kubernetes集群之前普遍面临的问题。 为了减少因为服务器当机引起的业务中断,生产环境中的业务系统往往已经做好了高可用...

openthings
2018/08/21
0
0
etcd operator 介绍

原文:https://coreos.com/blog/introducing-the-etcd-operator.html etcd operator 介绍:简化 etcd 集群配置和管理(Introducing the etcd Operator: Simplify etcd cluster configuratio......

weixin_38975685
2018/04/23
0
0
kubernetes从零到有,集群部署使用

互相交流 此文档为本人搭建过程中记录,基本按照文档来。都能够搭建出自己的k8s集群,如果按照文档还不能解决问题,那么可以通过262735860@qq.com进行交流。 集群环境部署 master: kube-api...

qq_35904833
2017/07/29
0
0
kubernetes集群部署

鉴于docker如此火爆,Google推出kubernetes管理docker集群,不少人估计会进行尝试。kubernetes得到了很多大公司的支持,kubernetes集群部署工具也集成了gce,coreos,aws等iaas平台,部署起来...

Hi徐敏
2015/10/13
328
0
配置同步服务etcd和zookeeper ,选哪个呢?

  前言   目前很多的分布式集群都可以用zookeeper和etcd保存配置,保证数据的一致性。那选哪个好呢?      对比   1、两个应用实现的目的不同。etcd的目的是一个高可用的 Key/Valu...

linux运维菜
2018/05/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周五乱弹 —— 姑娘馋的口水都留下来了。

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @且无需多言 :分享Fall Out Boy的单曲《Disloyal Order Of Water Buffaloes》 《Disloyal Order Of Water Buffaloes》- Fall Out Boy 手机党...

小小编辑
52分钟前
21
6
vue 对对象的属性进行修改时,不能渲染页面 vue.$set()

我在vue里的方法里给一个对象添加某个属性时,我console.log出来的是已经更改的object ,但是页面始终没有变化 原因如下: **受现代 JavaScript 的限制 (而且 Object.observe 也已经被废弃),...

Js_Mei
今天
2
0
开始看《Java学习笔记》

虽然书买了很久,但一直没看。这其中也写过一些Java程序,但都是基于IDE的帮助和对C#的理解来写的,感觉不踏实。 林信良的书写得蛮好的,能够帮助打好基础,看得出作者是比较用心的。 第1章概...

max佩恩
昨天
12
0
Redux 三大原则

1.单一数据源 在传统的MVC架构中,我们可以根据需要创建无数个Model,而Model之间可以互相监听、触发事件甚至循环或嵌套触发事件,这些在Redux中都是不被允许的。 因为在Redux的思想里,一个...

wenxingjun
昨天
9
0
跟我学Spring Cloud(Finchley版)-12-微服务容错三板斧

至此,我们已实现服务发现、负载均衡,同时,使用Feign也实现了良好的远程调用——我们的代码是可读、可维护的。理论上,我们现在已经能构建一个不错的分布式应用了,但微服务之间是通过网络...

周立_ITMuch
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部