日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
備份和恢復Kubernetes集群中的Etcd數(shù)據(jù)

備份和恢復Kubernetes集群中的Etcd數(shù)據(jù)

作者:徐福工程師 2022-08-05 08:48:33

云計算

云原生 整個集群組件中只有Apiserver會直接和Etcd通信,其他組件都是直接和Apiserver通信。在生產(chǎn)環(huán)境中,最好以集群的方式運行Etcd,官方建議運行五個節(jié)點組成集群,這樣可以在丟失兩個節(jié)點的情況下, 保證數(shù)據(jù)的可用性。

我們提供的服務有:網(wǎng)站設計、成都網(wǎng)站建設、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、平?jīng)鰏sl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術(shù)的平?jīng)鼍W(wǎng)站制作公司

Kubernetes作為目前最炙手可熱的容器編排軟件,受到越來越多互聯(lián)網(wǎng)公司的喜愛,之所以會出現(xiàn)這樣的現(xiàn)象,主要還是因為這套編排軟件不僅功能強大,還非常方便進行二次開發(fā),整個Kubernetes的生態(tài)圈非?;钴S。有了Kubernetes這套“骨架”,可以在上面運行非常多的中間件和應用程序。Apiserver,Controller Manager,Scheduler,Proxy可以認為是這套“骨架”的組成部分,而Etcd便是這套系統(tǒng)的底座,整個系統(tǒng)的數(shù)據(jù)都存儲在它當中,保證了Etcd的穩(wěn)定性整個容器編排系統(tǒng)的穩(wěn)定性就有了保證。

在正式開始之前,說明下實驗環(huán)境,五臺主機組成Kubernetes集群。

  • 控制平面主機:p1.xufu.xyz、p2.xufu.xyz、p3.xufu.xyz
  • 工作主機:p4.xufu.xyz、p5.xufu.xyz
  • 主機系統(tǒng):CentOS Linux release 7.9.2009 (Core)
  • Etcd版本:3.5.1

Etcd

  • 簡介

它是一種鍵值數(shù)據(jù)庫,Kubernetes將自身的狀態(tài)數(shù)據(jù)都存儲在Etcd中,這些數(shù)據(jù)包含deployment,pod,daemonset等各種對象。整個集群組件中只有Apiserver會直接和Etcd通信,其他組件都是直接和Apiserver通信。在生產(chǎn)環(huán)境中,最好以集群的方式運行Etcd,官方建議運行五個節(jié)點組成集群,這樣可以在丟失兩個節(jié)點的情況下, 保證數(shù)據(jù)的可用性。

  • 訪問

Etcd中存放有不少敏感數(shù)據(jù),所以對它的訪問需要使用公鑰和私鑰。為了方便訪問,在家目錄文件“.bashrc”配置如下命令別名。

alias ectl='etcdctl --endpoints p1.xufu.xyz:2379 \    --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key \    --cacert=/etc/kubernetes/pki/etcd/ca.crt'

顯示當前Etcd存儲的所有Key。

ectl get / --prefix --keys-only
  • 備份

使用kubeadm部署的集群,Etcd默認將數(shù)據(jù)存放在宿主機的目錄/var/lib/etcd下。

Etcd數(shù)據(jù)目錄

Etcd的版本2和3差別很大,因筆者使用的是3版本,備份命令是這樣(在任一控制平面主機操作均可),命令執(zhí)行不用對Etcd做關(guān)閉操作。

ectl snapshot save snapshot-$(date +%F)

查看備份的快照。

快照信息

  • 恢復

恢復操作相比較備份操作有稍許麻煩。下面步驟需要在三臺控制平面主機上都操作。

1,關(guān)閉kubelet,否則它會自動重啟apiserver。

systemctl stop kubelet.service

2,關(guān)閉apiserver容器,使用docker命令找到容器,直接stop。

docker stop apiservername

3,重命名目錄/var/lib/etcd,創(chuàng)建新的,并修改目錄權(quán)限。

mv /var/lib/etcd /var/lib/etcd_oldmkdir /var/lib/etcdchmod 700 /var/lib/etcd

4,使用備份的快照,恢復數(shù)據(jù)。

ectl snapshot restore /data/etcd_backup/etcd-snapshot-2022-08-03.db \  --name p1.xufu.xyz \  --initial-cluster "etcd-0=https://p1.xufu.xyz:2380,etcd-1=https://p2.xufu.xyz:2380,etcd-2=https://p3.xufu.xyz:2380"  \  --initial-advertise-peer-urls https://p1.xufu.xyz:2380 \  --data-dir=/var/lib/etcd

p2和p3節(jié)點類似。

5,啟動三臺etcd,確認下集群是否健康。

[root@p1 etcd]# ectl --endpoints=https://p1.xufu.xyz:2379,https://p2.xufu.xyz:2379,https://p3.xufu.xyz:2379 endpoint healthhttps://p2.xufu.xyz:2379 is healthy: successfully committed proposal: took = 100.193247msp1.xufu.xyz:2379 is healthy: successfully committed proposal: took = 111.234607mshttps://p1.xufu.xyz:2379 is healthy: successfully committed proposal: took = 113.788721mshttps://p3.xufu.xyz:2379 is healthy: successfully committed proposal: took = 118.403445ms

確認沒問題后,啟動apiserver容器。

至此,整個恢復備份過程操作完畢。


分享標題:備份和恢復Kubernetes集群中的Etcd數(shù)據(jù)
文章轉(zhuǎn)載:http://m.5511xx.com/article/dhggphh.html