2023年3月29日 星期三

AWS 執行個體存放區(instance-store)只適合暫時存放數據,不適合存取重要的檔案經驗分享-資料遺失

 剛好之前有EC2主機有資料移失做個分享:

Q.Instance/system status checked failed 異常原因,可能因以下原因造成:

網路連線中斷/系統電力中斷/實體主機的軟體問題/實體主機上會影響網路連線的硬體問題

Q. 什麽重啟方式會導致數據丟失?

若您只是 reboot instance,資料並不會遺失。只要您有 stop 您的機器,由於此行為會導致實體機器更換,因此您的 instance store 資料也會遺失。僅有存放在如同 EBS、EFS 中的資料,才會被一起遷移至新的機器。

所以:重要的數據,請存放於  Amazon S3、Amazon EBS 或 Amazon EFS,而 "執行個體存放區(instance-store)" 只適合暫時存放數據,不適合存取重要的檔案。

如工作上接手管理AWS- EC2 名字帶有 "DB" 的字樣的 EC2 需確認使用到 c5d 及 i3 機器,如有重要資料需要保存,也請務必記得另外存放一份到 S3、EBS、EFS ...等永久的儲存空間中,以免有更多資料遺失。


EC2重啟後 disk無法掛載

A:宿主機(physical host)" 出現硬件的非預期故障(Hardware issues)時",資料必然會不見。 "沒有任何方式" 可以恢復您在 "執行個體存放區(instance-store)" 的數據。


1》reboot是指系統層的reboot指令嗎? aws後台 重啟實例 = 系統層 reboot指令 是嗎?

是的,不論是機器內 OS 執行 reboot,或是透過 AWS console 點選 "重啟實例 ",皆不會更換您的宿主機。由於宿主機不會更換,因此 instance store 及其資料不會丟失。


2》如果在系統層 執行shutdown指令,數據會丟失嗎?

會,shutdown 指令如同在 AWS console 點選  "停止實例",會更換宿主機。

由於宿主機會更換,instance store 也會被更換,導致其資料會丟失。


3》如果在系統層 執行shutdown指令 + aws後台 執行 啟動現有實例,數據會丟失嗎?

會,如同 2》說明,shutdown 指令如同在 AWS console 點選  "停止實例",會更換宿主機。

由於宿主機會更換,instance store 也會被更換,導致其資料會丟失。






建議可針對各台 EC2 的 system health check 進行監控,並在有異常時透過 SNS 寄發通知 [1]。

以下實作方式:

(1) 選取您想要監控的 EC2 機器,選擇狀態檢查標籤,然後選擇動作 , 建立狀態檢查警示。

(2) 警示通知可以選取現有 Amazon SNS topic,或是輸入名字以新增 SNS topic

(3) 在 Type of data to sample,可以選擇 Status check failed:system 以只檢查底層硬件故障,或保留 Status check failed:either 以監控所有的檢查失敗。

(4) 若您想在 cloudwatch dashboard 上監控,可以選擇 Add to dashboard (新增至儀表板)

建立完 cloudwatch alarm 之後,您就能透過 cloudwatch alarm 發送通知到 SNS 上。

並將信件寄送至 SNS topic 訂閱的信箱中 [2]。

參考官方說明:

[1] https://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/monitoring-system-instance-status-check.html#using-cloudwatch-new-console2

[2] https://docs.aws.amazon.com/zh_tw/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html



沒有留言:

張貼留言

AWS使用者許可範圍遭限制

搜尋此網誌