

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

# 를 사용하여 기존 인스턴스에서 Auto Scaling 그룹 생성 AWS CLI
<a name="create-asg-from-instance"></a>

**중요**  
시작 구성은 시작 구성에서 시작 템플릿으로 아직 마이그레이션하지 않은 고객을 위해 제공하고 있습니다. Auto Scaling 그룹을 시작 템플릿으로 마이그레이션하는 데 대한 자세한 설명은 [Auto Scaling 그룹을 시작 템플릿으로 마이그레이션](migrate-to-launch-templates.md)을 참조하세요.

Auto Scaling 그룹을 처음 생성하는 경우, 콘솔을 사용하여 기존 EC2 인스턴스에서 시작 템플릿을 생성하는 것이 좋습니다. 그런 다음 시작 템플릿을 사용하여 새 Auto Scaling 그룹을 생성합니다. 이 절차는 [Amazon EC2 시작 마법사를 사용하여 Auto Scaling 그룹 생성](create-asg-ec2-wizard.md) 섹션을 참조하세요.

다음 절차에서는 다른 인스턴스를 시작하기 위한 기반으로 사용할 기존 인스턴스를 지정하여 Auto Scaling 그룹을 생성하는 방법을 보여줍니다. EC2 인스턴스를 생성하려면 Amazon Machine Image(AMI) ID, 인스턴스 유형, 키 페어 및 보안 그룹 등 여러 파라미터가 필요합니다. 이러한 모든 정보는 크기 조정이 필요할 때 사용자를 대신하여 Amazon EC2 Auto Scaling에서 인스턴스를 시작하는 데 사용됩니다. 이 정보는 시작 템플릿 또는 시작 구성에 저장됩니다.

기존 인스턴스를 사용하면 Amazon EC2 Auto Scaling이 동시에 생성된 시작 구성에 근거하여 인스턴스를 시작하는 Auto Scaling 그룹을 생성합니다. 새 시작 구성은 Auto Scaling 그룹과 이름이 동일하며 식별된 인스턴스의 특정 구성 세부 정보를 포함합니다.

다음 구성 세부 정보가 식별된 인스턴스에서 시작 구성으로 복사됩니다.
+ AMI ID
+ 인스턴스 유형
+ 키 페어
+ 보안 그룹
+ IP 주소 유형(퍼블릭 또는 프라이빗)
+ IAM 인스턴스 프로파일(해당하는 경우)
+ 모니터링(true 또는 false)
+ EBS 최적화(true 또는 false)
+ 테넌시 설정(VPC에서 시작하는 경우, 공유 또는 전용)
+ 커널 ID 및 RAM 디스크 ID(해당되는 경우)
+ 사용자 데이터(지정된 경우) 
+ 스팟 (최고) 가격

VPC 서브넷 및 가용성 영역이 식별된 인스턴스에서 Auto Scaling 그룹의 자체 리소스 정의로 복사됩니다.

식별된 인스턴스가 배치 그룹에 있는 경우, 새 Auto Scaling 그룹은 식별된 인스턴스와 동일한 배치 그룹으로 인스턴스를 시작합니다. 시작 구성 설정에서는 배치 그룹을 지정할 수 없으므로 배치 그룹이 새 Auto Scaling 그룹의 `PlacementGroup` 속성에 복사됩니다.

