Amazon DocumentDB 快速入門使用 AWS CloudFormation - Amazon DocumentDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon DocumentDB 快速入門使用 AWS CloudFormation

本節包含步驟和其他資訊,可協助您快速開始使用 Amazon DocumentDB (具有 MongoDB 相容性)。AWS CloudFormation如需有關亞馬遜文件資料庫的一般資訊,請參閱。什麼是 Amazon DocumentDB(與 MongoDB 兼容性)

這些指示使用 AWS CloudFormation 範本在預設 Amazon VPC 中建立叢集和執行個體。如需自行建立這些資源的說明,請參閱開始使用 Amazon DocumentDB

重要

由此範本建立的 AWS CloudFormation 堆疊會建立多個資源,包括 Amazon DocumentDB 中的資源 (例如叢集和執行個體) 和 Amazon 彈性運算雲端 (例如子網路群組) 中的資源。

其中部分資源不屬於免費方案資源。如需定價資訊,請參閱 Amazon DocumentDB 定價Amazon EC2 定價。當您完成後可以刪除堆疊,以停止計費。

此 AWS CloudFormation 堆疊僅供教學課程使用。如果您在生產環境中使用此範本,建議您使用更嚴格的 IAM 政策和安全性。如需保護資源安全的相關資訊,請參閱 Amazon VPC 安全性Amazon EC2 網路和安全性

必要條件

在建立 Amazon DocumentDB 叢集之前,您必須具備下列項目:

  • 一個默認的 Amazon VPC

  • 必要的 IAM 許可

所需的 IAM 許可

以下權限可讓您建立 AWS CloudFormation 堆疊的資源:

AWS 受管理策略

  • AWSCloudFormationReadOnlyAccess

  • AmazonDocDBFullAccess

其他 IAM 許可

下列原則概述建立和刪除此 AWS CloudFormation 堆疊所需的其他權限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetSSHPublicKey", "iam:ListSSHPublicKeys", "iam:CreateRole", "iam:CreatePolicy", "iam:PutRolePolicy", "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:GetAccountSummary", "iam:ListAccountAliases", "iam:GetRole", "iam:DeleteRole", "iam:RemoveRoleFromInstanceProfile", "iam:DeleteRolePolicy", "iam:DeleteInstanceProfile", "cloudformation:*Stack", "ec2:DescribeKeyPairs", "ec2:*Vpc", "ec2:DescribeInternetGateways", "ec2:*InternetGateway", "ec2:createTags", "ec2:*VpcAttribute", "ec2:DescribeRouteTables", "ec2:*RouteTable", "ec2:*Subnet", "ec2:*SecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:DescribeVpcEndpoints", "ec2:*VpcEndpoint", "ec2:*SubnetAttribute", "ec2:*Route", "ec2:*Instances", "ec2:DeleteVpcEndpoints" ], "Resource": "*" }, { "Sid": "iamPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "rds.amazonaws.com" } } } ] }
注意

在前述政策中的粗體許可僅在刪除堆疊時為必要:iam:DeleteRoleiam:RemoveRoleFromInstanceProfileiam:DeleteRolePolicyiam:DeleteInstanceProfileec2:DeleteVpcEndpoints。亦請注意 ec2:*Vpc授予 ec2:DeleteVpc 許可。

Amazon EC2 金鑰對

您必須在要建立 AWS CloudFormation 堆疊的區域中擁有可用的 key pair (和 PEM 檔案)。如果您需要建立 key pair,請參閱 Amazon EC2 使用者指南中的使用 Amazon EC2 建立金鑰配對。

啟動 Amazon DocumentDB 堆棧 AWS CloudFormation

