文档章节

etcd集群部署

张富贵
 张富贵
发布于 2015/11/12 15:01
字数 528
阅读 1090
收藏 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
普陀
系统管理员
etcd operator 介绍

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

weixin_38975685
04/23
0
0
Kubernetes集群高可用的策略和实践

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

openthings
08/21
0
0
kubernetes从零到有,集群部署使用

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

qq_35904833
2017/07/29
0
0
Kubernetes学习2--集群部署与搭建

接着上一篇的介绍完核心概念后,尝试下搭建k8s的集群,准备了六台虚拟机用于部署k8s的运行环境。 一. 环境准备及虚拟机信息 1. 虚拟机环境 2. 六台虚机信息(自行配置 /etc/hosts 文件) 3....

weixin_29115985
01/02
0
0
consul 1.0 server cluster集群配置全解密

一、背景故事:上周四听了美的MySQL数据库利用consul实现高可用,还有redis 集群模式,让我对consul产生了浓厚的兴趣,特花了三四天的时间研究consul集群,consul的特点是什么呢? 1、 使用 ...

weiyanwei412
2017/10/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
34分钟前
2
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
38分钟前
1
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
39分钟前
1
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
46分钟前
1
0
使用xtrabackup完成远程备份

转载收藏,以防丢失 需求 Can I backup remote databases from my local server02-27-2013, 06:17 AMHi, I am using mysqldump so far for taking daily backups of my Production datab......

阿dai
51分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部