

# Systems Manager 퍼블릭 파라미터를 사용하여 최신 AMI 참조
<a name="finding-an-ami-parameter-store"></a>

AWS Systems Manager는 AWS에서 유지 관리하는 퍼블릭 AMI에 대한 퍼블릭 파라미터를 제공합니다. 인스턴스를 시작할 때 퍼블릭 파라미터를 사용하여 최신 AMI를 사용하고 있는지 확인할 수 있습니다. 예를 들어 퍼블릭 파라미터(`/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-arm64`)는 모든 리전에서 사용할 수 있으며 항상 특정 리전에서 arm64 아키텍처용 Amazon Linux 2023 AMI의 최신 버전을 가리킵니다.

퍼블릭 파라미터는 다음 경로에서 사용할 수 있습니다.
+ **Linux** – `/aws/service/ami-amazon-linux-latest`
+ **Windows** – `/aws/service/ami-windows-latest`

자세한 내용은 *AWS Systems Manager 사용자 가이드*의 [퍼블릭 파라미터 작업](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-public-parameters.html)을 참조하세요.

## Amazon Linux AMI 나열
<a name="list-ami-amazon-linux-latest"></a>

------
#### [ AWS CLI ]

**현재 AWS 리전에 있는 Linux AMI를 나열하려면**  
다음 [get-parameters-by-path](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-parameters-by-path.html) 명령을 사용합니다. `--path` 파라미터 값은 Linux AMI에만 해당됩니다.

```
aws ssm get-parameters-by-path \
    --path /aws/service/ami-amazon-linux-latest \
    --query "Parameters[].Name"
```

------
#### [ PowerShell ]

**현재 AWS 리전에 있는 Linux AMI를 나열하려면**  
[Get-SSMParametersByPath](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-SSMParametersByPath.html) cmdlet을 사용합니다.

```
Get-SSMParametersByPath `
    -Path "/aws/service/ami-amazon-linux-latest" | `
    Sort-Object Name | Format-Table Name
```

------

## Windows AMI 나열
<a name="list-ami-windows-latest"></a>

------
#### [ AWS CLI ]

**현재 AWS 리전에 있는 Windows AMI를 나열하려면**  
다음 [get-parameters-by-path](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-parameters-by-path.html) 명령을 사용합니다. `--path` 파라미터 값은 Windows AMI에만 해당됩니다.

```
aws ssm get-parameters-by-path \
    --path /aws/service/ami-windows-latest \
    --query "Parameters[].Name"
```

------
#### [ PowerShell ]

**현재 AWS 리전에 있는 Windows AMI를 나열하려면**  
[Get-SSMParametersByPath](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-SSMParametersByPath.html) cmdlet을 사용합니다.

```
Get-SSMParametersByPath `
    -Path "/aws/service/ami-windows-latest" | `
    Sort-Object Name | Format-Table Name
```

------

## 퍼블릭 파라미터를 사용하여 인스턴스 시작
<a name="launch-instance-public-parameter"></a>

인스턴스를 시작할 때 퍼블릭 파라미터를 지정하려면 다음 `resolve:ssm:public-parameter` 구문을 사용합니다. 여기서 `resolve:ssm`은 표준 접두사이고 `public-parameter`는 퍼블릭 파라미터의 경로와 이름입니다.

------
#### [ AWS CLI ]

**퍼블릭 파라미터를 사용하여 인스턴스를 시작하려면**  
[run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) 명령을 `--image-id` 옵션과 함께 사용합니다. 이 예에서는 최신 Amazon Linux 2023 AMI를 사용하여 인스턴스를 시작하기 위해 이미지 ID에 대한 Systems Manager 퍼블릭 파라미터를 지정합니다

```
--image-id resolve:ssm:/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-x86_64
```

------
#### [ PowerShell ]

**퍼블릭 파라미터를 사용하여 인스턴스를 시작하려면**  
`-ImageId` 파라미터와 함께 [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) cmdlet을 사용합니다. 이 예에서는 Windows Server 2022를 위한 최신 AMI를 사용하여 인스턴스를 시작하기 위해 이미지 ID에 대한 Systems Manager 퍼블릭 파라미터를 지정합니다.

```
-ImageId "resolve:ssm:/aws/service/ami-windows-latest/Windows_Server-2022-English-Full-Base"
```

------

Systems Manager 파라미터를 사용하는 추가 예는 [Query for the latest Amazon Linux AMI IDs Using AWS Systems Manager Parameter Store](https://aws.amazon.com/blogs/compute/query-for-the-latest-amazon-linux-ami-ids-using-aws-systems-manager-parameter-store/) 및 [Query for the Latest Windows AMI Using AWS Systems Manager Parameter Store](https://aws.amazon.com/blogs/mt/query-for-the-latest-windows-ami-using-systems-manager-parameter-store/)를 참조하세요.