国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用Velero備份、恢復(fù)k8s集群上的資源

這篇具有很好參考價值的文章主要介紹了使用Velero備份、恢復(fù)k8s集群上的資源。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

一、Velero簡介

Velero提供備份和恢復(fù) Kubernetes 集群資源和持久卷的工具。

Velero功能:

  • 對群集進(jìn)行備份,并在丟失時進(jìn)行還原。
  • 將集群資源遷移到其他集群。

Velero 包括:

  • 在群集上運(yùn)行的服務(wù)器
  • 在本地運(yùn)行的命令行客戶端
  • 開源地址:https://github.com/vmware-tanzu/velero
  • 官方文檔:Velero
velero備份流程
  1. velero客戶端調(diào)用kubernetes API Server創(chuàng)建backup任務(wù)
  2. Backup控制器基于watch機(jī)制通過Api Server獲取到備份任務(wù)
  3. Backup控制器開始執(zhí)行備份動作,會通過請求Api Server獲取到需要備份的數(shù)據(jù)
  4. Backup 控制器將獲取到的數(shù)據(jù)備份到指定的對象存儲server端

二、準(zhǔn)備后端存儲

Velero支持很多種存儲插件,可查看:Velero Docs - Providers獲取插件信息,我們這里使用minio作為S3兼容的對象存儲提供程序。也可以在任意地方部署Minio對象存儲,只需要保證K8S集群可以訪問到即可。

這里使用一臺獨(dú)立機(jī)器docker部署minio

1、下載minio的docker鏡像

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

2、準(zhǔn)備數(shù)據(jù)目錄

# mkdri -pv /data/minio

3、docker部署minio

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

兩個變量定義minio的用戶、密碼

MINIO_ROOT_USER

MINIO_ROOT_PASSWORD

一個管理端口9999,一個數(shù)據(jù)端口9000

容器正常啟動后,通過瀏覽器訪問http://IP:9999 輸入上面定義的用戶、密碼即可登錄

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

登錄之后,創(chuàng)建一個Bucket,命名為velerodata

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

參考文章?Docker 搭建 Minio 容器 (完整詳細(xì)版)_docker minio-CSDN博客

minio也可部署到 k8s集群里

三、安裝velero

velero包含velero客戶端和服務(wù)端,服務(wù)端需要部署在可以使用kubectl命令操作k8s集群的機(jī)器上,這里就安裝在k8s的master上

從GitHub上搜索下載即可:Releases · vmware-tanzu/velero · GitHub

下載最新的release linux_amd64版本

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

將velero執(zhí)行程序cp至/usr/local/bin/目錄下即可,部署Server之前Server的版本是獲取不到的

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

部署Server

先創(chuàng)建認(rèn)證文件,把minio的用戶名、密碼寫到這個文件

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

使用velero命令部署velero server

velero install \
  --provider aws \
  --image velero/velero:latest \
  --plugins velero/velero-plugin-for-aws:v1.8.2 \
  --bucket velerodata \
  --secret-file /root/credentials-velero \
  --use-node-agent \
  --use-volume-snapshots=false \
  --namespace velero \
  --backup-location-config region=minio,s3ForcePathStyle="true",s3Url=http://10.49.133.147:9000 \
  --wait

# 執(zhí)行install命令后會創(chuàng)建一系列清單,包括CustomResourceDefinition、Namespace、Deployment等。

這里遇到一個坑

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

有些節(jié)點(diǎn)上的node-agent pod總是起不來,查看日志報沒有velero命令(這個是node-agent pod里容器的默認(rèn)命令),后面通過檢查發(fā)現(xiàn)報錯的節(jié)點(diǎn)上的velero image不是最新的,但tag確實是latest,確實是個坑

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

舊版本鏡像是45.5MB,新版本鏡像是59.7MB,使用crictl重新下載正常的鏡像,然后使用nerdctl工具把新版本鏡像的tag改成docker.io/velero/velero:latest(與daemonset里的一致),之后pods成功啟動

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

卸載velero

kubectl delete namespace/velero clusterrolebinding/velero
kubectl delete crds -l component=velero

四、備份、恢復(fù)k8s上的資源

使用官方案例創(chuàng)建測試應(yīng)用

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

創(chuàng)建備份

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

到minio上查看備份數(shù)據(jù)

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

測試恢復(fù)

先刪除nginx-example名稱空間里的所有資源

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

創(chuàng)建恢復(fù),再檢查nginx-example名稱空間里的資源,可以看到名稱空間里的資源恢復(fù)回來了

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

備份命令參數(shù)

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

恢復(fù)命令參數(shù)

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

批量備份名稱空間腳本,這個腳本定時執(zhí)行即可達(dá)到定時備份所有名稱空間的目的

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

五、資源遷移

這個架構(gòu)里有個巧妙的地方是,如果兩個k8s集群上都有velero,并且velero的后端存儲指向同一個Bucket,這樣這個Bucket可以當(dāng)做共享存儲來用,即從集群A備份出來的數(shù)據(jù),可以輕松恢復(fù)到集群B上,這樣也相當(dāng)于一個遷移動作。

如上個步驟備份的nginx-backup1220可以在另一個集群上恢復(fù),如下是在集群B上恢復(fù)了nginx-backup1220,從svc的cluster-ip可以看到這是另一個集群

從這個過程得知,如果多個集群上的velero的后端存儲指向相同的Bucket,velero的備份可以在多個集群上共享使用。

使用Velero備份、恢復(fù)k8s集群上的資源,Kubernetes,還原,kubernetes,容器,云原生

