回覆列表
  • 1 # 使用者3282722941272
    來自 Full System Backup with rsync然後就是恢復的時候你會發現mysql起不來了,跑來大罵我坑爹。--所以我真正的回答是這樣的:首先搞清楚到底哪些服務是在跑的,搞清這些服務的執行檔案, 資料檔案,配置檔案,依賴,佔用。這樣才能進行備份:針對執行檔案, [檢查依賴+安裝]指令碼,這個時候會發現有包管理是多麼美妙。針對資料檔案, 這是最主要的部分, 要保證備份的完整一致可用,你得根據服務寫出針對的指令碼,比如mysql就得用到mysqldump或者xtrabackup。針對配置檔案, 這是最有意思的部分, 把每個服務的配置檔案都變成模板, 然後抽取變數,放到一個總的配置檔案裡面。然後有個指令碼讀取這個配置檔案之母,呼叫一些方法/指令碼生成一套所有服務的配置檔案,還帶複製到指定路徑。 所有的指令碼和模板和配置都要有版本控制。然後完了麼? 沒完, 得寫一個恢復指令碼, 裝個虛擬機器,線上弄個數據檔案的備份, 加上模板,改改總配置, 指定幾個引數看能不能完整恢復出一個能用的環境。這樣才基本上算備份了“整個系統”, 還沒提監控備份的成功失敗,備份的安全問題。--為了未來不折騰, 建議為每個服務抽象出一套運維操作指令碼/方法, 涵蓋安裝更新回滾解除安裝清理備份啟動停止過載warmup生成配置增刪改自定義等等, 好吧是不是看起來像面向物件了? 誰說運維不是死程哼哼--以下是我的腦補看到這裡估計很多人要哭了:“大哥我只是想備份幾個配置,至於整這麼一大串麼?!”:運維本來就是這麼個系(keng)統(die)的工作, 網上隨便找個文件編譯安裝手改配置起服務這種赤腳醫生的行為也就是一時爽.....

  • 中秋節和大豐收的關聯?
  • 買了新車,開車回家,有什麼辦法可以讓全村的人都知道我買了車?