演示影片:在K8S上備份和恢復MySQL

portworx發表於2020-07-27

演示影片:在K8S上備份和恢復MySQL


這是關於PX-Backup的一個Demo。在左側,有PX-Backup和兩個叢集。我們使用上面那個叢集,執行的是1.17.8版本的K8S。在右側有一個終端,也是訪問的那個叢集,我們可以看到叢集執行的是1.17.8版本的K8S。

 

我們要介紹如何對MySQL進行備份,以及前置和後置規則。這部分是設定名稱空間的,裡面有一個MySQLns1的名稱空間,它裡面執行的是MySQL的資料庫,也可以看到與資料庫關聯的PVC和PV。我們可以透過終端登入到MySQL,存在一個資料庫表,我們可以用來檢測我們的備份操作的過程是否正確。

 

我們有一個叫做“家”的資料庫,裡有一個叫做“寵物”的表,在這個表裡只有一行資料,描述了一隻狗。我們會對這個資料庫進行備份操作,我們的第一步是填寫這個介面的資訊,我們要介紹一下備份的前置和後置規則。我們可以在備份規則的介面管理這些規則,有兩個規則是針對MySQL應用的,如果我們點選進去,透過選擇器選擇MySQL,MySQL在我的右側,有個標籤,前置規則是透過readlock來flush資料庫表,它會確保資料庫表是鎖定狀態,沒有新的IO來改變資料庫表,Flush資料到磁碟,後置規則是flush日誌,並且解鎖資料庫表。使得資料庫可以重新正常使用。

 

我們回到這個名稱空間,用這些規則配置我們的備份。我們會選擇MySQLns1名稱空間,選擇備份,給備份起一個名字,選擇備份的位置,我們這裡選S3,選擇是否要按時間計劃來備份,或者是現在備份,我們選現在。選擇前置和後置規則,完成後,可選的部分是標籤,一旦建立完成,就會顯示進展和狀態,一開始是Pending,一旦備份開始,狀態就是In Progress,你可以檢視細節資訊,你可以看到前置規則正在執行。即透過Read Lock,flush資料庫表,正在進行。接下來就會備份PV和其他資源,在細節資訊裡,我們可以看到,資源備份狀態是In Progress,包括PV,PVCs, 資料,K8S物件等等,現在狀態是“成功”,表示我們的備份成功了,後置規則開始執行了。

 

這樣我們就有了一個可以用來恢復的備份,現在我們加入一些資料,來驗證我們的備份是否正確,現在我們看到資料庫表中有兩條狗的記錄,我們繼續,點選“恢復”,在備份這個選單的旁邊,填寫恢復介面的相關資訊,首先是恢復的名稱,恢復到哪一個叢集,可以恢復到原來的叢集,也可以恢復到一個新的叢集,在這裡,我們就恢復到原來的叢集,但是一個新的名稱空間,我們選擇定製化恢復,會從原來的名稱空間,備份到一個新的“測試”名稱空間。這個“測試”名稱空間我們可以用來做一些測試,我們選擇覆蓋已經存在在那個名稱空間的資源,現在我們的恢復已經完成了,我們登入到新的Pod裡,MySQLns1“測試”名稱空間,我們選擇資料庫和資料庫表,我們可以看到資料庫表只有一條記錄,表示我們的恢復是正確的。前置和後置規則,確保了備份過程中應用的一致性。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69950566/viewspace-2707324/,如需轉載,請註明出處,否則將追究法律責任。

相關文章