搭建k8s集群之前要先建立etcd集群,因此就先搞一下etcd吧。
集群數量此次使用3臺centos 7系列機器,其實就是7.3,7.4,7.5,為啥沒用7.2呢,因為不相容,文章最後面有解釋。
節點名稱
節點ip
master
192.168.0.100
node1
192.168.0.101
node2
192.168.0.102
搭建etcd集群時需要將防火牆關閉,否則節點間無法通訊,使用以下命令關閉防火牆和禁止開機啟動。
systemctl stop firewalld.service //關閉防火牆
systemctl disable firewalld.service //禁止開機啟動
在centos上軟體安裝很簡單,直接使用yum命令,
yum install etcd -y
etcd的配置檔案為:/etc/etcd/etcd.conf,三颱環境的配置如下:
master的配置:
#[member]
etcd_data_dir="/var/lib/etcd/default.etcd"
etcd_listen_peer_urls=""
etcd_listen_client_urls=""
etcd_name="master"
##[clustering]
etcd_initial_advertise_peer_urls=""
etcd_advertise_client_urls=""
etcd_initial_cluster="master=,node1=,node2="
etcd_initial_cluster_token="etcd-cluster"
etcd_initial_cluster_state="new"
node1的配置:
#[member]
etcd_data_dir="/var/lib/etcd/default.etcd"
etcd_listen_peer_urls=""
etcd_listen_client_urls=""
etcd_name="node1"
##[clustering]
etcd_initial_advertise_peer_urls=""
etcd_advertise_client_urls=""
etcd_initial_cluster="master=,node1=,node2="
etcd_initial_cluster_token="etcd-cluster"
etcd_initial_cluster_state="new"
node2的配置:
#[member]
etcd_data_dir="/var/lib/etcd/default.etcd"
etcd_listen_peer_urls=""
etcd_listen_client_urls=""
etcd_name="node2"
##[clustering]
etcd_initial_advertise_peer_urls=""
etcd_advertise_client_urls=""
etcd_initial_cluster="master=,node1=,node2="
etcd_initial_cluster_token="etcd-cluster"
etcd_initial_cluster_state="new"
各個配置的說明如下:
etcd_data_dir:資料儲存目錄
etcd_name:節點名稱
etcd_initial_cluster_token:初始化集群口令,用於標識不同集群
etcd_initial_cluster_state:初始化集群狀態,new表示新建
配置完後,在三颱環境上啟動etcd服務,
systemctl start etcd
然後檢視集群節點資訊,
[root@centos-7-3 ~]# etcdctl member list
9148b70e8c09dda7: name=master peerurls= clienturls= isleader=true
94da6adc7e389c7b: name=node1 peerurls= clienturls= isleader=false
cab12768ca3506a9: name=node2 peerurls= clienturls= isleader=false
接下來我們簡單測試一下功能,在master上設定乙個鍵值,在其餘兩台環境上查詢該鍵值。
假設我們設定這樣乙個鍵值對hello:world,
[root@centos-7-3 ~]# etcdctl set hello world
world
[root@centos-7-4 ~]# etcdctl get hello
world
[root@centos-7-5 ~]# etcdctl get hello
world
可見集群內的節點的資料是一致同步的。
這裡有兩個坑要注意,
1、etcd2和etcd3不相容,不相容啊,也就是centos 7.2不能和7.3,7.4,7.5組建集群,偏偏我一開始就是這樣搞的,坑得不要不要的。
2、更換節點時切記要把原來節點的資料目錄刪了,
rm -rf /var/lib/etcd/default.etcd/*
不然會使用歷史節點資訊,集群也無法建立,一直報cluster id not match啥的。 Centos 7 搭建 Zookeeper 集群
單機搭建 基礎結構 分別建立 三個資料夾 zkserver1 zkserver2 zkserver3 分別為在 這三個 資料夾下面 建立data 資料夾。修改配置檔案 zoo.cfg 如圖 三個zoo.cfg 保證 埠不一致,保證 datadir 不一致,配置 紅色框內的三個server.id 說明...
Centos7搭建redis集群
1.分別在node2,3,4上安裝redis 2.配置集群 以下操作只需要在一台機器上安裝即可,這裡我選用 node2 上安裝 1 在 redis安裝目錄的 src 目錄下有乙個檔案 redis trib.rb 這是乙個ruby版的 redis服務安裝指令碼,為了使用它,請首先安裝 ruby.安裝r...
CentOS 7搭建RabbitMQ集群
二 集群搭建 三 建立遠端訪問使用者 四 通過使用haproxy rabbitmq集群 在centos 7.3下搭建rabbitmq集群,在此將操作記錄下來,親測通過。執行以下命令 rpm ivh erlang 19.0.4 1.el7.centos.x86 64.rpm 驗證erlang是否安裝成...