*印象筆記存儲遷移上COS方案,在原主備存儲節(jié)點,通過開啟同步寫入COS、同步存儲節(jié)點與COS節(jié)點的讀數(shù)據(jù)響應(yīng)等方式實現(xiàn)數(shù)據(jù)一致性遷移
這是一個雙方不斷磨合、技術(shù)不斷優(yōu)化驗證的過程,目標(biāo)也很明確:平滑遷移。
林杰,騰訊云架構(gòu)師,負(fù)責(zé)印象筆記上云項目
加密加密再加密
遷移上云并非只是轉(zhuǎn)移數(shù)據(jù)那么簡單,最具挑戰(zhàn)性的地方在于安全。
由于筆記類服務(wù)商的業(yè)務(wù)特性,大量用戶會把自己的文本、圖片等信息保存在筆記里,數(shù)據(jù)的安全性就顯得尤為重要——一方面,用戶上傳的信息不能被泄露;另一方面,要避免用戶資料丟失。同時在數(shù)據(jù)遷移過程中,還要盡可能不影響用戶正常使用筆記服務(wù)。
一下子面對這么多需求,林杰和團(tuán)隊一起首先在遷移方式上做出優(yōu)化。技術(shù)人員從印象筆記原來的數(shù)據(jù)中心拉了兩根2Gbps的專線,通道都是印象筆記獨有的。相較于網(wǎng)絡(luò)傳輸,專線能夠?qū)崿F(xiàn)更快速安全的接入,遷移更有保障。
但這種安全性對于印象筆記來說,還遠(yuǎn)遠(yuǎn)不夠,他們?nèi)杂懈?、更?xì)化的安全需求。
印象筆記希望,不只是針對公網(wǎng),針對內(nèi)網(wǎng)也要有限制。使得內(nèi)部資源比如公司網(wǎng)站,跟用戶的數(shù)據(jù)做到完全隔離。雖然都是在騰訊云的賬戶里面,也同時在印象筆記的私有網(wǎng)絡(luò)里面,但是這部分服務(wù)器是不可以訪問用戶數(shù)據(jù)的。
最終要達(dá)到什么樣的效果才行呢?“即便是印象筆記自己內(nèi)部的運維人員和管理員,想要訪問到這部分用戶資源,也需要經(jīng)過VPN的準(zhǔn)入控制、訪問日志的保護(hù)機制,以及安全部門的定期審核。簡單來說,只有受限的來源,才能夠接觸到用戶的數(shù)據(jù)信息?!庇∠蠊P記基礎(chǔ)構(gòu)架與架構(gòu)副總裁岳峰說。
不僅如此,印象筆記對于數(shù)據(jù)的存儲,也有非常高的要求。但這沒有難倒騰訊云的技術(shù)人員,團(tuán)隊緊急做了非常多的開發(fā)準(zhǔn)備,最終幫客戶實現(xiàn)了想要的功能和效果。
林杰說:“存儲方面,我們使用了騰訊云CBS塊存儲,還有COS。塊存儲需要所有數(shù)據(jù)落盤都是可以加密的,當(dāng)時我們是不支持的。所以為了支持這個特性,產(chǎn)品、方案還有研發(fā)人員都是直接待命。所有需求緊急評估,上線過程也要去做一些確認(rèn)和測試。同時我們通過DRBD機制來實現(xiàn)印象筆記數(shù)據(jù)的同城雙活高可用?!?/p>
印象筆記數(shù)據(jù)存儲同城雙區(qū)高可用方案
“還有一些是特性類的,就比如說印象筆記需要所有到COS的訪問經(jīng)過騰訊云私有網(wǎng)絡(luò)(Virtual Private Cloud,VPC)的時候,都要做訪控制。我們當(dāng)時也是沒有這種能力的,而且架構(gòu)上會比較復(fù)雜,因為從VPC到COS中間是要通過很多網(wǎng)關(guān)去做轉(zhuǎn)化。所有接入層的內(nèi)核都要升級,整個大網(wǎng)內(nèi)核升級的影響是非常大的。這個我們也單獨幫他們搭了一套,滿足他們的要求,再去開發(fā)一個新的特性區(qū)域做支持?!绷纸芾^續(xù)解釋。
在印象筆記的數(shù)據(jù)中,一部分是筆記本身,比如文本、標(biāo)題、筆記屬性等;一部分是筆記的附件,比如照片或PDF文件等,而這部分占到整個數(shù)據(jù)量的90%以上。
其中,附件部分使用了騰訊云的對象存儲功能,這也是業(yè)界標(biāo)準(zhǔn)的、高強度的加密機制。這就保證了從存儲硬件設(shè)備上,即在數(shù)據(jù)寫入硬盤的時候,就已經(jīng)是經(jīng)過加密的了。
“就算是有人偷偷溜進(jìn)騰訊云的機房,把這個硬盤拔走,也恢復(fù)不出用戶存上去的數(shù)據(jù)?!痹婪逭f。
控制和加密成為整個方案的關(guān)鍵,也是雙方技術(shù)團(tuán)隊使用的高頻詞匯。
“數(shù)據(jù)從客戶側(cè)傳輸上來的時候,都要經(jīng)過一套加密機制。所有的客戶信息加密之后,再傳到騰訊云的存儲上面。另外,所有的訪問都要先通過VPC再到COS,在這個過程里所有到VPC的數(shù)據(jù),都會先到密鑰管理系統(tǒng)里面去做一個密鑰分發(fā)。加密完之后,再把這些數(shù)據(jù)放到COS里面。”林杰說。
他還強調(diào),團(tuán)隊專門針對印象筆記做了落盤加密,避免存儲于硬件設(shè)備中的數(shù)據(jù)被非法竊取或被惡意篡改,保證所有數(shù)據(jù)只要傳輸?shù)骄W(wǎng)絡(luò)里面,都是具有加密特性的。
印象筆記數(shù)據(jù)寫入加密方式,所有數(shù)據(jù)均需通過騰訊云的密鑰管理服務(wù),獲取密鑰加密后再寫入存儲
同時,林杰和團(tuán)隊跟岳峰團(tuán)隊一起對賬號系統(tǒng)之間的訪問進(jìn)行設(shè)計控制。
印象筆記擁有很多的子賬號,不同部門之間的訪問控制策略也做得非常細(xì),特別是印象筆記與Evernote知識產(chǎn)權(quán)共享,要支持Evernote管理團(tuán)隊的使用習(xí)慣。騰訊云幫印象筆記做了定制化的開發(fā),類似于強制的MFA多因素認(rèn)證(MFA,Multi-Factor Authentication 多因子認(rèn)證),實現(xiàn)了在用戶名和密碼之外再對賬號增加一層保護(hù)。
印象筆記基礎(chǔ)構(gòu)架與架構(gòu)副總裁
這里的戰(zhàn)斗靜悄悄
從2018年1月底方案實施到5月,印象筆記上云過程持續(xù)了大約4個月時間。岳峰說,這大約是印象筆記入華以來面臨的最大一次挑戰(zhàn)。但事實上,它是“靜悄悄”地完成的,用戶幾乎完全不受影響。
在沒有正式遷移的時候,騰訊云和印象筆記雙方團(tuán)隊一起做測試、驗證,包括專線的能力和性能,也包括加密之后各種性能可能存在的問題,還有后端存儲的時候涉及到的特性支持,以及上線之后能否真正滿足客戶的要求。
戰(zhàn)斗打響一般是在凌晨時分,用戶使用的低峰期。在正式遷移的過程中,騰訊云需要做好資源的準(zhǔn)備,以及整個上量過程中可用性的保障。最后印象筆記正式遷移過來之后,要看用戶是否能正常訪問。這一系列的工作,都離不開雙方技術(shù)人員的配合和努力。
“正式上云之前,我們跟騰訊云的架構(gòu)師進(jìn)行了交流,預(yù)告我們將要做哪些事情,一周五天每一天做什么,每一天結(jié)束的時候它會有一個怎么樣的結(jié)構(gòu),可能每天都會變。他(林杰)很快幫我們畫了一張圖出來,問我們是不是這樣。他能夠真正站在我們的角度,理解我們將要實施的計劃,包括我們在實施的過程中,騰訊云售后團(tuán)隊也是24小時待命,有時候可能都是北京時間凌晨兩三點鐘,我們的問題也基本上能很快得到解答。”岳峰說。
一場涉及到數(shù)千萬用戶、高達(dá)數(shù)百TB數(shù)據(jù)的遷移就這樣“悄悄”地完成了。目前為止,印象筆記已經(jīng)在騰訊云上運作了一年,平滑依舊。
“遷移至今的一年時間里,運營整體非常穩(wěn)定流暢,數(shù)據(jù)安全得到妥善保障。印象筆記也在快速發(fā)展,全新發(fā)布獨立App,數(shù)據(jù)量不斷增長的同時,穩(wěn)定性和響應(yīng)速度也在不斷提升?!痹婪逭f。