什麼是標籤? - 標記 AWS 資源的最佳實務

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

什麼是標籤?

標籤是套用至資源的索引鍵值配對,以保存有關該資源的中繼資料。每個標籤都是由鍵和可選值組成的標籤。並非所有服務和資源類型目前都支援標籤 (請參閱支援 Resource Groups 標記 API 的服務)。其他服務可能會透過自己的 API 支援標籤。標籤不會加密,不應用於儲存敏感資料 (例如個人識別資訊 (PII)。

使用者使用AWS CLI、API 或所建立並套用至AWS資源的標籤稱為使AWS Management Console用者定義的標籤。許多AWS服務 (例如 AWS CloudFormation Elastic Beanstalk 和自動 Auto Scaling) 會自動為其建立和管理的資源指派標籤。這些鍵被稱為AWS生成的標籤,並且通常以前綴aws。此前置詞不能用於使用者定義的標籤鍵中。

可新增至AWS資源的使用者定義標籤數目有使用需求和限制。如需詳細資訊,請參閱AWS一般參考指南中的標籤命名限制和需求。 AWS產生的標籤不會計入這些使用者定義的標籤限制。

表 1 — 使用者定義標籤鍵和值的範例

執行個體 ID 標籤鍵 標籤值
i-01234567abcdef89a CostCenter 98765
Stack Test
我 -12345678abcdef90 CostCenter 98765
Stack Production

表 2 — AWS 產生的標籤範例

AWS產生的標籤鍵 理由
aws:ec2spot:fleet-request-id 識別啟動執行個體的 Amazon EC2 競價型執行個體請求
aws:cloudformation:stack-name 標識創建資源的AWS CloudFormation堆棧
lambda-console:blueprint 識別用作AWS Lambda函數範本的藍圖
elasticbeanstalk:environment-name 識別建立資源的應用程式
aws:servicecatalog:provisionedProductArn 佈建產品亞馬遜資源名稱 (ARN)
aws:servicecatalog:productArn 從中啟動佈建產品的產品 ARN

AWS產生的標籤形成命名空間。例如,在範AWS CloudFormation本中,您可以定義一組要一起部署的資源stack,其中stack-name是您指派用來識別它的描述性名稱。如果您檢查一個密鑰aws:cloudformation:stack-name,則可以看到用於範圍參數的命名空間使用三個元素:aws 組織,cloud form 服務以及堆棧命名參數。

使用者定義的標籤也可以使用命名空間,並建議使用組織識別碼作為前置詞。這可協助您快速識別標籤是否是受管理結構描述中的某個項目,或是您在環境中使用的服務或工具所定義的項目。

在AWS白皮書上建立您的雲端基礎中,我們建議您使用一組應該實作的標籤。不同的企業很可能會有不同的允許模式和給定標籤的不同列表。查看表 3 中的例子:

表 3-相同的標籤鍵,不同的值驗證規則

組織

標籤鍵 標籤值驗證 標籤值範例
公司 A CostCenter 5432, 5422, 5499 5432
B 公司資訊 CostCenter ABC* ABC123

如果這兩個結構描述位於不同的組織中,則標籤衝突沒有問題。但是,如果這兩個環境合併,那麼命名空間可能會發生衝突,並且驗證變得更加複雜。這種情況似乎不太可能,但是企業被併購或合併,還有其他情況,例如與託管服務提供商合作的客戶,遊戲發行商或風險投資業務,其中來自不同組織的帳戶是共享AWS組織的一部分。使用商業名稱作為前綴來定義唯一命名空間,可以避免這些挑戰,如表 4 所示:

表 4 — 在標籤索引鍵中使用命名空間

組織

標籤鍵 標籤值驗證 標籤值範例
公司 A company-a:CostCenter 5432, 5422, 5499 5432
B 公司資訊 company-b:CostCenter ABC* ABC123

在企業被定期收購和剝離的大型和複雜的組織中,這種情況會更頻繁地發生。隨著新收購的流程和實踐在更廣泛的團體中協調,這種情況得到解決。擁有不同的命名空間會有所幫助,因為可以報告舊標籤的使用,並與相關團隊聯繫以採用新的模式。命名空間也可以用來指示範圍,或代表與組織擁有者對齊的使用案例或責任領域。

表 5 — 標籤索引鍵內的範圍或使用案例範圍的範例

使用案例 標籤鍵 理由 允許值
資料分類 example-inc:info-sec:data-classification 信息安全定義的數據分類集 sensitive, company-confidential, customer-identifiable
操作 example-inc:dev-ops:environment 實作測試與開發環境的排程 development, staging, quality-assurance, production
災難復原 example-inc:disaster-recovery:rpo 定義資源的復原點目標 (RPO) 6h, 24h
成本分配 example-inc:cost-allocation:business-unit 財務團隊需要對每個團隊的使用情況和支出進行成本報告 corporate, recruitment, support, engineering

標籤很簡單,易於使用。鍵和標籤的值都是可變長度字符串,並且可以支持寬字符集。如需有關長度和字元集的詳細資訊,請參閱AWS一般參考中的標記AWS資源。標籤區分大小寫,這意味著costCentercostcenter是不同的標籤鍵。在不同國家/地區,單字的拼字可能會有所不同,因此可能會影響您的按鍵。例如,在美國,可能會將金鑰定義為costcenter,但在英國costcentre可能是首選。從資源標記的角度來看,這些是不同的鍵。將拼字、大小寫和標點符號定義為標記策略的一部分。使用這些定義做為建立或管理資源之任何人的參考。本主題將在下一節中更詳細地討論建立您的標記策略