zoukankan      html  css  js  c++  java
  • [Kubernetes]CentOS7下Etcd集群搭建

    Etcd简要介绍

    Etcd是Kubernetes集群中的一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息
    Etcd构建自身高可用集群主要有三种形式:
    ①静态发现: 预先已知 Etcd 集群中有哪些节点,在启动时直接指定好Etcd的各个node节点地址
    ②Etcd动态发现:通过已有的Etcd集群作为数据交互点,然后在扩展新的集群时实现通过已有集群进行服务发现的机制
    ③DNS动态发现:通过DNS查询方式获取其他节点地址信息
    这篇文章主要介绍第一种方式.后期如果还有时间和精力研究的话,我再来写另外两种,但是目前先介绍第一种方式

    开始前准备

    三台机器,用于部署k8s的运行环境:

    节点 ip
    Master 192.168.22.237
    Node1 192.168.22.235
    Node2 192.168.22.236

    首先,将以上信息添加到三台主机的hosts文件中,编辑/etc/hosts文件,写入下面信息:

    192.168.22.237  master
    192.168.22.235  node1
    192.168.22.236  node2
    
    安装配置Etcd

    使用yum安装

    yum install etcd -y
    

    使用yum安装的etcd默认配置文件会在/etc/etcd/etcd.conf下,安装完之后,我们需要对etcd的配置文件做一些修改
    下面是配置文件的内容:

    #[Member]
    #ETCD_CORS=""
    #数据存放位置
    ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
    #ETCD_WAL_DIR=""
    #监听其他Etcd实例的地址
    ETCD_LISTEN_PEER_URLS="http://localhost:2380"
    #监听客户端地址
    ETCD_LISTEN_CLIENT_URLS="http://localhost:2379"
    #ETCD_MAX_SNAPSHOTS="5"
    #ETCD_MAX_WALS="5"
    #节点名称
    ETCD_NAME="default"
    #ETCD_SNAPSHOT_COUNT="100000"
    #ETCD_HEARTBEAT_INTERVAL="100"
    #ETCD_ELECTION_TIMEOUT="1000"
    #ETCD_QUOTA_BACKEND_BYTES="0"
    #ETCD_MAX_REQUEST_BYTES="1572864"
    #ETCD_GRPC_KEEPALIVE_MIN_TIME="5s"
    #ETCD_GRPC_KEEPALIVE_INTERVAL="2h0m0s"
    #ETCD_GRPC_KEEPALIVE_TIMEOUT="20s"
    #
    #[Clustering]
    #通知其他Etcd实例地址
    ETCD_INITIAL_ADVERTISE_PEER_URLS="http://localhost:2380"
    #通知客户端地址
    ETCD_ADVERTISE_CLIENT_URLS="http://localhost:2379"
    #ETCD_DISCOVERY=""
    #ETCD_DISCOVERY_FALLBACK="proxy"
    #ETCD_DISCOVERY_PROXY=""
    #ETCD_DISCOVERY_SRV=""
    #初始化集群内节点地址
    #ETCD_INITIAL_CLUSTER="default=http://localhost:2380"
    #初始化集群token
    #ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster"
    #初始化集群状态,new表示新建
    #ETCD_INITIAL_CLUSTER_STATE="new"
    #ETCD_STRICT_RECONFIG_CHECK="true"
    #ETCD_ENABLE_V2="true"
    #
    #[Proxy]
    #ETCD_PROXY="off"
    #ETCD_PROXY_FAILURE_WAIT="5000"
    #ETCD_PROXY_REFRESH_INTERVAL="30000"
    #ETCD_PROXY_DIAL_TIMEOUT="1000"
    #ETCD_PROXY_WRITE_TIMEOUT="5000"
    #ETCD_PROXY_READ_TIMEOUT="0"
    #
    #[Security]
    #ETCD_CERT_FILE=""
    #ETCD_KEY_FILE=""
    #ETCD_CLIENT_CERT_AUTH="false"
    #ETCD_TRUSTED_CA_FILE=""
    #ETCD_AUTO_TLS="false"
    #ETCD_PEER_CERT_FILE=""
    #ETCD_PEER_KEY_FILE=""
    #ETCD_PEER_CLIENT_CERT_AUTH="false"
    #ETCD_PEER_TRUSTED_CA_FILE=""
    #ETCD_PEER_AUTO_TLS="false"
    #
    #[Logging]
    #ETCD_DEBUG="false"
    #ETCD_LOG_PACKAGE_LEVELS=""
    #ETCD_LOG_OUTPUT="default"
    #
    #[Unsafe]
    #ETCD_FORCE_NEW_CLUSTER="false"
    #
    #[Version]
    #ETCD_VERSION="false"
    #ETCD_AUTO_COMPACTION_RETENTION="0"
    #
    #[Profiling]
    #ETCD_ENABLE_PPROF="false"
    #ETCD_METRICS="basic"
    #
    #[Auth]
    #ETCD_AUTH_TOKEN="simple"
    

    看着有些头大对吧?其实在实际操作过程中,我们只需要改动几个地方就OK了.在此以192.168.22.237 master为例进行配置,具体根据自己的实际情况来配置

    ETCD_LISTEN_PEER_URLS="http://192.168.22.237:2380"   ->本机ip是多少就写多少
    ETCD_LISTEN_CLIENT_URLS="http://192.168.22.237:2379,http://127.0.0.1:2379"    ->本机ip是多少就写多少,同时加上http://127.0.0.1:2379
    ETCD_NAME="master"    ->自己设置的,在hosts文件里面有,根据配置即可
    ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.22.237:2380"  ->本机ip是多少就写多少
    ETCD_ADVERTISE_CLIENT_URLS="http://192.168.22.237:2379"   ->本机ip是多少就写多少
    ETCD_INITIAL_CLUSTER="master=http://192.168.22.237:2380,node1=http://192.168.22.235:2380,node2=http://192.168.22.236:2380"    ->自己设置的,在hosts文件里面有,根据配置即可
    

    将三台服务器配置好之后,再分别启动etcd

    启动服务:systemctl start etcd.service
    查看状态:systemctl status etcd.service
    

    如图,可以看到,etcd服务已经起来了
    在这里插入图片描述
    接下来我们可以通过命令查看etcd集群的状态

    etcdctl cluster-health
    

    在这里插入图片描述
    可以看到,etcd集群状态是正常的
    到此,关于CentOS7下Etcd集群搭建,便是结束了,感谢您的阅读~

  • 相关阅读:
    WCF客户端链接服务超时客户端close
    C# byte数组常用扩展浅析(转)
    代码生成相关工具及技术
    已处理证书链,但是在不受信任提供程序信任的根证书中终止。
    清理SQL Server数据库日志的两种方法
    开源框架项目列表
    SQL Server数据库文件恢复技术
    VS2008找不到导出模板
    jquery 学习笔记(二)
    方法的参数的默认值设置
  • 原文地址:https://www.cnblogs.com/zll-0405/p/10786570.html
Copyright © 2011-2022 走看看