自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

對GitLab進(jìn)行災(zāi)備的優(yōu)秀實踐

譯文 精選
開發(fā) 架構(gòu)
面對可能出現(xiàn)的中斷、甚至是災(zāi)難情況,本文和您討論了制定GitLab備份與恢復(fù)策略的基本要點(diǎn)。

譯者 | 陳峻

審校 | 孫淑娟

創(chuàng)新式的開發(fā)對于碼農(nóng)來說往往是一項艱巨的“修行”任務(wù)。每個GitLab用戶都或多或少地認(rèn)識到,源代碼對于保障DevOps團(tuán)隊能夠不間斷地開展工作流程的重要性。

有人也許會問:GitLab可謂最可靠的源代碼管理(SCM)工具提供平臺之一。它會發(fā)生什么狀況呢?作為一個開源的開放性平臺,GitLab不可避免地會受到諸如:服務(wù)中斷、勒索軟件、以及系統(tǒng)宕機(jī)等各種潛在威脅。這些有的源自GitLab服務(wù)器受到攻擊,有的來自GitLab數(shù)據(jù)庫的自身故障。為此,您和您的團(tuán)隊?wèi)?yīng)始終為各種突發(fā)情況提前做好準(zhǔn)備,即:為自己的GitLab數(shù)據(jù)建立一個強(qiáng)大的備份機(jī)制。同時,您也應(yīng)當(dāng)保證能夠?qū)⒛J(rèn)的備份策略,集成到自己的DevSecOps流程、以及CI/CD管道中。

一、GitLab備份應(yīng)該包含什么?

一旦決定了待備份的GitLab環(huán)境,我們就應(yīng)該確保GitLab的備份內(nèi)容包含了各種GitLab存儲庫和元數(shù)據(jù)。我們可以將此處的“元數(shù)據(jù)”,理解為針對各類Wiki、問題、問題注釋、部署密鑰、合并請求、LFS(Linux from Scratch,一種從網(wǎng)上直接下載源碼,從頭編譯Linux的安裝方式)、標(biāo)簽、Webhook、里程碑、發(fā)布、操作等組件和環(huán)節(jié)的備份。只有備份好了這些,開發(fā)團(tuán)隊和整個公司在項目中用到的所有Git存儲庫數(shù)據(jù),才能得到充分的保護(hù)。

二、備份策略的關(guān)鍵特性

如果您已梳理清楚了手頭的工作流程,那么便可以開始制定備份策略了。為了確保工作流程的不間斷,我們應(yīng)該按需進(jìn)行多重備份,從而不僅可以及時恢復(fù)GitLab數(shù)據(jù),而且能夠滿足審計、合規(guī)、以及安全性等需求。下面便是一些值得注意的安全性要素:

  • AES加密以及自用的各種動態(tài)與靜態(tài)加密密鑰;
  • 區(qū)分靈活的、長期的以及無限期的保存需求;
  • 對舊的、未使用的存儲庫進(jìn)行歸檔的可行性;
  • 通過報告和郵件通知等監(jiān)控方式,來檢查GitLab備份的執(zhí)行情況;
  • 對勒索軟件予以防護(hù);
  • 檢查災(zāi)難恢復(fù)技術(shù)是否滿足恢復(fù)目標(biāo)。

上面只是與完善備份策略相關(guān)的基本安全方面。如果您想制定GitLab環(huán)境的完整備份計劃,則需要考慮并構(gòu)建包含各種高級備份功能的替代性備份策略。

1.3-2-1備份規(guī)則

如果DevOps團(tuán)隊已經(jīng)為某些源代碼日夜奮戰(zhàn)了許久,那么一旦出現(xiàn)GitLab的中斷或備份失敗,則會導(dǎo)致他們的成果覆水難收,同時也會讓企業(yè)蒙受財務(wù)上的損失。對此,我向您介紹一個3-2-1的“黃金”備用規(guī)則。即:一家公司應(yīng)當(dāng)將3個備份副本保存在2個不同的存儲實例中,并且至少有1個處于離線。因此,您需要注意備份復(fù)制的相關(guān)問題,以便它能夠協(xié)助您將本機(jī)備份的副本保存到多個位置,進(jìn)而實現(xiàn)服務(wù)的冗余和業(yè)務(wù)的連續(xù)性。

