本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon CloudWatch Observability Access Manager 集中監控
由 Anand Krishna Varanasi (AWS)、Jimmy Morgan (AWS)、Ashish Kumar (AWS)、Balaji Vedagiri (AWS)、JAGDISHKOMAKULA(AWS)、Sarat Chandra Pothula (AWS) 和 Vivek Thangamuthu (AWS) 建立
Summary
可觀測性對於監控、了解和故障診斷應用程式至關重要。跨越多個帳戶的應用程式,如同 AWS Control Tower 或登陸區域實作,會產生大量日誌和追蹤資料。若要快速疑難排解問題或了解使用者分析或商業分析,您需要所有帳戶的共同可觀測性平台。Amazon CloudWatch Observability Access Manager 可讓您從中央位置存取和控制多個帳戶日誌。
您可以使用可觀測性存取管理員來檢視和管理來源帳戶產生的可觀測性資料日誌。來源帳戶是產生其資源可 AWS 帳戶 觀測性資料的個人。可觀測性資料會在來源帳戶和監控帳戶之間共用。共用的可觀測性資料可以包含 Amazon 中的指標 CloudWatch、Amazon CloudWatch Logs 中的日誌,以及 中的追蹤 AWS X-Ray。如需詳細資訊,請參閱可觀測性存取管理員文件。
此模式適用於應用程式或基礎設施在多個 中執行, AWS 帳戶 且需要常見位置以檢視日誌的使用者。它說明如何使用 Terraform 設定可觀測性存取管理員,以監控這些應用程式或基礎設施的狀態和運作狀態。您可以透過多種方式安裝此解決方案:
作為您手動設定的獨立 Terraform 模組
透過使用持續整合和持續交付 (CI/CD) 管道
透過與其他解決方案整合,例如 AWS Control Tower Account Factory for Terraform (AFT)
Epics 區段中的指示涵蓋手動實作。如需AFT安裝步驟,請參閱 GitHub 可觀測性 Access Manager
先決條件和限制
先決條件
系統或自動化管道中已安裝或參考的 Terraform
。(我們建議您使用最新版本 。) 您可以使用 做為中央監控帳戶的帳戶。其他帳戶會建立中央監控帳戶的連結,以檢視日誌。
(選用) 原始碼儲存庫 GitHub,例如 AWS CodeCommit Atlassian Bitbucket 或類似系統。如果您使用的是自動化 CI/CD 管道,則不需要原始程式碼儲存庫。
(選用) 建立提取請求 (PRs) 以進行程式碼檢閱和程式碼協同合作的許可 GitHub。
限制
Observability Access Manager 具有下列服務配額,無法變更。部署此功能之前,請考慮這些配額。如需詳細資訊,請參閱 CloudWatch 文件中的CloudWatch 服務配額。
來源帳戶連結:您可以將每個來源帳戶連結至最多五個監控帳戶。
接收器:您可以為 帳戶建立多個接收器,但每個 僅允許一個接收器 AWS 區域 。
除此之外:
必須在相同的 中建立接收器和連結 AWS 區域;它們不能是跨區域。
跨區域和跨帳戶監控
對於跨區域、跨帳戶監控,您可以選擇下列其中一個選項:
建立警示和指標的跨帳戶和跨區域 CloudWatch 儀表板。此選項不支援日誌和追蹤。
使用 Amazon OpenSearch Service 實作集中式記錄。
從所有租用戶帳戶為每個區域建立一個接收器,將指標推送至集中式監控帳戶 (如此模式所述),然後使用CloudWatch 指標串流將資料傳送至常見的外部目的地或第三方監控產品,例如 Datadog、Dynatrace、Sumo Logic、Splunk 或 New Relic。
架構
元件
CloudWatch 可觀測性 Access Manager 包含兩個主要元件,可啟用跨帳戶可觀測性:
接收可讓來源帳戶將可觀測性資料傳送至中央監控帳戶。接收器基本上為要連線的來源帳戶提供閘道連接。只能有一個接收器閘道或連線,而且多個帳戶可以連接到它。
每個來源帳戶都具有傳入閘道連接的連結,而可觀測性資料會透過此連結傳送。您必須建立接收器,才能從每個來源帳戶建立連結。
架構
下圖說明 Observability Access Manager 及其元件。

