OpenStack

PackStack을 이용한 단일 노드 OpenStack Stein 설치 4편 - 인스턴스 만들기

IT Janitor 2020. 3. 31. 14:02

이번 포스팅에서는 지난 글에서 구성한 OpenStack의 네트워크를 이용하는 인스턴스를 설치하고 외부 접속 가능 여부를 확인해보겠습니다.

 

OpenStack Stein에서 네트워크 구성은 이전글을 참고해주세요.

2020/03/30 - [OpenStack] - PackStack을 이용한 단일 노드 OpenStack Stein 설치 3편 - 네트워크 설정하기

 

PackStack을 이용한 단일 노드 OpenStack Stein 설치 3편 - 네트워크 설정하기

이번 포스팅에서는 지난 글에서 준비한 OpenStack Stein 을 이용해 인스턴스를 연결할 네트워크를 구성해보겠습니다. PackStack을 이용한 OpenStack Stein 설치는 아래 포스팅을 참고해주세요 2020/03/26 - [OpenS..

blog.moonsh.me

 

 


 

 

지난 글에서 OpenStack 인스턴스들이 사용할 public, private 네트워크를 구성하였습니다.

그렇다면 인스턴스가 실제로 구성된 네트워크를 이용하여 외부 네트워크에 접근이 가능할까요?

 

 

 

1. 인스턴스에 사용될 클라우드 이미지 준비

 

인스턴스를 설치하기 전에 우선 OpenStack에 인스턴스에 사용 될 이미지를 업로드해두어야 합니다.

 

### OpenStack의 Demo모드를 비활성화 합니다.
config_provision_deomo = n

 

지난 번 PackStack을 사용한 설치 2편에서 해당 옵션을 'y'로 해두었다면 OpenStack이 제공하는 테스트용 이미지가 미리 Glance 서비스에 업로드 되어 있었겠지만 'n'으로 설정했기 때문에 우선 아래 링크로 이동하여 테스트용 이미지를 다운받아야 합니다.

 

http://download.cirros-cloud.net/http://download.cirros-cloud.net/0.5.1/cirros-0.5.1-x86_64-disk.img

 

해당 링크에서 제공하는 이미지는 OpenStack에서 기본으로 제공하는 클라우드 특화 테스트 이미지 'CirrOS' 입니다.

 

CirrOS는 OpenStack Compute 등의 기능을 테스트 할 수 있도록 만들어진 가벼운 리눅스 이미지 입니다.

용량도 약 16MB 정도로 매우 작고 QCOW2 이미지로 제작되어 있습니다.

물론 테스트 이미지이기 때문에 실사용에는 적합하지 않습니다.

 

다운로드가 끝나면 OpenStack의 Glance 서비스에 업로드합니다.

 

 

 

2. OpenStack Horizon 대시보드 접속하기

 

이전 편에서 네트워크를 설정할 때 CLI를 통한 방법과 대시보드 GUI를 이용한 방법이 있었던 것처럼 당연히 Glance 서비스를 이용하는 방법도 2가지가 있습니다.

하지만 지난 번과는 다르게 이번엔 사용이 비교적 직관적인 Horizon 대시보드를 이용해보도록 하겠습니다.

 

Horizon 대시보드

 

대시보드에 접속 후 왼쪽 메뉴에 Compute > 이미지 를 클릭합니다.

 

OpenStack에 저장된 디스크 이미지

 

위 이미지는 테스트를 위해 이미 2개의 이미지가 업로드되어있는 상태이지만 처음 해당 페이지에 접속하셨다면 아무것도 없는것이 정상입니다.

 

해당 페이지의 오른쪽 위에 위치한 '이미지 생성' 버튼을 클릭합니다.

 

새로운 이미지 생성!!

 

이미지 이름에는 원하는 이미지의 이름을, 이미지 소스항목의 '검색' 버튼을 클릭해 이전에 다운로드한 CirrOS 이미지를 찾아줍니다.

포맷은 QCOW2를 선택합니다.

 

나머지 항목은 옵션이며 이 포스트에서는 기본값을 사용하도록 하겠습니다.

 

 

 

3. Glance 이미지를 이용해 인스턴스 생성하기

 

Glance에 사용할 디스크 이미지가 업로드되었다면 이미지를 이용해 인스턴스를 생성할 수 있습니다.

 

Horizon의 Compute > 이미지 메뉴에서 업로드된 이미지 오른쪽의 실행 버튼을 클릭합니다.

 

새로운 인스턴스 이름정하기

 

원하는 인스턴스의 이름을 입력합니다.

설명을 입력할 수도 있으며 멀티노드 OpenStack의 경우 Compute 노드의 갯수만큼 가용 구역이 늘어납니다.

이 포스트는 단일 노드를 기준으로 진행되므로 기본값인 nova를 사용합니다.

 

Next 버튼을 클릭해 다음페이지로 진행합니다.

 

Glance의 이미지 선택

이전 단계에서 정상적으로 이미지를 업로드 하셨다면 사용 가능 부분에 업로드한 이미지의 이름이 표시됩니다.

오른쪽의 ↑ 화살표를 클릭해 할당됨 으로 설정해줍니다.

 

또한 CirrOS의 QCOW2 이미지만을 이용해 부팅하고 추가적인 블록 스토리지는 이용하지 않을것이기 때문에 새로운 볼륨 생성 은 아니오를 선택합니다.

 

Next 버튼을 클릭해 다음페이지로 진행합니다.

 

인스턴스 스펙

인스턴스에 부여될 CPU 코어와 RAM 용량을 결정합니다.

테스트로 이용하기 때문에 가장 작은 m1.tiny 스펙을 선택합니다.

이미지 선택과 마찬가지로 원하는 스펙을 골라 오른쪽의 ↑ 화살표를 클릭해 할당됨 으로 설정해줍니다.

 

Next 버튼을 클릭해 다음페이지로 진행합니다.

 

인스턴스 네트워크 설정

 

지난 3편에서 인스턴스가 사용할 네트워크 private1, 외부 접속이 가능한 네트워크 public을 생성했습니다.

따라서 인스턴스가 이용할 네트워크 private1의 오른쪽 ↑ 화살표를 클릭해 할당됨 으로 설정해줍니다.

 

 

이후 설정은 기본으로 지정하므로 오른쪽 하단의 인스턴스 시작 버튼을 클릭해 인스턴스를 생성하고 시작합니다.

 

Compute > 인스턴스 탭을 클릭해 인스턴스가 생성되었는지 확인합니다.

인스턴스의 전원상태가 Running 이라고 표시된다면 정상적으로 동작하고 있음을 의미합니다.

 

 

 

4. 인스턴스에 유동IP 연결하기

 

위 단계를 거쳐 생성된 인스턴스는 작동은 가능하지만 아직 외부 네트워크로의 접근은 불가능한 상태입니다.

 

이를 해결하기위해 인스턴스에 유동IP를 부여합니다.

 

유동 IP 지정하기

인스턴스의 오른쪽 메뉴에서 유동 IP 할당을 선택하면 위와 같은 창이 표시됩니다.

IP 주소 항목의 오른쪽 + 버튼을 클릭해 새로운 유동 IP를 생성합니다.

 

새로운 유동 IP 생성

 

외부 접속을 위해 public 네트워크 풀에서 할당하며 할당 가능한 유동 IP의 갯수도 표시됩니다.

적당한 설명을 입력하고 IP 할당 버튼을 클릭합니다.

 

인스턴스에 유동 IP 연결

 

연결  버튼을 클릭해 유동IP와 인스턴스를 연결합니다.

 

 

 

5. 인스턴스 콘솔 접속하기

 

인스턴스 생성과 유동IP 연결이 완료되면 콘솔에 접속해 인스턴스와 상호작용할 수 있습니다.

 

Compute > 인스턴스 탭의 인스턴스 이름을 클릭해 상세 페이지로 이동 후 상단의  콘솔 탭을 클릭합니다.

저는 해당 화면에서 키보드 입력이 불가능 했기때문에 콘솔 탭 상단의 콘솔만 보려면 여기를 클릭하세요 링크를 이용하여 콘솔화면을 새 탭에서 열어줍니다.

 

CirrOS 인스턴스 콘솔

 

드디어 인스턴스 콘솔을 이용할 수 있습니다.

콘솔에 출력된 내용처럼 CirrOS 기본 아이디인 cirros 와 기본 비밀번호인 gocubsgo 를 이용해 로그인합니다.

 

'ip a'  와 같은 명령어를 이용해 사설 IP가 할당되어 있는지 확인합니다.

 

인스턴스 사설 IP 확인

 

'ping www.speedtest.net' 과 같은 명령어를 이용해 외부 네트워크 접속이 가능한지도 확인합니다.

 

인스턴스 ping 확인

 

 

 


 

 

 

여기까지 OpenStack에서 인스턴스를 생성하고 3편에서 구성한 네트워크를 이용해 외부 접속이 가능한지 확인해 보았습니다.

다음 포스트에서는 인스턴스에서 외부로의 접속이 아닌 외부에서 인스턴스로 접속하는 방법을 알아보겠습니다.