다음 구성 세부 정보는 식별된 인스턴트에서 복사되지 않습니다.
+ 스토리지: 블록 디바이스(EBS 볼륨 및 인스턴스 스토어 볼륨)는 식별된 인스턴스에서 복사되지 않습니다. 대신 AMI 생성의 일부로 생성된 블록 디바이스 매핑에 따라 사용되는 디바이스가 결정됩니다.
+ 네트워크 인터페이스 수: 식별된 인스턴스에서 네트워크 인터페이스가 복사되지 않습니다. 대신 Amazon EC2 Auto Scaling은 기본 설정을 사용하여 기본 네트워크 인터페이스(eth0)인 하나의 네트워크 인터페이스를 생성합니다.
+ 인스턴스 메타데이터 옵션: 액세스 가능한 메타데이터, 메타데이터 버전 및 토큰 응답 홉 제한 설정은 식별된 인스턴스에서 복사되지 않습니다. 대신 Amazon EC2 Auto Scaling은 기본 설정을 사용합니다. 자세한 설명은 [인스턴스 메타데이터 옵션 구성](create-launch-config.md#launch-configurations-imds) 섹션을 참조하세요.
+ 로드 밸런서: 식별된 인스턴스가 하나 이상의 로드 밸런서에 등록되어 있으면 로드 밸런서에 대한 정보가 새 Auto Scaling 그룹의 로드 밸런서 또는 대상 그룹 속성에 복사되지 않습니다.
+ 태그: 식별된 인스턴스에 태그가 있는 경우, 해당 태그가 새 Auto Scaling 그룹의 `Tags` 속성에 복사되지 않습니다.

## 사전 조건
<a name="create-asg-from-instance-prerequisites"></a>

EC2 인스턴스는 다음 기준을 충족해야 합니다.
+ 인스턴스가 다른 오토 스케일링의 구성원이 아닙니다.
+ 인스턴스는 `running` 상태에 있습니다.
+ 인스턴스를 시작할 때 사용된 AMI가 항상 있어야 합니다.

## EC2 인스턴스(AWS CLI)에서 Auto Scaling 그룹 생성
<a name="create-asg-from-instance-aws-cli"></a>

다음 절차에서는 CLI 명령을 사용하여 EC2 인스턴스에서 Auto Scaling 그룹을 생성하는 방법을 보여줍니다.

이 절차에서는 인스턴스를 Auto Scaling 그룹에 추가하지 않습니다. 연결할 인스턴스의 경우, Auto Scaling 그룹이 생성된 후 [attach-instances](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/attach-instances.html) 명령을 실행해야 합니다.

시작하기 전에 Amazon EC2 콘솔 또는 [describe-instances](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/describe-instances.html) 명령을 사용하여 EC2 인스턴스의 ID를 확인합니다.

**현재 인스턴스를 템플릿으로 사용하는 방법**
+ [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)명령을 사용하여 EC2 인스턴스 `i-123456789abcdefg0`에서 Auto Scaling 그룹 `my-asg-from-instance`를 생성합니다.

  ```
  aws autoscaling create-auto-scaling-group --auto-scaling-group-name {{my-asg-from-instance}} \
    --instance-id {{i-123456789abcdefg0}} --min-size {{1}} --max-size {{2}} --desired-capacity {{2}}
  ```

**Auto Scaling 그룹에서 인스턴스를 시작했는지 확인하려면**
+ [describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html) 명령을 사용하여 Auto Scaling 그룹이 성공적으로 생성되었는지 확인합니다.

  ```
  aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name {{my-asg-from-instance}}
  ```

  다음 예의 응답은 해당 그룹의 원하는 용량이 2이고 그룹에 실행 중인 인스턴스가 2개이며 시작 구성의 이름이 `my-asg-from-instance`임을 보여 줍니다.

  ```
  {
    "AutoScalingGroups":[
      {
        "AutoScalingGroupName":"my-asg-from-instance",
        "AutoScalingGroupARN":"{{arn}}",
        "LaunchConfigurationName":"my-asg-from-instance",
        "MinSize":1,
        "MaxSize":2,
        "DesiredCapacity":2,
        "DefaultCooldown":300,
        "AvailabilityZones":[
          "us-west-2a"
        ],
        "LoadBalancerNames":[],
        "TargetGroupARNs":[],
        "HealthCheckType":"EC2",
        "HealthCheckGracePeriod":0,
        "Instances":[
          {
            "InstanceId":"i-34567890abcdef012",
            "InstanceType":"t2.micro",
            "AvailabilityZone":"us-west-2a",
            "LifecycleState":"InService",
            "HealthStatus":"Healthy",
            "LaunchConfigurationName":"my-asg-from-instance",
            "ProtectedFromScaleIn":false
          },
          {
            "InstanceId":"i-012345abcdefg6789",
            "InstanceType":"t2.micro",
            "AvailabilityZone":"us-west-2a",
            "LifecycleState":"InService",
            "HealthStatus":"Healthy",
            "LaunchConfigurationName":"my-asg-from-instance",
            "ProtectedFromScaleIn":false
          }
        ],
        "CreatedTime":"2020-10-28T02:39:22.152Z",
        "SuspendedProcesses":[ ],
        "VPCZoneIdentifier":"subnet-0abc1234",
        "EnabledMetrics":[ ],
        "Tags":[ ],
        "TerminationPolicies":[
          "Default"
        ],
        "NewInstancesProtectedFromScaleIn":false,
        "ServiceLinkedRoleARN":"{{arn}}",
        "TrafficSources":[]
      }
    ]
  }
  ```

**시작 구성을 보려면**
+ 다음 [describe-launch-configurations](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-launch-configurations.html) 명령을 사용하여 시작 구성의 세부 정보를 봅니다.

  ```
  aws autoscaling describe-launch-configurations --launch-configuration-names {{my-asg-from-instance}}
  ```

  다음은 예 출력입니다.

  ```
  {
    "LaunchConfigurations":[
      {
        "LaunchConfigurationName":"my-asg-from-instance",
        "LaunchConfigurationARN":"{{arn}}",
        "ImageId":"ami-234567890abcdefgh",
        "KeyName":"my-key-pair-uswest2",
        "SecurityGroups":[
          "sg-12abcdefgh3456789"
        ],
        "ClassicLinkVPCSecurityGroups":[ ],
        "UserData":"",
        "InstanceType":"t2.micro",
        "KernelId":"",
        "RamdiskId":"",
        "BlockDeviceMappings":[ ],
        "InstanceMonitoring":{
          "Enabled":true
        },
        "CreatedTime":"2020-10-28T02:39:22.321Z",
        "EbsOptimized":false,
        "AssociatePublicIpAddress":true
      }
    ]
  }
  ```

**인스턴스를 해지하려면**
+ 인스턴스가 더 이상 필요하지 않은 경우, 해지할 수 있습니다. [terminate-instances](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/terminate-instances.html) 명령을 사용하여 인스턴스 `i-123456789abcdefg0`를 해지합니다.

  ```
  aws ec2 terminate-instances --instance-ids {{i-123456789abcdefg0}}
  ```

  Amazon EC2 인스턴스를 해지한 후에는 인스턴스를 다시 시작할 수 없습니다. 해지하면 데이터가 사라지므로 해당 볼륨을 인스턴스에 연결할 수 없습니다. 인스턴스 종료에 대한 자세한 내용은 *Amazon EC2 사용 설명서*의 [인스턴스 종료](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#terminating-instances-console)를 참조하세요.