

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

# 온프레미스에서 가상 머신으로 AL2 실행
<a name="amazon-linux-2-virtual-machine"></a>

온프레미스 개발 및 테스트에 AL2 가상 머신(VM) 이미지를 사용합니다. 지원되는 각 가상화 플랫폼에 대해 서로 다른 AL2 VM 이미지를 제공합니다. [Amazon Linux 2 virtual machine images](https://cdn.amazonlinux.com/os-images/latest/)(Amazon Linux 2 가상 머신 이미지) 페이지에서 지원되는 플랫폼 목록을 볼 수 있습니다.

**Topics**
+ [1단계: `seed.iso` 부팅 이미지 준비](#amazon-linux-2-virtual-machine-prepare)
+ [2단계: AL2 VM 이미지 다운로드](#amazon-linux-2-virtual-machine-download)
+ [3단계: 새 VM 부팅 및 연결](#amazon-linux-2-virtual-machine-boot)

## 1단계: `seed.iso` 부팅 이미지 준비
<a name="amazon-linux-2-virtual-machine-prepare"></a>

`seed.iso` 부팅 이미지에는 네트워크 구성, 호스트 이름, 사용자 데이터와 같이 새 VM을 부팅하는 데 필요한 초기 구성 정보가 포함되어 있습니다.

**참고**  
`seed.iso` 부팅 이미지에는 VM을 부팅하는 데 필요한 구성 정보만 포함합니다. AL2 운영 체제 파일은 포함되지 않습니다.

`seed.iso` 부팅 이미지를 생성하려면 다음과 같은 구성 파일 두 개가 필요합니다.
+ `meta-data` - 이 파일에는 VM에 대한 호스트 이름과 정적 네트워크 설정이 포함됩니다.
+ `user-data` - 이 파일에서는 사용자 계정을 구성하고 해당 계정의 암호, 키 페어, 액세스 메커니즘을 지정합니다. 기본적으로 AL2 VM 이미지는 `ec2-user` 사용자 계정을 생성합니다. `user-data` 구성 파일을 사용하여 기본 사용자 계정의 암호를 설정합니다.

**`seed.iso` 부팅 디스크를 생성하려면**

1. `seedconfig`라는 새 폴더를 만들고 이 폴더로 이동합니다.

1. `meta-data` 구성 파일을 생성합니다.

   1. `meta-data`라는 이름의 새로운 파일을 만듭니다.

   1. 원하는 편집기를 사용하여 `meta-data` 파일을 열고 다음을 추가합니다.

      ```
      local-hostname: vm_hostname
      # eth0 is the default network interface enabled in the image. You can configure static network settings with an entry like the following.
      network-interfaces: |
        auto eth0
        iface eth0 inet static
        address 192.168.1.10
        network 192.168.1.0
        netmask 255.255.255.0
        broadcast 192.168.1.255
        gateway 192.168.1.254
      ```

      *vm\$1hostname*을 선택한 VM 호스트 이름으로 바꾸고 필요에 따라 네트워크 설정을 구성합니다.

   1. `meta-data` 구성 파일을 저장하고 닫습니다.

   VM 호스트 이름(`meta-data`)을 지정하고, 기본 네트워크 인터페이스(`amazonlinux.onprem`)를 구성하며, 필요한 네트워크 디바이스의 정적 IP 주소를 지정하는 `eth0` 구성 파일의 예는 [샘플 Seed.iso 파일](https://cdn.amazonlinux.com/os-images/latest/)을 참조하세요.

1. `user-data` 구성 파일을 생성합니다.

   1. `user-data`라는 이름의 새로운 파일을 만듭니다.

   1. 원하는 편집기를 사용하여 `user-data` 파일을 열고 다음을 추가합니다.

      ```
      #cloud-config
      #vim:syntax=yaml
      users:
      # A user by the name `ec2-user` is created in the image by default.
        - default
      chpasswd:
        list: |
          ec2-user:plain_text_password
      # In the above line, do not add any spaces after 'ec2-user:'.
      ```

      *plain\$1text\$1password*를 기본 `ec2-user` 사용자 계정을 대해 선택한 암호로 바꿉니다.

   1. (선택 사항) 기본적으로 cloud-init은 VM이 부팅될 때마다 네트워크 설정을 적용합니다. 부팅될 때마다 cloud-init이 네트워크 설정을 적용하지 않고, 첫 번째 부팅 중에 적용된 네트워크 설정을 유지하려면 다음을 추가합니다.

      ```
      # NOTE: Cloud-init applies network settings on every boot by default. To retain network settings 
      # from first boot, add the following ‘write_files’ section:
      write_files:
        - path: /etc/cloud/cloud.cfg.d/80_disable_network_after_firstboot.cfg
          content: |
            # Disable network configuration after first boot
            network:
              config: disabled
      ```

   1. `user-data` 구성 파일을 저장하고 닫습니다.

   추가 사용자 계정을 생성하고 이 계정의 액세스 메커니즘, 암호 및 키 페어를 지정할 수도 있습니다. 지원되는 명령에 대한 자세한 내용은 [모듈 참조](http://cloudinit.readthedocs.io/en/latest/topics/modules.html)에서 확인하세요. 추가 사용자를 세 명 생성하고 기본 `user-data` 사용자 계정의 사용자 지정 암호를 지정하는 `ec2-user` 파일의 예는 [샘플 Seed.iso 파일](https://cdn.amazonlinux.com/os-images/latest/)을 참조하세요.

1. `seed.iso` 및 `meta-data` 구성 파일을 사용하여 `user-data` 부팅 이미지를 생성합니다.

   Linux의 경우 **genisoimage**와 같은 도구를 사용합니다. `seedconfig` 폴더로 이동하여 다음 명령을 실행합니다.

   ```
   $ genisoimage -output seed.iso -volid cidata -joliet -rock user-data meta-data
   ```

   macOS의 경우 **hdiutil**과 같은 도구를 사용합니다. `seedconfig` 폴더에서 한 수준 위로 이동하여 다음 명령을 실행합니다.

   ```
   $ hdiutil makehybrid -o seed.iso -hfs -joliet -iso -default-volume-name cidata seedconfig/
   ```

## 2단계: AL2 VM 이미지 다운로드
<a name="amazon-linux-2-virtual-machine-download"></a>

지원되는 각 가상화 플랫폼에 대해 서로 다른 AL2 VM 이미지를 제공합니다. 지원되는 플랫폼 목록을 보고 [Amazon Linux 2 virtual machine images](https://cdn.amazonlinux.com/os-images/latest/)(Amazon Linux 2 가상 머신 이미지) 페이지에서 선택한 플랫폼에 대한 올바른 VM 이미지를 다운로드할 수 있습니다.

## 3단계: 새 VM 부팅 및 연결
<a name="amazon-linux-2-virtual-machine-boot"></a>

부팅하고 새 VM에 연결하려면 `seed.iso` 부팅 이미지([1단계](#amazon-linux-2-virtual-machine-prepare)에서 생성됨)와 AL2 VM 이미지([2단계](#amazon-linux-2-virtual-machine-download)에서 다운로드됨)가 있어야 합니다. 선택한 VM 플랫폼에 따라 단계가 달라집니다.

------
#### [ VMware vSphere ]

VMware용 VM 이미지는 OVF 형식으로 제공됩니다.

**VMware vSphere를 사용하여 VM을 부팅하려면**

1. `seed.iso` 파일에 대한 새 데이터스토어를 생성하거나 이 파일을 기존 데이터 스토어에 추가합니다.

1. OVF 템플릿을 배포하되 아직 VM을 시작하지 않습니다.

1. **Navigator(탐색기** 패널에서 새 가상 머신을 마우스 오른쪽 버튼으로 클릭하고 **설정 편집**을 선택합니다.

1. **Virtual Hardware(가상 하드웨어)** 탭에서 **New device(새 디바이스)**에 대해 **CD/DVD Drive(CD/DVD 드라이브)**를 선택한 다음 **추가**를 선택합니다.

1. **New CD/DVD Drive(새 CD/DVD 드라이브)**에서 **Datastore ISO File(데이터 스토어 ISO 파일)**을 선택합니다. `seed.iso` 파일을 추가한 데이터 스토어를 선택하고 `seed.iso` 파일을 찾아 선택한 다음 **확인**을 선택합니다.

1. **새 DC/DVD 드라이브**에서 **연결**을 선택한 다음 **확인**을 선택합니다.

데이터 스토어를 VM과 연결한 후에는 VM을 부팅할 수 있어야 합니다.

------
#### [ KVM ]

**KVM을 사용하여 VM을 부팅하려면**

1. **Create new VM(새 VM 만들기)** 마법사를 엽니다.

1. 1단계에서 **Import existing disk image(기존 디스크 이미지 가져오기)**를 선택합니다.

1. 2단계에서 VM 이미지를 찾아 선택합니다. **OS 유형(OS type)** 및 **버전(Version)**에서 **Linux** 및 **Red Hat Enterprise Linux 7.0**을 각각 선택합니다.

1. 3단계에서 사용할 RAM 용량과 CPU 수를 지정합니다.

1. 4단계에서 새 VM의 이름을 입력하고 **Customize configuration before install(설치 전에 구성 사용자 지정)**을 선택한 다음 **마침**을 선택합니다.

1. VM의 구성 창에서 **Add Hardware(하드웨어 추가)**를 선택합니다.

1. **Add New Virtual Hardware(새 가상 하드웨어 추가)** 창에서 **스토리지**를 선택합니다.

1. 스토리지 구성에서 **Select or create custom storage(사용자 지정 스토리지 선택 또는 생성)**을 선택합니다. **디바이스 유형**에서 **CDROM device(CDROM 디바이스)**를 선택합니다. **관리**, **Browse Local(로컬 찾아보기)**를 선택한 다음 `seed.iso` 파일을 찾아 선택합니다. [**마침**]을 클릭합니다.

1. **Begin Installation(설치 시작)**을 선택합니다.

------
#### [ Oracle VirtualBox ]

**Oracle VirtualBox를 사용하여 VM을 부팅하려면**

1. Oracle VirtualBox를 열고 **새로 만들기(New)**를 선택합니다.

1. **이름(Name)**에 가상 머신의 알기 쉬운 이름을 입력하고 **유형(Type)** 및 **버전(Version)**에서 각각 **Linux**와 **Red Hat(64비트)(Red Hat (64-bit))**을 선택합니다. [**Continue**]를 선택합니다.

1. **메모리 크기(Memory size)**에 가상 머신에 할당할 메모리 양을 지정한 다음 **계속(Continue)**을 선택합니다.

1. **하드 디스크(Hard disk)**에서 **기존 가상 하드 디스크 파일 사용(Use an existing virtual hard disk file)**을 선택하고 VM 이미지를 연 다음 **생성(Create)**을 선택합니다.

1. VM을 시작하기 전에 가상 머신의 가상 광학 드라이브에 `seed.iso` 파일을 로드해야 합니다.

   1. 새 VM을 선택하고 **설정**을 선택한 다음 **스토리지**를 선택합니다.

   1. **스토리지 디바이스(Storage Devices)** 목록의 **컨트롤러: IDE(Controller: IDE)** 아래에서 *빈(Empty)* 광학 드라이브를 선택합니다.

   1. 광학 드라이브의 **속성** 섹션에서 찾아보기 버튼을 선택하고 **Choose Virtual Optical Disk File(가상 광학 디스크 파일 선택)**을 선택한 다음 `seed.iso` 파일을 선택합니다. **확인(OK)**을 선택하여 변경 사항을 적용하고 설정을 닫습니다.

가상 광학 드라이브에 `seed.iso` 파일을 추가한 후에는 VM을 부팅할 수 있습니다.

------
#### [ Microsoft Hyper-V ]

Microsoft Hyper-V용 VM 이미지는 zip 파일로 압축됩니다. 이 zip 파일의 내용을 추출해야 합니다.

**Microsoft Hyper-V를 사용하여 VM을 부팅하려면**

1. **새 가상 컴퓨터 마법사(New Virtual Machine Wizard)**를 엽니다.

1. 세대를 선택하라는 메시지가 표시되면 **Generation 1(1세대)**을 선택합니다.

1. 네트워크 어댑터를 구성하라는 메시지가 표시되면 **연결**에 **외부**를 선택합니다.

1. 가상 하드 디스크를 연결하라는 메시지가 표시되면 **Use an existing virtual hard disk(기존 가상 하드 디스크 사용)**를 선택하고 **찾아보기**를 선택한 다음 VM 이미지를 찾아 선택합니다. **마침**을 선택하여 VM을 생성합니다.

1. 새 VM을 마우스 오른쪽 버튼으로 클릭하고 **설정**을 선택합니다. **설정** 창의 **IDE Controller 1(IDE 컨트롤러 1)**에서 **DVD Drive(DVD 드라이브)**를 선택합니다.

1. DVD 드라이브에서 **이미지 파일**을 선택한 다음 `seed.iso` 파일을 찾아 선택합니다.

1. 변경 사항을 적용하고 VM을 시작합니다.

------

VM이 부팅된 후에 `user-data` 구성 파일에 정의된 사용자 계정 중 하나를 사용해 로그인합니다. 처음 로그인한 후 VM에서 `seed.iso` 부팅 이미지를 연결 해제할 수 있습니다.