當(dāng)然,如果您的DevOps備份軟件具有多存儲兼容性的話,則可以大幅節(jié)省花費(fèi)在軟件上的開銷。目前,AWS S3、Backblaze B2、谷歌云存儲(Google Cloud Storage)、Azure Blob Storage、GitProtect Cloud以及其他任何與S3、本地或混合兼容的公有云,都可以提供此類兼容性。如果您不清楚的話,請詢問您的備份服務(wù)提供商,以確認(rèn)是否可以充分利用已有的基礎(chǔ)設(shè)施,將代碼數(shù)據(jù)、連同自己的存儲空間,一并備份到不同的目的地處。

2.需無限保留的數(shù)據(jù)

保留期限也是我們在制定備份過程中,需要重點(diǎn)考慮的方面。對于一些非常重要的GitLab數(shù)據(jù),您可以將其保留期限設(shè)置為5年、10年、甚至是無限期保留。如果您的代碼中包含了個人隱私數(shù)據(jù),那么其保存期限就需要滿足本地的法律、法規(guī)、以及共同責(zé)任的要求。

3.對勒索軟件的防護(hù)

備份GitLab數(shù)據(jù)可謂是抵御勒索軟件攻擊的最后一道防線。因此,如果您的GitLab備份方案是針對防范勒索軟件的話,它會在備份的過程中,對GitLab數(shù)據(jù)執(zhí)行壓縮和加密,進(jìn)而保證數(shù)據(jù)在其存儲狀態(tài)是不可執(zhí)行的。據(jù)此,即使您的備份數(shù)據(jù)被某些勒索軟件所截獲,也不會被輕易執(zhí)行或無限量地傳播。此外,在最壞的情況下,就算某些勒索軟件可以加密、修改或刪除已截獲到的數(shù)據(jù),您手頭仍有一個備份,可方便您根據(jù)確切的時間點(diǎn),恢復(fù)所需的GitLab副本,進(jìn)而保證您的團(tuán)隊將在毫無拖延地情況下,繼續(xù)開展項目。

4.給審計與合規(guī)提供監(jiān)測報告

常言道:擁有信息的人正統(tǒng)治著世界。及時掌握任何有關(guān)GitLab備份本身、備份失敗、以及備份狀態(tài)的信息,可以協(xié)助DevOps團(tuán)隊厘清他們所碰到的問題,并能夠?qū)浞輸?shù)據(jù)的可用性進(jìn)行實時把控。軟件項目團(tuán)隊往往需要通過Slack通知、數(shù)據(jù)驅(qū)動的儀表板、電子郵件通知、以及高級審計日志,來跟蹤備份系統(tǒng)的每一項執(zhí)行操作。此類信息不但能夠讓您的團(tuán)隊受益,而且可以為審計和安全認(rèn)證等方面,提供詳細(xì)的備份完成情況的報告。

三、恢復(fù)過程應(yīng)包含哪些?

根據(jù)備份策略,對GitLab執(zhí)行有效的備份,只是整個災(zāi)備計劃的一部分。我們還需要規(guī)劃好能夠盡快恢復(fù)GitLab備份數(shù)據(jù)的策略。也就是說,災(zāi)難恢復(fù)計劃應(yīng)確保您的業(yè)務(wù)在服務(wù)中斷/宕機(jī)、(非)故意的人為錯誤、以及因勒索軟件攻擊而造成數(shù)據(jù)丟失等可能的情況下,仍能保持業(yè)務(wù)的連續(xù)性。

下面是我們在制定恢復(fù)策略時,需要仔細(xì)考慮的方面:

  • 需要還原的數(shù)據(jù)所處時間點(diǎn);
  • 存儲庫和選定元數(shù)據(jù)的恢復(fù)程度與數(shù)據(jù)量;
  • 用于從存儲庫備份數(shù)據(jù)進(jìn)行恢復(fù)的GitLab帳戶;
  • 是否以交叉恢復(fù)的方式,從GitLab恢復(fù)到另一個Git托管平臺(如:GitHub或Bitbucket),這在工具之間進(jìn)行遷移時,非常實用;
  • 恢復(fù)到本地設(shè)備的可能性。