本節說明如何啟動和設定 Amazon DocumentDB AWS CloudFormation 堆疊。

  1. 登錄到 AWS Management Console 在https://console.aws.amazon.com/

  2. 下表列出每個範本的 Amazon DocumentDB 堆疊範本。 AWS 區域為 AWS 區域 您想要啟動堆疊的選擇啟動堆疊。

    區域 檢視範本 在設計工具中檢視 啟動
    美國東部 (俄亥俄) 檢視範本 在設計工具中檢視
    美國東部 (維吉尼亞北部) 檢視範本 在設計工具中檢視

    美國西部 (奧勒岡)

    檢視範本 在設計工具中檢視

    亞太區域 (孟買)

    檢視範本 在設計工具中檢視

    亞太區域 (首爾)

    檢視範本 在設計工具中檢視

    亞太區域 (新加坡)

    檢視範本 在設計工具中檢視

    亞太區域 (悉尼)

    檢視範本 在設計工具中檢視

    亞太區域 (東京)

    檢視範本 在設計工具中檢視

    加拿大 (中部)

    檢視範本 在設計工具中檢視

    歐洲 (法蘭克福)

    檢視範本 在設計工具中檢視

    歐洲 (愛爾蘭)

    檢視範本 在設計工具中檢視

    歐洲 (倫敦)

    檢視範本 在設計工具中檢視

    Europe (Paris)

    檢視範本 在設計工具中檢視
  3. 建立堆疊 — 說明您選取的 Amazon DocumentDB 範本。每個堆疊都是以 JSON 或 YAML 檔案的範本為基礎,其中包含您要包含在堆疊中之 AWS 資源的相關設定。因為您選擇從上述提供的範本啟動堆疊,因此您的範本已設定為為 AWS 區域 您選擇的範本建立 Amazon DocumentDB 堆疊。

    當您啟動 AWS CloudFormation 堆疊時,預設會停用 Amazon DocumentDB 叢集的刪除保護。如果您要啟用叢集的刪除保護,請完成以下步驟。否則,請選擇 Next (下一步) 以繼續下一個步驟。

    若要為您的 Amazon DocumentDB 叢集啟用刪除保護:

    1. 從 [建立堆疊] 頁面右下角選擇 [在設計工具中檢視]。

    2. 使用主控台結果 [ AWS CloudFormation 設計工具] 頁面中的整合式 JSON 和 YAML 編輯器修改範本。捲動至 Resources 區段並修改它以包含 DeletionProtection,如下所示。如需有關使用 AWS CloudFormation 設計師的詳細資訊,請參閱什麼是 AWS CloudFormation 設計師?

      JSON:

      "Resources": { "DBCluster": { "Type": "AWS::DocDB::DBCluster", "DeletionPolicy": "Delete", "Properties": { "DBClusterIdentifier": { "Ref": "DBClusterName" }, "MasterUsername": { "Ref": "MasterUser" }, "MasterUserPassword": { "Ref": "MasterPassword" }, "DeletionProtection": "true" } },

      YAML:

      Resources: DBCluster: Type: 'AWS::DocDB::DBCluster' DeletionPolicy: Delete Properties: DBClusterIdentifier: !Ref DBClusterName MasterUsername: !Ref MasterUser MasterUserPassword: !Ref MasterPassword DeletionProtection: 'true'
    3. 選擇頁面左上角的 Create Stack (建立堆疊) ( ) 以儲存變更,並在啟用這些變更的情況下建立堆疊。

    4. 儲存變更之後,系統會將您重新導向至 Create stack (建立堆疊) 頁面。

    5. 選擇 Next (下一步) 繼續。

  4. 指定堆疊詳細資訊 — 輸入範本的堆疊名稱和參數。參數是在您的範本中定義,而且可讓您在建立或更新堆疊時輸入自訂值。

    • Stack name (堆疊名稱) 下,輸入堆疊的名稱或接受提供的名稱。堆疊名稱可以包含字母 (A—Z 和 a—z)、數字 (0—9) 和破折號 (—)。

    • Parameters (參數) 下,輸入下列詳細資訊:

      • 資料庫 ClusterName — 輸入 Amazon DocumentDB 叢集的名稱,或接受提供的名稱。

        叢集命名限制條件:

        • 長度為 [1—63] 字母、數字或連字號。

        • 第一個字元必須是字母。

        • 不能以連字號結尾或連續包含兩個連字號。

        • Amazon RDS、Neptune 和亞馬 Amazon DocumentDB 中每 AWS 帳戶個區域的所有叢集必須是唯一的。

      • 資料庫 InstanceClass — 從下拉式清單中,選取 Amazon DocumentDB 叢集的執行個體類別。

      • 資料庫 InstanceName — 輸入 Amazon DocumentDB 執行個體的名稱,或接受提供的名稱。

        執行個體命名限制:

        • 長度為 [1—63] 字母、數字或連字號。

        • 第一個字元必須是字母。

        • 不能以連字號結尾或連續包含兩個連字號。

        • Amazon RDS、Neptune 和 Amazon DocumentDB 中每 AWS 帳戶個區域的所有執行個體必須是唯一的。

      • MasterPassword— 資料庫管理員帳戶密碼。

      • MasterUser— 資料庫管理員帳戶使用者名稱。 MasterUser 必須以字母開頭,且只能包含英數字元。

    選擇 Next (下一步) 儲存變更並繼續。

  5. 設定堆疊選項 — 設定堆疊的標籤、權限和其他選項。

    • 標籤 — 指定要套用至堆疊中資源的標籤 (鍵值) 配對。您最多可以為每個堆疊新增 50 個唯一的標籤。

    • 權限 — 選用。選擇 IAM 角色以明確定義如 AWS CloudFormation 何建立、修改或刪除堆疊中的資源。如果您未選擇角色,請根據您的 AWS CloudFormation 使用者認證使用權限。在您指定服務角色之前,請確保您有傳遞許可 (iam:PassRole)。iam:PassRole 許可會指定您可使用哪些角色。

      注意

      當您指定服務角色時,一 AWS CloudFormation 律會針對在該堆疊上執行的所有作業使用該角色。其他具有在此堆疊上執行這些操作之許可的使用者,都能夠使用此角色,即使他們不具傳遞它的許可。如果該角色包含使用者不該有的許可,您可能在無意中提升使用者的許可。確定該角色授予最低權限

    • 進階選項 — 您可以設定下列進階選項:

      • 堆疊原則 — 選擇性。可藉由此選項來定義堆疊更新期間,您欲避免意外更新的資源。在預設情況下,系統可以在堆疊更新期間將所有資源進行更新。

        您可以直接輸入堆疊政策作為 JSON,或上傳包含堆疊政策的 JSON 檔案。如需詳細資訊,請參閱避免更新堆疊資源

      • 復原配置 — 選擇性。指定建立和更新堆疊時 AWS CloudFormation 要監視的 CloudWatch 記錄警示。如果操作違反了警報閾值,則將其 AWS CloudFormation 復原。

      • 通知選項 — 可選。指定簡易通知系統 (SNS) 的主題。

      • 堆疊建立選項 — 選用。您可以指定下列選項:

        • 敗時復原 — 如果堆疊建立失敗,是否應該回復堆疊。

        • 逾時 — 堆疊建立逾時前的分鐘數。

        • 終止保護 — 防止意外刪除堆疊。

          注意

          AWS CloudFormation 終止保護 Amazon DocumentDB 刪除保護的概念不同。如需詳細資訊,請參閱 終止保護及刪除保護

    選擇 Next (下一步) 繼續。

  6. 檢閱 <stack-name>— 檢閱您的堆疊範本、詳細資料和組態選項。您也可以在頁面底部開啟快速建立連結,以建立與此相同基本組態的堆疊。

    • 選擇 Create (建立) 以建立堆疊。

    • 或者,您可以選擇 Create change set (建立變更集)。變更集是建立堆疊之前如何配置此堆疊的預覽。這可讓您在執行變更集之前檢查各種模型組態。

存取 Amazon DocumentDB 叢集

AWS CloudFormation 堆疊完成後,您可以使用 Amazon EC2 執行個體連線到您的 Amazon DocumentDB 叢集。如需使用安全殼層連線至 Amazon EC2 執行個體的相關資訊,請參閱 Amazon EC2 使用者指南中的 Connect 到 Linux 執行個體。

連線之後,請參閱下列各節,其中包含使用 Amazon DocumentDB 的相關資訊。

終止保護及刪除保護

啟用刪除保護和終止保護是 Amazon DocumentDB 的最佳實務。 CloudFormation 終止保護與 Amazon DocumentDB 刪除保護功能截然不同的功能。

  • 終止保護 — 您可以透過為堆疊啟用終止保護來避免意外刪除 CloudFormation 堆疊。如果使用者嘗試刪除啟用終止保護的堆疊,則刪除會失敗,且堆疊保持不變。當您使用建立堆疊時,依預設會停用終止保護 CloudFormation。您可以在建立新的堆疊時啟用終止保護。如需詳細資訊,請參閱設定 AWS CloudFormation 堆疊選項

  • 刪除保護 — Amazon DocumentDB 也提供針對叢集啟用刪除保護的功能。如果使用者嘗試刪除已啟用刪除保護的 Amazon DocumentDB 叢集,則刪除作業會失敗,且叢集保持不變。刪除保護在啟用時,可防止意外刪除 Amazon DocumentDB AWS Management Console、 AWS CLI和. CloudFormation 如需啟用和停用 Amazon DocumentDB 叢集之刪除保護的詳細資訊,請參閱。刪除保護