本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
維護 Amazon DocumentDB
Amazon DocumentDB 會定期對 Amazon DocumentDB 資源執行維護。維護作業通常大多是更新資料庫引擎 (叢集維護) 或執行個體基礎作業系統 (OS) (執行個體維護)。資料庫引擎更新是必要的修補程式,包括資料庫引擎的安全性修正、錯誤修正和增強功能。雖然大多數作業系統修補程式都是選用的,但如果您有一段時間未套用,則可能需要修補程式並自動套用,以維護您的安全狀態。因此,我們建議您在 Amazon DocumentDB 執行個體可用時立即套用作業系統更新。
資料庫引擎修補程式需要您讓 Amazon DocumentDB 叢集短暫離線。一旦可用,這些修補程式會自動排程在 Amazon DocumentDB 叢集的近期排程維護時段套用。
叢集和執行個體維護都有自己個別的維護時段。您選擇不立即套用的叢集和執行個體修改也會在維護時段期間套用。根據預設,當您建立叢集時,Amazon DocumentDB 會為叢集和每個個別執行個體指派維護時段。您可以在建立叢集或執行個體時選擇維護時段。您也可以隨時修改維護時段,使符合您的業務排程或實務。我們通常會建議您選擇對應用程式影響最低的維護時段 (例如,在晚上或週末)。
主題
Amazon DocumentDB 引擎修補程式的通知
您將會透過 AWS 主控台中 Health Dashboard (AHD) 的運作狀態事件,以及透過電子郵件收到必要資料庫引擎修補程式的維護通知。當特定 AWS 區域可使用 Amazon DocumentDB 引擎維護修補程式時,區域中所有受影響的 Amazon DocumentDB 使用者帳戶都會收到每個受修補程式影響 Amazon DocumentDB 版本的 AHD 和電子郵件通知。您可以在 AWS 主控台 AHD 的排程變更區段下檢視這些通知。通知將提供有關修補程式可用性時間、自動套用排程、受影響叢集清單和版本備註的詳細資訊。此通知也會透過電子郵件傳送至 AWS 帳戶的根使用者電子郵件地址。
收到此通知後,您可以選擇在排定的自動套用日期之前,將這些引擎修補程式自動套用到您的 Amazon DocumentDB 叢集。或者,您可以等待引擎修補程式在即將到來的維護時段自動套用 (預設選項)。
注意
AHD 中通知的狀態會設為「進行中」,直到發行具有新引擎修補程式版本的新 Amazon DocumentDB 引擎修補程式為止。
將引擎修補程式套用至 Amazon DocumentDB 叢集後,叢集的引擎修補程式版本將會更新,以反映通知中的版本。您可以執行 db.runCommand({getEngineVersion: 1})命令來驗證此更新。
AWS Health 也與 Amazon EventBridge 整合,其使用事件來建置可擴展的事件驅動型應用程式,並與超過 20 個目標整合 AWS Lambda,包括 Amazon Simple Queue Service (SQS) 等。您可以在引擎修補程式可供使用之前,使用AWS_DOCDB_DB_PATCH_UPGRADE_MAINTENANCE_SCHEDULED事件代碼來設定 Amazon EventBridge。您可以設定 EventBridge 來回應事件並自動執行動作,例如擷取事件資訊、啟動其他事件、透過其他管道傳送通知,例如推送通知到 AWS Console Mobile Application,以及在 Amazon DocumentDB 引擎修補程式在您的區域可用時採取修正或其他動作。
在 Amazon DocumentDB 取消引擎修補程式的罕見情況下,您將收到 AHD 通知以及一封電子郵件,通知您有關取消的資訊。因此,您可以使用AWS_DOCDB_DB_PATCH_UPGRADE_MAINTENANCE_CANCELLED事件代碼來設定 Amazon EventBridge 來回應此事件。檢視 Amazon EventBridge 使用者指南,進一步了解如何使用 Amazon EventBridge 規則。
檢視待定的 Amazon DocumentDB 維護動作
您可以使用 AWS 管理主控台 或 檢視您的叢集是否可使用維護更新 AWS CLI。
如有更新可用,您可執行下列操作之一:
-
延遲目前排程用於下一個維護時段的維護動作 (僅適用於作業系統修補程式)。
-
立即套用維護動作。
-
排程在下次的維護時段啟動維護動作。
注意
如果您不採取任何動作,引擎修補程式等必要的維護動作將自動套用到即將到來的排程維護時段。
維護時段會判斷待定的操作何時開始,但不限制這些操作的總執行時間。
Amazon DocumentDB 引擎更新
使用 Amazon DocumentDB,您可以選擇何時套用維護操作。您可以使用 AWS 管理主控台 或 來決定 Amazon DocumentDB 何時套用更新 AWS CLI。
使用本主題中的程序,立即升級或排程叢集的升級。
套用日期
每個維護動作都有各自的套用日期,您可以在描述待定維護動作時找到。當您從 讀取待定維護動作的輸出時 AWS CLI,會列出三個日期。這些日期值是在維護為選用null時。這些值會在排程或套用對應的維護動作時填入。
-
CurrentApplyDate- 將立即套用維護動作或在下一個維護時段套用的日期。 -
ForcedApplyDate- 自動套用維護的日期,與您的維護時段無關。 -
AutoAppliedAfterDate- 在叢集的維護時段期間套用維護的日期。
使用者啟動的更新
身為 Amazon DocumentDB 使用者,您可以啟動叢集或執行個體的更新。例如,您可以將執行個體的類別修改為具有更多或更少記憶體的類別,也可以變更叢集的參數群組。Amazon DocumentDB 檢視這些變更的方式與 Amazon DocumentDB 啟動的更新不同。如需修改叢集或執行個體的詳細資訊,請參閱下列內容:
若要查看待定的使用者啟動修改內容清單,請執行下列命令。
查看執行個體的待定使用者啟動變更
若為 Linux、macOS 或 Unix:
aws docdb describe-db-instances \ --query 'DBInstances[*].[DBClusterIdentifier,DBInstanceIdentifier,PendingModifiedValues]'
針對 Windows:
aws docdb describe-db-instances ^ --query 'DBInstances[*].[DBClusterIdentifier,DBInstanceIdentifier,PendingModifiedValues]'
此操作的輸出將會如下所示 (JSON 格式)。
在本案例中,sample-cluster-instance 有 db.r5.xlarge 執行個體類別的待定變更,而 sample-cluster-instance-2 沒有待定變更。
[
[
"sample-cluster",
"sample-cluster-instance",
{
"DBInstanceClass": "db.r5.xlarge"
}
],
[
"sample-cluster",
"sample-cluster-instance-2",
{}
]
]管理您的 Amazon DocumentDB 維護時段
每個執行個體和叢集的維護時段為每週一次,在此期間會套用任何待定的變更。維護時段可以在請求或要求事件中,控制修改及軟體修補作業的時機。若在特定某週排定維護事件,系統將在您指定的 30 分鐘維護時段內啟動該事件。此外,多數維護事件也能在 30 分鐘的維護時段內完成,但較大型的維護事件可能需要 30 分鐘以上才能完成。
30 分鐘的維護時段是從每個區域之 8 小時時段內隨機選取的。如果您在建立執行個體或叢集時未指定偏好的維護時段,Amazon DocumentDB 會在一週中隨機選取一天指派 30 分鐘的維護時段。
下表列出每個區域的時段,預設維護時段會從此時段中指派。
| 區域名稱 | 區域 | UTC 時間區塊 |
|---|---|---|
| 美國東部 (俄亥俄) | us-east-2 | 03:00-11:00 |
| 美國東部 (維吉尼亞北部) | us-east-1 | 03:00-11:00 |
| 美國西部 (奧勒岡) | us-west-2 | 06:00-14:00 |
| Africa (Cape Town) | af-south-1 | 03:00–11:00 |
| 亞太地區 (香港) | ap-east-1 | 06:00-14:00 |
| 亞太地區 (海德拉巴) | ap-south-2 | 06:30–14:30 |
| 亞太地區 (馬來西亞) | ap-southeast-5 | 13:00-21:00 |
| 亞太區域 (孟買) | ap-south-1 | 06:00-14:00 |
| 亞太地區 (大阪) | ap-northeast-3 | 12:00-20:00 |
| 亞太區域 (首爾) | ap-northeast-2 | 13:00-21:00 |
| 亞太區域 (新加坡) | ap-southeast-1 | 14:00-22:00 |
| 亞太區域 (雪梨) | ap-southeast-2 | 12:00-20:00 |
| 亞太區域 (泰國) | ap-southeast-7 | 15:00-23:00 |
| 亞太區域 (東京) | ap-northeast-1 | 13:00-21:00 |
| 加拿大 (中部) | ca-central-1 | 03:00-11:00 |
| 中國 (北京) | cn-north-1 | 06:00-14:00 |
| 中國 (寧夏) | cn-northwest-1 | 06:00-14:00 |
| 歐洲 (法蘭克福) | eu-central-1 | 21:00-05:00 |
| 歐洲 (愛爾蘭) | eu-west-1 | 22:00-06:00 |
| 歐洲 (倫敦) | eu-west-2 | 22:00-06:00 |
| 歐洲 (米蘭) | eu-south-1 | 02:00-10:00 |
| Europe (Paris) | eu-west-3 | 23:59-07:29 |
| 歐洲 (西班牙) | eu-south-2 | 02:00–10:00 |
| Europe (Stockholm) | eu-north-1 | 04:00–12:00 |
| 墨西哥 (中部) | mx-central-1 | 03:00-11:00 |
| 中東 (阿拉伯聯合大公國) | me-central-1 | 05:00–13:00 |
| 南美洲 (聖保羅) | sa-east-1 | 00:00-08:00 |
| 以色列 (特拉維夫) | il-central-1 | 04:00-12:00 |
| AWS GovCloud (美國東部) | us-gov-east-1 | 17:00-01:00 |
| AWS GovCloud (美國西部) | us-gov-west-1 | 06:00-14:00 |
變更 Amazon DocumentDB 維護時段
維護時段應落在使用量最低的時段,因此可能需要不時進行變更。除非系統套用變更 (例如擴展儲存操作或執行個體類別變更) 及要求停機,否則這段時間無法使用您的叢集或執行個體。而且無法使用的時間,僅為執行必要變更所需的最短時間。
對於資料庫引擎的升級,Amazon DocumentDB 會使用叢集偏好的維護時段,而不是個別執行個體的維護時段。
變更維護時段
-
針對叢集:請參閱修改 Amazon DocumentDB 叢集。
-
針對執行個體:請參閱修改 Amazon DocumentDB 執行個體。
Amazon DocumentDB 作業系統更新
Amazon DocumentDB 叢集中的執行個體偶爾需要作業系統更新。Amazon DocumentDB 會將作業系統升級至較新的版本,以改善資料庫效能和客戶的整體安全狀態。作業系統更新不會變更 Amazon DocumentDB 執行個體的叢集引擎版本或執行個體類別。
建議您先更新叢集中的讀取器執行個體,然後更新寫入器執行個體,以最大化叢集的可用性。我們不建議同時更新讀取器和寫入器執行個體,因為發生容錯移轉時,可能會產生更長的停機時間。
Amazon DocumentDB 的大多數作業系統更新都是選用的,而且沒有要套用它們的設定日期。不過,如果您有一段時間沒有套用這些更新,它們最終可能會變成必要,並在執行個體的維護時段內自動套用。這是為了協助維護資料庫的安全狀態。為了避免任何意外停機,建議您在 Amazon DocumentDB 執行個體可用時立即套用作業系統更新,並根據您的業務需求在方便的時間設定執行個體維護時段。
若要在新的選用更新可用時收到通知,您可以訂閱安全修補事件類別中的 RDS-EVENT-0230。如需訂閱 Amazon DocumentDB 事件的資訊,請參閱訂閱 Amazon DocumentDB 事件訂閱。
在叢集或執行個體上執行維護時,如果執行個體為主執行個體,可預期將會容錯移轉。為了提高可用性,我們建議您為 Amazon DocumentDB 叢集使用多個執行個體。如需詳細資訊,請參閱Amazon DocumentDB 容錯移轉。
注意
對於某些管理功能,Amazon DocumentDB 使用與 Amazon Relational Database Service (Amazon RDS) 共享的操作技術。
重要
您的 Amazon DocumentDB 執行個體將在作業系統升級期間離線。您可以擁有多執行個體叢集,將叢集停機時間降至最低。如果您沒有多執行個體叢集,您可以選擇暫時建立叢集 (新增次要執行個體) 以執行此維護,然後在維護完成後刪除額外的讀取器執行個體 (將適用次要執行個體的一般費用)。
注意
為了履行各種合規義務,可能需要將所有選用與強制更新保持為最新的狀態。建議您在維護時段期間定期套用 Amazon DocumentDB 提供的所有更新。
您可以使用 AWS 管理主控台 或 AWS CLI 來判斷是否有可用的更新。
作業系統更新專屬於 Amazon DocumentDB 引擎版本和執行個體類別。因此,Amazon DocumentDB 執行個體在不同時間接收或要求更新。當作業系統更新根據其引擎版本和執行個體類別可供執行個體使用時,更新會顯示在主控台中。它也可以透過執行 AWS CLI describe-pending-maintenance-actions命令或呼叫 DescribePendingMaintenanceActions API 操作來檢視。
如果您未執行 Amazon DocumentDB 引擎的最新叢集修補程式版本,則可能不會看到作業系統更新列為可用維護。若要檢視和管理作業系統更新,您應該先升級到最新的引擎修補程式版本。