在實踐中,如果您可以將備份和恢復(fù)兩項操作歸并到一個應(yīng)用之中的話,則可以大幅節(jié)省團(tuán)隊的時間。

有了恢復(fù)策略,我們在討論面對GitLab、基礎(chǔ)設(shè)施、以及備份方案出現(xiàn)故障等場景時,咱們的團(tuán)隊能夠如何準(zhǔn)備:

1.GitLab出現(xiàn)中斷

雖然GitLab是一個可靠的托管服務(wù)提供平臺,但是發(fā)生中斷的可能性還是存在的。對此,您既可以將GitLab實例以.git文件的方式,恢復(fù)到自己的計算機(jī)上;也可以基于交叉恢復(fù)的方式,直接將GitLab的副本,恢復(fù)到另一個Git托管平臺。

2.您的基礎(chǔ)架構(gòu)出現(xiàn)中斷

基于前文提到的3-2-1備份規(guī)則,哪怕您的基礎(chǔ)架構(gòu)出現(xiàn)中斷,您總會在2處目的地?fù)碛兄?個備份副本,而且其中1個處于離線狀態(tài)。因此,您可以從任何一個時間點(diǎn)獲得備份副本,并輕松地恢復(fù)GitLab存儲庫及其元數(shù)據(jù)。

3.備份方案本身出現(xiàn)故障

在決定使用第三方的備份方案之前,您有必要確認(rèn)其已為潛在的中斷做好了準(zhǔn)備,并且可以在真正發(fā)生時,為您提供適當(dāng)、可靠的數(shù)據(jù)恢復(fù)支持。例如:如果它們能夠與您共享在本地應(yīng)用中安裝的權(quán)限,那么一旦其SaaS環(huán)境出現(xiàn)故障,您便可以輕松地從本地應(yīng)用中,直接訪問到自己的數(shù)據(jù)。

四、小結(jié)

綜上所述,為了應(yīng)對GitLab可能出現(xiàn)的中斷,您既可以自行管理備份過程,也可以編寫專門的GitLab備份腳本并制作快照的命令,還可以選擇第三方備份軟件的自動備份服務(wù)。同時,您需要實現(xiàn)設(shè)定好在災(zāi)難發(fā)生時,執(zhí)行哪些恢復(fù)流程,讓整個GitLab環(huán)境盡快可供訪問,以確保團(tuán)隊工作的連續(xù)性。

原文鏈接:https://dzone.com/articles/devops-security-which-gitlab-backup-best-practices

譯者介紹

陳峻 (Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項目實施經(jīng)驗,善于對內(nèi)外部資源與風(fēng)險實施管控,專注傳播網(wǎng)絡(luò)與信息安全知識與經(jīng)驗。

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2017-11-22 08:28:22

災(zāi)備備份數(shù)據(jù)

2020-07-01 07:19:03

物聯(lián)網(wǎng)安全隱私

2013-07-31 09:55:51

高性能備份災(zāi)備

2013-07-31 10:17:44

備份災(zāi)備

2018-01-22 10:05:14

災(zāi)備

2012-07-12 15:07:45

災(zāi)備系統(tǒng)華為

2023-02-07 08:11:15

2015-10-08 11:43:10

華為云災(zāi)備雙活數(shù)據(jù)

2016-07-04 17:56:33

云災(zāi)備

2016-06-30 11:22:20

災(zāi)備

2017-10-26 09:22:26

2009-07-24 20:00:32

虛擬化數(shù)據(jù)中心SOA

2013-02-01 16:34:26

容錯服務(wù)器

2009-07-21 13:39:47

虛擬化數(shù)據(jù)中心災(zāi)難備份

2022-06-28 08:00:33

大數(shù)據(jù)數(shù)據(jù)災(zāi)備

2020-03-16 12:39:47

容災(zāi)備份規(guī)劃

2018-09-04 11:09:58

容災(zāi)災(zāi)備系統(tǒng)

2023-06-21 18:59:01

2009-06-17 16:58:42

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號