問題公有參數 - AWS Systems Manager

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

問題公有參數

您可以使用 Parameter Store 主控台或 AWS Command Line Interface來搜尋公有參數。

公有參數名稱以 aws/service/list 開頭。名稱的下一個部分對應於擁有該參數的服務。

以下是一些提供公有參數的服務清單:

  • ami-amazon-linux-latest

  • ami-windows-latest

  • ec2-macos

  • appmesh

  • aws-for-fluent-bit

  • bottlerocket

  • canonical

  • cloud9

  • datasync

  • debian

  • ecs

  • eks

  • freebsd

  • global-infrastructure

  • marketplace

  • storagegateway

並非所有公用參數都會發佈到每個 AWS 區域。

使用 Parameter Store 主控台查找公有參數

您的和中必須至少有一個參數 AWS 帳戶 , AWS 區域 才能使用主控台搜尋公用參數。

若要使用主控台查找公有參數
  1. 在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/

  2. 在導覽窗格中,選擇 Parameter Store

  3. 選擇 Public parameters (公有參數) 索引標籤。

  4. 選擇 Select a service (選取服務) 下拉式選單。選擇您要使用其參數的服務。

  5. (選擇性) 在搜尋列中輸入更多資訊,以篩選所選服務所擁有的參數。

  6. 選擇您要使用的公有參數。

使用尋找公用參數 AWS CLI

使用 describe-parameters 以發現公有參數。

使用 get-parameters-by-path 以獲得 /aws/service/list 下列出的服務的實際路徑。若要獲得服務的路徑,請從路徑中刪除 /list。例如,/aws/service/list/ecs 會變成 /aws/service/ecs

若要在 Parameter Store 中擷取不同服務擁有的公有參數清單,請執行以下命令。

aws ssm get-parameters-by-path --path /aws/service/list

該命令會傳回相關資訊,如以下所示。此範例輸出因空間不足已被截斷。

{
    "Parameters": [
        {
            "Name": "/aws/service/list/ami-al-latest",
            "Type": "String",
            "Value": "/aws/service/ami-al-latest/",
            "Version": 1,
            "LastModifiedDate": "2021-01-29T10:25:10.902000-08:00",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/list/ami-al-latest",
            "DataType": "text"
        },
        {
            "Name": "/aws/service/list/ami-windows-latest",
            "Type": "String",
            "Value": "/aws/service/ami-windows-latest/",
            "Version": 1,
            "LastModifiedDate": "2021-01-29T10:25:12.567000-08:00",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/list/ami-windows-latest",
            "DataType": "text"
        },
        {
            "Name": "/aws/service/list/aws-storage-gateway-latest",
            "Type": "String",
            "Value": "/aws/service/aws-storage-gateway-latest/",
            "Version": 1,
            "LastModifiedDate": "2021-01-29T10:25:09.903000-08:00",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/list/aws-storage-gateway-latest",
            "DataType": "text"
        },
        {
            "Name": "/aws/service/list/global-infrastructure",
            "Type": "String",
            "Value": "/aws/service/global-infrastructure/",
            "Version": 1,
            "LastModifiedDate": "2021-01-29T10:25:11.901000-08:00",
            "ARN": "arn:aws:ssm:us-east-2::parameter/aws/service/list/global-infrastructure",
            "DataType": "text"
        }
    ]
}

如果您想要檢視特定服務所擁有的參數,請從執行先前命令後產生的清單中選擇服務。然後,使用所需服務的名稱進行 get-parameters-by-path 呼叫。

例如:/aws/service/global-infrastructure。路徑可能是單層級 (只呼叫與給定的確切值匹配的參數) 或遞迴 (包含您給定的路徑以外的路徑中的元素)。

注意

不支援所有區域中的查詢/aws/service/global-infrastructure路徑。如需相關資訊,請參閱 呼叫區域、端點 AWS 服務、可用區域、本機區域和 Wavelength 區域的公用參數

對於您指定的服務,如果沒有傳回結果,則應新增 --recursive 標誌並重新執行命令。

aws ssm get-parameters-by-path --path /aws/service/global-infrastructure

這將傳回 global-infrastructure 擁有的所有參數。以下是範例。

{
    "Parameters": [
        {
            "Name": "/aws/service/global-infrastructure/current-region",
            "Type": "String",
            "LastModifiedDate": "2019-06-21T05:15:34.252000-07:00",
            "Version": 1,
            "Tier": "Standard",
            "Policies": [],
            "DataType": "text"
        },
        {
            "Name": "/aws/service/global-infrastructure/version",
            "Type": "String",
            "LastModifiedDate": "2019-02-04T06:59:32.875000-08:00",
            "Version": 1,
            "Tier": "Standard",
            "Policies": [],
            "DataType": "text"
        }
    ]
}

透過使用 Option:BeginsWith 篩選條件,您也可以檢視特定服務所擁有的參數。

aws ssm describe-parameters --parameter-filters "Key=Name, Option=BeginsWith, Values=/aws/service/ami-amazon-linux-latest"

該命令會傳回相關資訊,如以下所示。此範例輸出因空間不足已被截斷。

{
    "Parameters": [
        {
            "Name": "/aws/service/ami-amazon-linux-latest/amzn-ami-hvm-x86_64-ebs",
            "Type": "String",
            "LastModifiedDate": "2021-01-26T13:39:40.686000-08:00",
            "Version": 25,
            "Tier": "Standard",
            "Policies": [],
            "DataType": "text"
        },
        {
            "Name": "/aws/service/ami-amazon-linux-latest/amzn-ami-hvm-x86_64-gp2",
            "Type": "String",
            "LastModifiedDate": "2021-01-26T13:39:40.807000-08:00",
            "Version": 25,
            "Tier": "Standard",
            "Policies": [],
            "DataType": "text"
        },
        {
            "Name": "/aws/service/ami-amazon-linux-latest/amzn-ami-hvm-x86_64-s3",
            "Type": "String",
            "LastModifiedDate": "2021-01-26T13:39:40.920000-08:00",
            "Version": 25,
            "Tier": "Standard",
            "Policies": [],
            "DataType": "text"
        }
    ]
}
注意

使用 Option=BeginsWith 時,傳回的參數可能會不同,因為它使用了不同的搜尋模式。