9.5. SSH 액세스를 사용하여 인스턴스 생성

인스턴스를 생성할 때 키 쌍을 지정하여 인스턴스에 대한 SSH 액세스 권한을 제공할 수 있습니다. 키 쌍은 시작 시 인스턴스에 삽입되는 SSH 또는 x509 자격 증명입니다. 각 프로젝트에는 하나 이상의 키 쌍이 있어야 합니다. 키 쌍은 프로젝트가 아닌 개별 사용자에 속합니다.

참고

인스턴스를 만든 후에는 키 쌍을 인스턴스와 연결할 수 없습니다.

인스턴스를 생성하는 동안 인스턴스에 직접 보안 그룹을 적용하거나 실행 중인 인스턴스의 포트에 적용할 수 있습니다.

참고

인스턴스를 생성하는 동안에는 RBAC(역할 기반 액세스 제어)-공유 보안 그룹을 인스턴스에 직접 적용할 수 없습니다. RBAC-shared 보안 그룹을 인스턴스에 적용하려면 먼저 포트를 생성하고, 공유 보안 그룹을 해당 포트에 적용한 다음 해당 포트를 인스턴스에 할당해야 합니다. 포트에 보안 그룹 추가를 참조하십시오.

사전 요구 사항

  • 인스턴스에 SSH를 수행하는 데 사용할 수 있는 키 쌍을 사용할 수 있습니다. 자세한 내용은 새 SSH 키 쌍 생성 을 참조하십시오.
  • 인스턴스를 만들려는 네트워크는 외부 네트워크이거나 게이트웨이로 구성된 외부 네트워크가 있는 라우터에 연결된 프로젝트 네트워크여야 합니다. 자세 한 내용은 네트워킹 가이드의 라우터 추가를 참조하십시오.
  • 인스턴스에 연결하는 외부 네트워크에 유동 IP 주소를 제공하는 서브넷이 있어야 합니다.
  • 보안 그룹은 인스턴스에 대한 SSH 액세스를 허용합니다. 자세한 내용은 보안 그룹 및 키 쌍을 사용하여 인스턴스 액세스 보안을 참조하십시오.
  • 인스턴스가 기반으로 하는 이미지에 SSH 공개 키를 인스턴스에 삽입하는 cloud-init 패키지가 포함되어 있습니다.
  • 인스턴스에 유동 IP 주소를 할당할 수 있습니다. 자세한 내용은 인스턴스에 유동 IP 주소 할당을 참조하십시오.

절차

  1. 인스턴스에 필요한 하드웨어 프로필이 있는 플레이버의 이름 또는 ID를 검색합니다.

    $ openstack flavor list
    참고

    이미지가 성공적으로 부팅될 수 있도록 크기가 충분한 플레이버를 선택합니다. 그러지 않으면 인스턴스가 시작되지 않습니다.

  2. 인스턴스에 필요한 소프트웨어 프로필이 있는 이미지의 이름 또는 ID를 검색합니다.

    $ openstack image list

    필요한 이미지를 사용할 수 없는 경우 새 이미지를 다운로드하거나 생성할 수 있습니다. 클라우드 이미지 생성 또는 다운로드에 대한 자세한 내용은 이미지 생성 을 참조하십시오.

  3. 인스턴스를 연결할 네트워크의 이름 또는 ID를 검색합니다.

    $ openstack network list
  4. 인스턴스에 원격으로 액세스하는 데 사용할 키 쌍의 이름을 검색합니다.

    $ openstack keypair list
  5. SSH 액세스를 사용하여 인스턴스를 생성합니다.

    $ openstack server create --flavor <flavor> \
      --image <image> --network <network> \
      [--security-group <secgroup>] \
      --key-name <keypair> --wait myInstancewithSSH
    • <flavor> 를 1단계에서 검색한 플레이버의 이름 또는 ID로 바꿉니다.
    • <image> 를 2단계에서 검색한 이미지의 이름 또는 ID로 바꿉니다.
    • <network> 를 3단계에서 검색한 네트워크의 이름 또는 ID로 바꿉니다. 필요에 따라 --network 옵션을 두 번 이상 사용하여 인스턴스를 여러 네트워크에 연결할 수 있습니다.
    • 선택 사항: 기본 보안 그룹은 대체 보안 그룹을 지정하지 않는 인스턴스에 적용됩니다. 인스턴스를 생성하는 동안 인스턴스에 또는 실행 중인 인스턴스의 포트에 대체 보안 그룹을 직접 적용할 수 있습니다. 인스턴스를 생성할 때 대체 보안 그룹을 지정하려면 --security-group 옵션을 사용합니다. 실행 중인 인스턴스의 포트에 보안 그룹을 추가하는 방법에 대한 자세한 내용은 포트에 보안 그룹 추가를 참조하십시오.
    • <keypair> 를 4단계에서 검색한 키 쌍의 이름 또는 ID로 바꿉니다.
  6. 인스턴스에 유동 IP 주소를 할당합니다.

    $ openstack server add floating ip myInstancewithSSH <floating_ip>

    <floating_ip> 를 인스턴스에 할당하려는 유동 IP 주소로 바꿉니다.

  7. 자동으로 생성된 cloud-user 계정을 사용하여 SSH를 사용하여 인스턴스에 로그인할 수 있는지 확인합니다.

    $ ssh -i ~/.ssh/<keypair>.pem cloud-user@<floatingIP>
    [cloud-user@demo-server1 ~]$