

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon EC2의 AL2 Amazon EC2
<a name="ec2"></a>

**참고**  
 AL2는 더 이상 Amazon Linux의 최신 버전이 아닙니다. AL2023은 AL2의 후속 버전입니다. 자세한 내용은 [AL2023 사용 설명서의 AL2와 AL2023 비교](https://docs.aws.amazon.com/linux/al2023/ug/compare-with-al2.html) [AL2023 ](https://docs.aws.amazon.com/linux/al2023/ug/) [및 AL2023의 패키지 변경 AL2023](https://docs.aws.amazon.com/linux/al2023/release-notes/compare-packages.html) 사항 목록을 참조하세요.

 

**Topics**
+ [AL2 AMI를 사용하여 Amazon EC2 인스턴스 시작 AL2](#launch-ec2-instance)
+ [Systems Manager를 사용하여 최신 AL2 AMI 찾기](#find-latest-al2-using-systems-manager)
+ [Amazon EC2 인스턴스에 연결](#connect-to-amazon-linux-limits-ec2)
+ [AL2 AMI 부팅 모드](#default-boot-mode-al2)
+ [패키지 리포지토리](#package-repository)
+ [AL2에서 cloud-init 사용](amazon-linux-cloud-init.md)
+ [AL2 인스턴스 구성](configure-ec2-instance.md)
+ [사용자 제공 커널](UserProvidedKernels.md)
+ [AL2 AMI 릴리스 알림](linux-ami-notifications.md)
+ [AL2 MATE 데스크톱 연결 구성](amazon-linux-ami-mate.md)
+ [AL2 자습서](al2-tutorials.md)

## AL2 AMI를 사용하여 Amazon EC2 인스턴스 시작 AL2
<a name="launch-ec2-instance"></a>

AL2 AMI를 사용하여 Amazon EC2 인스턴스를 시작할 수 있습니다. AL2 자세한 내용은 [1단계: 인스턴스 시작을](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/EC2_GetStarted.html#ec2-launch-instance) 참조하세요.

## Systems Manager를 사용하여 최신 AL2 AMI 찾기
<a name="find-latest-al2-using-systems-manager"></a>

Amazon EC2는 인스턴스를 시작할 때 사용할 수 AWS 있는에서 유지 관리하는 AWS Systems Manager 퍼블릭 AMIs에 대한 퍼블릭 파라미터를 제공합니다. 예를 들어 EC2-provided 파라미터`/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-default-hvm-x86_64-gp2`는 모든 리전에서 사용할 수 있으며 항상 지정된 리전에서 AL2 AMI의 최신 버전을 가리킵니다.

를 사용하여 최신 AL2023 AMI를 찾으려면 AL2023 시작하기를 AWS Systems Manager참조하세요. [ AL2023](https://docs.aws.amazon.com/linux/al2023/ug/get-started.html)

Amazon EC2 AMI 퍼블릭 파라미터는 다음 경로에서 사용할 수 있습니다.

`/aws/service/ami-amazon-linux-latest`

다음 AWS CLI 명령을 실행하여 현재 AWS 리전의 모든 Amazon Linux AMIs 목록을 볼 수 있습니다.

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

**퍼블릭 파라미터를 사용하여 인스턴스를 시작하려면**  
다음 예제에서는 EC2-provided 퍼블릭 파라미터를 사용하여 최신 AL2 AMI를 사용하여 `m5.xlarge` 인스턴스를 시작합니다.

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

이 예에는 `--count` 및 `--security-group` 파라미터가 포함되어 있지 않습니다. `--count`의 기본값은 1입니다. 기본 VPC와 기본 보안 그룹이 있는 경우 이들이 사용됩니다.

```
aws ec2 run-instances 
    --image-id resolve:ssm:/aws/service/ami-amazon-linux-latest/amzn2-ami-kernel-default-hvm-x86_64-gp2 
    --instance-type m5.xlarge 
    --key-name MyKeyPair
```

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

**Amazon Linux 2 AMI 이름 이해**  
Amazon Linux 2 AMI 이름은 다음 이름 지정 체계를 사용합니다.

`amzn2-ami-[minimal-][kernel-{5.10,default,4.14}]-hvm-{x86_64,aarch64}-{ebs,gp2}`
+ **최소** AMIs 이미지 크기를 줄이기 위해 최소화된 사전 설치된 패키지 세트가 함께 제공됩니다.
+ **커널-VERSION**은 각 AMI에 사전 설치된 커널 버전을 결정합니다.
  + `kernel-5.10`는 Linux 커널 버전 5.10을 선택합니다. *AL2에 권장되는 커널 버전입니다.*
  + `kernel-default`는 AL2에 권장되는 기본 커널을 선택합니다. 커널 5.10의 별칭입니다.
  + `kernel-4.14`는 Linux 커널 버전 4.14를 선택합니다. *이는 이전 AMI 릴리스와의 호환성을 위해서만 제공됩니다. 새 인스턴스 시작에는이 버전을 사용하지 마십시오. 이 AMI가 지원되지 않을 것으로 예상합니다.*
  + 특정 커널을 참조하지 않고 특별한 AMI 이름 집합이 존재합니다. 이러한 AMIs는 커널 4.14의 별칭입니다. *이러한 AMIs는 이전 AMI 릴리스와의 호환성을 위해서만 제공됩니다. 새 인스턴스 시작에는이 AMI 이름을 사용하지 마십시오. 이러한 AMIs 것으로 예상합니다.*
+ **x86\$164/aarch64**는 AMI를 실행할 CPU 플랫폼을 결정합니다. Intel 및 AMD 기반 EC2 인스턴스의 경우 x86\$164를 선택합니다. EC2 Graviton 인스턴스에 대해 aarch64를 선택합니다.
+ **ebs/gp2**는 각 AMI를 제공하는 데 사용되는 EBS 볼륨 유형을 결정합니다. 참조는 [EBS 볼륨 유형을 참조하세요](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html). *항상 gp2를 선택합니다.*

## Amazon EC2 인스턴스에 연결
<a name="connect-to-amazon-linux-limits-ec2"></a>

SSH 및 AWS Systems Manager Session Manager EC2 Instance Connect를 포함하여 Amazon Linux 인스턴스에 연결하는 방법에는 여러 가지가 있습니다. 자세한 내용은 *Amazon EC2 사용 설명서*의 [Linux 인스턴스에 연결](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-linux-instance.html)을 참조하세요.

**SSH 사용자 및 **sudo****  
Amazon Linux는 기본적으로 원격 `root` 보안 쉘(SSH)을 허용하지 않습니다. 또한 암호 인증은 무차별 대입 공격을 방지하기 위해 비활성화됩니다. Amazon Linux 인스턴스에 대해 SSH 로그인을 사용하려면 시작 시 인스턴스에 키 페어를 제공해야 합니다. 또한 SSH 액세스를 허용하도록 인스턴스를 시작하는 데 사용되는 보안 그룹을 설정해야 합니다. 기본적으로 SSH를 사용하여 원격으로 로그인할 수 있는 유일한 계정은 입니다`ec2-user`. 이 계정에는 **sudo** 권한도 있습니다. 원격 `root` 로그인을 활성화하는 경우 키 페어와 보조 사용자를 사용하는 것보다 안전하지 않다는 점에 유의하세요.

## AL2 AMI 부팅 모드
<a name="default-boot-mode-al2"></a>

AL2 AMIs에는 부팅 모드 파라미터가 설정되어 있지 않습니다. AL2 AMIs에서 시작된 인스턴스는 인스턴스 유형의 기본 부팅 모드 값을 따릅니다. 자세한 내용은 *Amazon EC2 사용 설명서*의 [부팅 모드를](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) 참조하세요.

## 패키지 리포지토리
<a name="package-repository"></a>

이 정보는 AL2에 적용됩니다. AL2023에 대한 자세한 내용은 Amazon Linux [2023 사용 설명서의 AL2023에서 패키지 및 운영 체제 업데이트 관리를](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) 참조하세요. ** 

AL2 및 AL1은 각 Amazon EC2 AWS 리전에서 호스팅되는 온라인 패키지 리포지토리와 함께 사용하도록 설계되었습니다. 리포지토리는 **yum** 업데이트 도구를 사용하여 액세스되며 모든 리전에서 사용할 수 있습니다. 각 리전에서 리포지토리를 호스팅하면 데이터 전송 요금 없이 데이터를 신속히 배포할 수 있습니다.

**중요**  
AL1의 마지막 버전은 2023년 12월 31일에 EOL에 도달했으며 2024년 1월 1일부터 보안 업데이트 또는 버그 수정을 받지 않습니다. 자세한 내용은 [Amazon Linux AMI 지원 종료](https://aws.amazon.com//blogs/aws/update-on-amazon-linux-ami-end-of-life/)를 참조하세요.

인스턴스에 대한 데이터 또는 사용자 지정을 보존할 필요가 없는 경우 현재 AL2 AMI를 사용하여 새 인스턴스를 시작할 수 있습니다. 인스턴스에 대한 데이터 또는 사용자 지정을 보존해야 하는 경우 Amazon Linux 패키지 리포지토리를 통해 해당 인스턴스를 유지할 수 있습니다. 이러한 리포지토리에는 업데이트된 모든 패키지가 포함되어 있습니다. 실행 중인 인스턴스에 이러한 업데이트를 적용하도록 선택할 수 있습니다. 이전 버전의 AMI 및 업데이트 패키지는 새 버전이 릴리스되더라도 계속 사용할 수 있습니다.

**참고**  
Amazon EC2 인스턴스에서 인터넷 액세스 없이 패키지를 업데이트하고 설치하려면 [AL1, AL2 또는 AL2023을 실행하는 Amazon EC2 인스턴스에서 인터넷 액세스 없이 yum을 업데이트하거나 패키지를 설치하려면 어떻게 해야 하나요?를 참조하세요](https://repost.aws/knowledge-center/ec2-al1-al2-update-yum-without-internet).

패키지를 설치하려면 다음 명령을 사용합니다.

```
[ec2-user ~]$ sudo yum install package
```

필요한 애플리케이션이 Amazon Linux에 없는 경우 Amazon Linux 인스턴스에 해당 애플리케이션을 설치하면 됩니다. Amazon Linux는 yum 패키지 관리에 RPMs 및를 사용하며, 이는 새 애플리케이션을 설치하는 가장 직접적인 방법일 수 있습니다. 중앙 Amazon Linux 리포지토리에는 사용할 수 있는 애플리케이션이 많으므로 이곳에서 애플리케이션을 사용할 수 있는지부터 확인해야 합니다. 여기에서 이러한 애플리케이션을 Amazon Linux 인스턴스에 추가할 수 있습니다.

애플리케이션을 실행 중인 Amazon Linux 인스턴스에 업로드하려면 **scp** 또는 **sftp**를 사용하고 인스턴스에 로그인하여 애플리케이션을 구성합니다. 또한 기본 제공된 cloud-init 패키지의 **PACKAGE\$1SETUP** 작업을 사용하여 인스턴스 시작 중에 애플리케이션을 업로드할 수도 있습니다. 자세한 내용은 [AL2에서 cloud-init 사용](amazon-linux-cloud-init.md) 섹션을 참조하세요.

### 보안 업데이트
<a name="security-updates"></a>

보안 업데이트는 패키지 리포지토리를 사용하여 제공됩니다. 보안 업데이트와 업데이트된 AMI 보안 알림은 모두 [Amazon Linux 보안 센터에](https://alas.aws.amazon.com) 게시됩니다. AWS 보안 정책에 대한 자세한 내용을 찾아보거나 보안 문제를 보고하려면 [AWS 클라우드 보안](https://aws.amazon.com/security/)을 참조하세요.

AL1 및 AL2는 시작 시 중요하거나 중요한 보안 업데이트를 다운로드하고 설치하도록 구성됩니다. 커널 업데이트는 이 구성에 포함되지 않습니다.

AL2023에서는이 구성이 AL1 및 AL2에 비해 변경되었습니다. AL2023의 보안 업데이트에 대한 자세한 내용은 Amazon Linux 2023 사용 설명서의 [보안 업데이트 및 기능을](https://docs.aws.amazon.com/linux/al2023/ug/security-features.html) 참조하세요. ** 

시작 후에는 사용 사례를 위해 필수 업데이트를 설치하는 것이 좋습니다. 예를 들어 시작 시 모든 업데이트(보안 업데이트뿐만 아니라)를 적용하거나 각 업데이트를 평가하고 시스템에 적용되는 업데이트만 적용할 수 있습니다. 다음과 같은 cloud-init 설정 `repo_upgrade`를 사용하여 이를 제어합니다. 다음 cloud-init 구성 코드 조각은 인스턴스 초기화에 전달하는 사용자 데이터 텍스트의 설정을 변경하는 방법을 보여 줍니다.

```
#cloud-config
repo_upgrade: security
```

 `repo_upgrade`에 가능한 값은 다음과 같습니다.

`critical`  
대기 중인 심각한 보안 업데이트를 적용합니다.

`important`  
대기 중인 심각하거나 중요한 보안 업데이트를 적용합니다.

`medium`  
대기 중인 심각하거나 중요하거나 심각도가 보통인 보안 업데이트를 적용합니다.

`low`  
심각도가 낮은 보안 업데이트를 포함하여 대기 중인 보안 업데이트를 모두 적용합니다.

`security`  
Amazon에서 보안 업데이트로 표시하는 대기 중인 중요하거나 심각한 업데이트를 적용합니다.

`bugfix`  
Amazon에서 버그 수정 사항으로 표시하는 업데이트를 적용합니다. 버그 수정 사항은 대규모 업데이트 세트이며 보안 업데이트와 사소한 기타 버그에 대한 수정 사항을 포함합니다.

`all`  
분류와 관계 없이 해당되는 모든 업데이트를 적용합니다.

`none`  
시작 시 인스턴스에 어떠한 업데이트도 적용하지 마세요.

**Note**  
Amazon Linux는 업데이트를 로 표시하지 않습니다`bugfix`. Amazon Linux에서 비보안 관련 업데이트를 적용하려면를 사용합니다`repo_upgrade: all`.

`repo_upgrade`에 대한 기본 설정은 security입니다. 즉, 사용자 데이터에 다른 값을 지정하지 않은 경우 기본적으로 Amazon Linux는 해당 시점에 설치된 모든 패키지에 대해 시작 시 보안 업그레이드를 수행합니다. 또한 Amazon Linux는 로그인 시 `/etc/motd` 파일을 사용하여 사용 가능한 업데이트 수를 나열하는 방법으로 설치된 패키지에 대한 모든 업데이트를 사용자에게 알립니다. 이러한 업데이트를 설치하려면 인스턴스에서 **sudo yum upgrade**를 실행해야 합니다.

### 리포지토리 구성
<a name="repository-config"></a>

AL1 및 AL2의 경우 AMIs는 보안 업데이트를 제외하고 AMI가 생성된 시점에 사용 가능한 패키지의 스냅샷입니다. 원래 AMI에 없지만 런타임에 설치된 모든 패키지는 사용 가능한 최신 버전이 됩니다. AL2에 사용할 수 있는 최신 패키지를 가져오려면를 실행합니다**yum update -y**.

**문제 해결 도움말**  
예를 들어 nano 인스턴스 유형(예: `t3.nano`)에서 **yum update** 실행 중 `cannot allocate memory` 오류가 발생하는 경우 업데이트를 활성화하기 위해 스왑 공간을 할당해야 할 수 있습니다.

AL2023의 경우 리포지토리 구성이 AL1 및 AL2에 비해 변경되었습니다. AL2023 리포지토리에 대한 자세한 내용은 [운영 체제 및 패키지 업데이트 관리](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html)를 참조하세요.

AL2023까지의 버전에서는 Amazon Linux의 한 마이너 버전에서 다음 버전으로의 연속 업데이트 흐름, 즉 *롤링 릴리스*를 제공하도록 구성되었습니다. 가장 좋은 방법은 이전 AMI를 시작하고 업데이트를 적용하는 대신 AMI를 사용 가능한 최신 AMIs로 업데이트하는 것입니다.

AL1에서 AL2로 또는 AL2에서 AL2023으로 등 주요 Amazon Linux 버전 간에는 현재 위치 업그레이드AL2가 지원되지 않습니다. 자세한 내용은 [Amazon Linux 가용성](what-is-amazon-linux.md#amazon-linux-availability) 단원을 참조하십시오.