工具
AWS 服務
Amazon CloudWatch 可協助您 AWS 即時監控 AWS 資源的指標,以及您在 上執行的應用程式。
AWS Organizations 是一種帳戶管理服務,可協助您將多個 合併 AWS 帳戶 到您建立並集中管理的組織。
AWS Identity and Access Management (IAM) 透過控制誰經過身分驗證並獲授權使用,協助您安全地管理對 AWS 資源的存取。
工具
Terraform
是 的基礎設施做為程式碼 (IaC) 工具 HashiCorp ,可協助您建立和管理雲端和內部部署資源。 AWS Control Tower Account Factory for Terraform (AFT) 會設定 Terraform 管道,以協助您佈建和自訂 中的帳戶 AWS Control Tower。您可以選擇使用 AFT 來設定跨多個帳戶的大規模可觀測性存取管理員。
程式碼儲存庫
此模式的程式碼可在 GitHub 可觀測性 Access Manager
最佳實務
在 AWS Control Tower 環境中,將記錄帳戶標記為中央監控帳戶 (接收器)。
如果您有多個組織在 中擁有多個帳戶 AWS Organizations,建議您在組態政策中包含組織,而不是個別帳戶。如果您有少量帳戶,或帳戶不在接收組態政策中,您可以決定改為包含個別帳戶。
史詩
任務 | 描述 | 所需的技能 |
---|---|---|
複製儲存庫。 | 複製 GitHub 可觀測性存取管理員儲存庫:
| AWS DevOps、雲端管理員、AWS管理員 |
指定接收模組的屬性值。 | 在
如需詳細資訊,請參閱 AWS CloudFormation 文件中的 AWS::Oam::Sink。 | AWS DevOps、雲端管理員、AWS管理員 |
安裝接收器模組。 | 匯出 AWS 帳戶 您選取做為監控帳戶的 登入資料,並安裝可觀測性 Access Manager 接收器模組:
| AWS DevOps、雲端管理員、AWS管理員 |
任務 | 描述 | 所需的技能 |
---|---|---|
指定連結模組的屬性值。 | 在
如需詳細資訊,請參閱 AWS CloudFormation 文件中的 AWS::Oam::Link。 | AWS DevOps、雲端管理員、雲端架構師 |
安裝個別帳戶的連結模組。 | 匯出個別帳戶的登入資料,並安裝 Observability Access Manager 連結模組:
您可以為每個帳戶個別設定連結模組,或使用 AFT 來自動跨大量帳戶安裝此模組。 | AWS DevOps、雲端管理員、雲端架構師 |
任務 | 描述 | 所需的技能 |
---|---|---|
檢查狀態訊息。 |
在右側,您應該會看到狀態訊息 監控帳戶已啟用綠色核取記號。這表示監控帳戶具有可觀測性 Access Manager 接收,其他帳戶的連結將連接到該接收。 | |
核准 link-to-sink連線。 |
如需詳細資訊,請參閱 CloudWatch 文件中的將監控帳戶與來源帳戶連結。 | AWS DevOps、雲端管理員、雲端架構師 |
任務 | 描述 | 所需的技能 |
---|---|---|
檢視跨帳戶資料。 |
| AWS DevOps、雲端管理員、雲端架構師 |
任務 | 描述 | 所需的技能 |
---|---|---|
檢視來自其他帳戶的指標、儀表板、日誌、小工具和警示。 | 作為其他功能, 您可以與其他 帳戶共用 CloudWatch 指標、儀表板、日誌、小工具和警示。每個帳戶都使用名為 IAM的角色CloudWatchCrossAccountSharingRole 來存取此資料。 與中央監控帳戶具有信任關係的來源帳戶可以擔任此角色,並檢視來自監控帳戶的資料。 CloudWatch 提供建立角色的範例 CloudFormation 指令碼。選擇管理 d IAM 中的角色,在您要檢視資料的帳戶中執行此指令碼。
如需詳細資訊,請參閱 CloudWatch 文件中的在 中啟用跨帳戶功能 CloudWatch。 | AWS DevOps、雲端管理員、雲端架構師 |
任務 | 描述 | 所需的技能 |
---|---|---|
設定跨帳戶、跨區域存取。 | 在中央監控帳戶中,您可以選擇性地新增帳戶選擇器,以輕鬆地在帳戶之間切換並檢視其資料,而無需進行身分驗證。
如需詳細資訊,請參閱 CloudWatch 文件中的跨帳戶跨區域 CloudWatch 主控台。 | AWS DevOps、雲端管理員、雲端架構師 |
相關資源
CloudWatch 跨帳戶可觀測性 (Amazon CloudWatch 文件)
Amazon CloudWatch Observability Access Manager API參考 (Amazon CloudWatch 文件)
資源:aws_oam_sink
(Terraform 文件) 資料來源:aws_oam_link
(Terraform 文件) CloudWatchObservabilityAccessManager
(AWS Boto3 文件)