2015-05-06 55 views
0

我們有大約10個不同的AWS賬戶,我正在內部構建一個應用程序來查看這些賬戶上的活動。活動由不同的節點發起終止,包括與每個賬戶相關的使用和成本。計劃在內部門戶上展示它。 這裏面臨的挑戰是我需要存儲並顯示從aws-sdk獲得的任何數據。 我需要關於建築這種平臺的一些建議,我希望數據儘可能實時。AWS架構

任何建議將是巨大的

回答

4

我認爲對於架構的最佳選擇是:無。原因是:你不需要它。使用CloudTrail報告活動以及開單費用。 AWS現在支持聯合帳戶,並且通過IAM,您可以輕鬆配置角色,只需查看所有帳戶的數據即可。

+0

不知道,如果你正確地理解我的問題,我們有一堆下有多個帳戶的每個節點account.By它是很難跟蹤的節點。我已經寫了一個應用程序,每天收集數據將所有aws基礎架構數據存儲在mysql數據庫中。你在10個賬戶下看到的相同的數據我在一個應用程序中顯示。唯一的區別是我根據團隊,產品對數據進行排序。現在我想讓它更實時而不是每天。 – user501307

+0

「跟蹤節點」是什麼意思? – MatteoSp

+0

通過存儲實時數據,在任何給定的時間,我都可以跟蹤有多少節點在某一天終止,停止或啓動。當我說軌道節點時,我的意思是像ELB,EC2,RDS等基礎設施的使用。我再次沒有尋找metrics.Just基礎設施列表正在使用。我能夠使用aws-sdk獲取這些數據,但是, d喜歡存儲它們,並在應用程序中實時顯示它們。例如,如果用戶啓動了EC2節點或RDS,我希望獲取該基礎結構的詳細信息並將其顯示在我的內部應用程序中。滯後不應該超過30到60分鐘 – user501307

1

看一看traildash。這是一個用於雲軌的多功能儀表板。其他評論是100%正確的,AWS已經提供了大部分內容,Traildash只是簡單地包裝一個漂亮的GUI。

0

不知道這個問題是否已經解決,但這裏是我的要求。

如果我說得對,這個問題是關於如何定期和自動監控多個賬戶的aws資源(ec2,s3等)。

以編程方式,我會建議有一個服務帳戶,並通過假設角色訪問所有其他帳戶的星形拓撲。通過這種方式,我們不需要爲本地的這些帳戶保留aws accessKey/secretKey,從而具有更好的安全性。

實施必須與在服務帳戶中創建的新角色/策略相關,該帳戶指定它可以承擔的accountId /角色列表,以及在允許讀取權限的其他每個帳戶中創建的新角色/策略到自己的資源。

供您參考,這裏是訪問EC2實例策略的一個例子:

服務帳戶策略:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
    "Sid": "", 
    "Effect": "Allow", 
    "Principal": { 
    "AWS": [ 
      "arn:aws:iam::ACCOUNT-ID-A:role/ROLE-A", 
      "arn:aws:iam::ACCOUNT-ID-B:role/ROLE-B」, 
      "arn:aws:iam::ACCOUNT-ID-C:role/ROLE-C」, 
      "arn:aws:iam::ACCOUNT-ID-D:role/ROLE-D」, 
      "arn:aws:iam::ACCOUNT-ID-E:role/ROLE-E」, 
    ] 
    }, 
    "Action": "sts:AssumeRole" 
    } 
    ] 
} 

正常的帳戶策略:

{ 
    "Version": "2012-10-17", 
    "Statement": { 
    "Effect": "Allow", 
    "Action": 「ec2:DescribeInstances", 
    "Resource": 「arn:aws:ec2:Account-ID-A:instance/*" 
} 
0

AWS雲線索是爲您的要求提供最佳選擇。將所有云跟蹤日誌存儲在S3上並將其提取到您想要顯示的地方。 您可以使用Graylog類似日誌聚合工具來根據您的要求提供格柵用戶體驗和各種儀表板。

希望這有助於...

感謝 基蘭