更多自定義的備份恢復(fù),后面再補(bǔ)充。。。

參考文章?https://www.cnblogs.com/wubolive/p/17345716.html文章來源地址http://www.zghlxwxcb.cn/news/detail-762981.html

到了這里,關(guān)于使用Velero備份、恢復(fù)k8s集群上的資源的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 統(tǒng)計k8s集群的資源使用情況

    kubectl top 命令可以很方便地查看 k8s 集群中部署應(yīng)用的實際資源使用情況。 使用 kubectl top 命令需要先部署 metrics 組件,metrics 的部署請參考下面文章: helm部署metrics-server 查看指定命名空間資源使用情況 查看所有命名空間的資源使用情況

    2024年02月11日
    瀏覽(39)
  • k8s外接etcd集群服務(wù)異常,使用snapshot恢復(fù)etcd集群

    k8s外接etcd集群服務(wù)異常,使用snapshot恢復(fù)etcd集群

    master節(jié)點(diǎn) 主機(jī) IP 版本 master01 192.168.66.50 k8s-1.23.17 master02 192.168.66.55 k8s-1.23.17 master03 192.168.66.56 k8s-1.23.17 etcd集群節(jié)點(diǎn) 主機(jī) IP 版本 etcd01 192.168.66.58 3.5.6 etcd02 192.168.66.59 3.5.6 etcd03 192.168.66.57 3.5.6 生產(chǎn)環(huán)境中我們?yōu)榱吮苊獬霈F(xiàn)誤操作或者是服務(wù)器硬件出見異常導(dǎo)致宕機(jī),我們的虛擬

    2024年01月17日
    瀏覽(21)
  • 批量備份k8s資源的腳本

    使用方式:執(zhí)行時傳入?yún)?shù)namespace,則會將該namespace下所有資源通過yaml方式備份

    2024年02月11日
    瀏覽(25)
  • k8s集群異?;謴?fù)

    k8s集群異?;謴?fù)

    前提、我自己的k8s采用的是單master節(jié)點(diǎn)+兩個從節(jié)點(diǎn)部署,我針對單master情況進(jìn)行恢復(fù)說明 場景一:正常開關(guān)虛擬機(jī),可直接重啟kubelet進(jìn)行恢復(fù) 1、1、一般重啟后三個節(jié)點(diǎn)都需要檢查,輸入命令檢查kubelet: 2、狀態(tài)不正常,輸入命令啟動kubelet: 3、正常情況下,啟動kubelet后,

    2024年01月23日
    瀏覽(34)
  • K8s主機(jī)IP地址變更集群恢復(fù)

    k8s版本 v1.23.6 docker版本 20.10.6 節(jié)點(diǎn)名稱 原IP 新IP k8s-master 192.168.6.100 192.168.6.200 k8s-node01 192.168.6.110 192.168.6.210 k8s-node02 192.168.6.120 192.168.6.220 未調(diào)整IP前集群信息如下: 調(diào)整k8s-master節(jié)點(diǎn)IP后,重啟機(jī)器,顯示如下: 1. 所有機(jī)器修改hosts解析文件 ?2.?把/etc/kubernetes/*.conf中所有的舊

    2024年04月28日
    瀏覽(20)
  • yum部署kubernetes(k8s)集群、k8s常用資源管理

    目錄 一、環(huán)境搭建 1、準(zhǔn)備環(huán)境 1)計算機(jī)說明,建議系統(tǒng)版本7.4或者7.6 2)修改所有主機(jī)的計算機(jī)名設(shè)置host文件 ?2、安裝master節(jié)點(diǎn) 1)安裝etcd配置etcd 2)安裝k8s-master節(jié)點(diǎn) 3)配置apiserver 4)配置controller和scheduler 5)啟動k8s服務(wù) 3、安裝k8s-master上的node 1)安裝node 2)配置kube

    2024年02月13日
    瀏覽(35)
  • flink集群與資源@k8s源碼分析-集群

    flink集群與資源@k8s源碼分析-集群

    本文是flink集群與資源@k8s源碼分析系列的第二篇-集群 下面詳細(xì)分析各用例 k8s集群支持session和application模式,job模式將會被廢棄,本文分析session模式集群 Configuration作為配置容器,幾乎所有的構(gòu)建需要從配置類獲取配置項,這里不顯示關(guān)聯(lián)關(guān)系 1. 用戶命令行執(zhí)行kubernates-ses

    2024年02月07日
    瀏覽(24)
  • K8s集群重啟與恢復(fù)-Master節(jié)點(diǎn)啟停

    1 應(yīng)用場景 場景 :在實際工作中,可能某個 Master 節(jié)點(diǎn)需要維護(hù),遷移,我們需要平滑的停止、啟動該節(jié)點(diǎn),盡量減少啟停中對集群造成的影響 注意 : 為了確保 K8s 集群能夠安全恢復(fù),請在操作前對 K8s 數(shù)據(jù)進(jìn)行備份 為了確保重啟 Master 節(jié)點(diǎn)期間 K8s 集群能夠使用,集群中

    2023年04月08日
    瀏覽(26)
  • k8s配置ingress訪問集群外部資源

    使用ingress訪問外部資源,首先需要創(chuàng)建service指向我們需要訪問的資源 而每個service包含一個endpoint endpoint是k8s集群中的一個資源對象,存儲在etcd中,用來記錄一個service對應(yīng)的所有pod的訪問地址。service配置selector,endpoint controller才會自動創(chuàng)建對應(yīng)的endpoint對象;否則,不會生

    2024年02月09日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包