关于腾讯云丢数据事件的一些看法
事件回顧:
創業公司“前沿數控”8月5日發文稱,公司存放在騰訊云上的精準注冊用戶以及內容數據全部丟失,并且不能恢復,造成公司平臺全部停運的狀態。前沿數控表示,公司丟失的數據近千萬元級,對此索賠1000余萬元。騰訊云對此回應稱,該事故是因受所在物理硬盤固件版本bug導致的靜默錯誤(寫入數據和讀取出來的不一致)影響,文件系統元數據損壞,僅能賠償13萬余元現金或云資源的額外補償。截至昨晚,雙方未能就賠償方案達成一致。
看了雙方的申明,沒看到太多的技術細節,前沿數控只是控訴廠商沒有做到承諾,騰訊云只是簡單說了下磁盤靜默錯誤故障以及賠償的分歧,希望后面雙方能復盤一下詳細過程,對業界也是有益的事情。我自己從已經透漏出的信息簡單推測一下,如果有推測的不對的地方還請指正。
首先從騰訊云給出的信息看,數據是在『操作系統云盤』上。先看看騰訊云主機的創建界面:
用戶需要定義系統盤以及數據盤。系統盤用來展開操作系統鏡像以及存儲系統臨時文件和日志之類的。數據盤是掛載后用來存數據的。個人推斷前沿數控應該是直接申請了一個大的系統盤,然后把數據都存在了上面,并沒有使用獨立的數據盤。這個推斷通過前沿數控平臺的處理流程也可以印證,因為如果數據存在了數據盤上,主機出了問題,首先的恢復方式應該是重新創建一個主機,然后把數據盤掛載過來,而不是一直等待修復主機系統。
但這里的『操作系統云盤』如何理解呢?系統進程依賴操作系統盤,對網絡延遲比較敏感,一般不會遠程加載,同時如果用戶正確使用,系統盤上的數據也不太重要(臨時文件,日志之類的),做同步多寫復制也沒必要。所以個人推斷這里的操作系統云盤和數據云盤實際上是兩種東西,操作系統云盤并沒有做到數據云盤那樣的多副本機制,或者副本機制不一樣。個人認為這也是為什么騰訊云在聲明中只字未提副本的原因,因為名字都叫云硬盤,現在說實現方式不一樣,給用戶說不清楚。
但同時,這里的『操作系統云盤』也不應該僅僅是本地盤。因為騰訊云對一些高 IO 的主機提供專門的本地盤,如下圖所示。
如果僅僅是本地盤,非搞出來兩個概念就比較奇怪了。本人不清楚騰訊云的實現方式,無法解答上面的疑問,更詳細的說明得等騰訊云官方給出解釋了。
所以整個事情的技術分析大致是這個樣子的:該用戶創建了一臺主機,直接掛了一塊大系統盤,把數據都寫里面了。云主機物理磁盤損壞,系統無法啟動,只能反復和云廠商溝通等待恢復。云廠商的系統盤沒有副本或者副本機制不一樣,最后數據恢復失敗,就是現在這個結果了。
再談談賠償的事情
雙方對賠償的數額分歧較大。下圖是截取的騰訊云官方的 CBS SLA 協議:
https://cloud.tencent.com/document/product/301/9515
按照上面的協議,騰訊云頂多把云硬盤的總使用費退換給用戶,在騰訊云看來,這次做出的賠償已經是夠『良心』的了。因為云廠商認為自己提供的服務類似于出租或者出售硬盤,你買(租)了個硬盤,然后拷了一些珍貴的數據進去,結果硬盤壞了,你找廠商賠償,廠商也最多賠你個新的硬盤啊。
如果覺得云廠商的協議是霸王條款,不公平,那單從法理角度分析。很多人憑直覺認為是云廠商的故障導致了用戶的數據丟失,就應該賠償全部或者至少是大部分數據的價值。且不說數據的價值如何客觀評估,即便是可以準確估值,法律也需要考慮社會經濟成本,從而劃分兩方的責任比例:
1. 誰更明白數據的價值?對云廠商來說,不同用戶,不同業務的數據之間沒太大區別,能觀測到的指標也僅僅是數據大小。用戶自己更清楚自己的哪部分數據重要。
2. 誰保護數據的成本更低?云廠商因為無法評估數據的價值,所以也無法給某些數據以特殊的注意力。而用戶清楚自己的數據的價值,只需付出很低的成本,比如定時做快照,就可以避免這種情況。
整體而言,掌握更多信息的,付出成本更低的角色應該承擔更大的責任。所以云服務以及快遞這樣的服務行業,賠償都是按照服務價格的倍數進行賠償,云廠商一般承諾 100 倍的故障時間賠償,快遞一般是 2~5 倍的運費。但快遞有個特例,就是可以『保價』,因為有了『保價』信息,快遞公司可以對保價高的貨物付出特殊注意力,同時保價費也相當于一種保險。云廠商其實也考慮過引入保險,但很多用戶不愿意在服務器資源上做投入,廠商之間還在打價格戰??爝f的保價費用一般是千分之五,如果云服務也按這個比例,千萬元價值的數據,保價費幾萬元,如果愿意花這份錢到備份機制上,或者請個技術顧問,也不至于現在這個結果。
至于騰訊云方面是否有涉及虛假宣傳,這個需要騰訊云方面解釋了。但即便是有懲罰性賠償,也只是和服務價格的倍數相關,和數據本身的價值沒關系。
通過這個事情給所有的云用戶一些建議:
1. 系統盡量是無狀態的,數據和系統要分開。多裝了幾次電腦的人都能明白把系統和數據弄不同的盤上。對云上的虛擬機,最好能做到像 Docker 那樣,系統可以隨時還原而不影響應用。
2. 盡量不要自己管理機器,能用云廠商提供的數據庫的,就別自己安裝數據庫。能用對象存儲這種 PaaS 服務的,就別用主機硬盤。
3. 涉及公司生死攸關的數據,本地或者跨云備份。創業公司數據不多,實際上成本也不高。
同時也給云廠商一個建議:
出了故障,進行公開的技術復盤不丟人,也是消滅誤解的最好方式。這方面可以多向國外同行學習。
本人是個云計算的前從業者,但和騰訊云沒有任何關系,不存在『洗地』的動機,只是從技術角度進行分析,希望總結出一些教訓,給業界借鑒。
相關鏈接:
騰訊云給一家創業公司帶來的災難(前沿數控) https://weibo.com/ttarticle/p/show?id=2309404269756587862904
騰訊云的聲明?https://weibo.com/5174457807/GtlI3ngjc
靜默錯誤:為什么看了那么多災難,還是過不好備份這一關? https://mp.weixin.qq.com/s/ra8TP9kfsPPbY8A3Ayopjg 蓋國強關于靜默錯誤的技術分析
免責聲明:文章為轉載,版權歸原作者所有。如涉及作品版權問題,請與我們聯系,我們將刪除內容或協商版權問題。
總結
以上是生活随笔為你收集整理的关于腾讯云丢数据事件的一些看法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 乞讨白发老人是银行VIP 有20万元存
- 下一篇: 平安金通卡算信用卡吗