Oracle® Solaris에서 OpenStack(Havana) 설치 및 구성

인쇄 보기 종료

업데이트 날짜: 2016년 5월
 
 

이미지 관리

가상 시스템 이미지 또는 이미지는 부팅 가능 운영체제가 설치된 가상 디스크를 포함하는 단일 파일입니다. 이미지는 가상 시스템 파일 시스템에 대한 템플리트를 제공합니다.

대시보드 이외에 glancenova 명령줄 클라이언트나 이미지 서비스 및 Compute API를 통해서도 이미지를 관리할 수 있습니다.

이미지에 대한 정보 표시

nova image-list 명령은 사용 가능한 이미지 목록을 표시합니다. VM 인스턴스를 만들 때 이미지의 이름 또는 ID를 사용하게 됩니다.

$ nova image-list
+--------------------------------------+-------------------------+--------+--------+
| ID                                   | Name                    | Status | Server |
+--------------------------------------+-------------------------+--------+--------+
| e422aae1-b0ba-618c-85d3-a214059800e2 | Solaris Kernel Zone     | ACTIVE |        |
| e82aa857-ec92-4859-f530-deb89274863e | Solaris Non-global Zone | ACTIVE |        |
+--------------------------------------+-------------------------+--------+--------+

glance image-list 명령은 디스크 포맷, 컨테이너 형식, 이미지 크기 등 추가 정보를 표시합니다.

$ glance image-list --human-readable

nova image-showglance image-show 명령은 지정된 이미지에 대한 세부 정보를 표시합니다.

$ nova image-show 'Solaris Kernel Zone'
+--------------------------+--------------------------------------+
| Property                 | Value                                |
+--------------------------+--------------------------------------+
| OS-EXT-IMG-SIZE:size     | 1547458560                           |
| created                  | 2014-06-29T15:40:49Z                 |
| id                       | e422aae1-b0ba-618c-85d3-a214059800e2 |
| metadata architecture    | x86_64                               |
| metadata hypervisor_type | solariszones                         |
| metadata vm_mode         | solariszones                         |
| minDisk                  | 0                                    |
| minRam                   | 0                                    |
| name                     | Solaris Kernel Zone                  |
| progress                 | 100                                  |
| status                   | ACTIVE                               |
| updated                  | 2014-06-29T15:40:55Z                 |
+--------------------------+--------------------------------------+
$ glance image-show 'Solaris Kernel Zone'
+----------------------------+--------------------------------------+
| Property                   | Value                                |
+----------------------------+--------------------------------------+
| Property 'architecture'    | x86_64                               |
| Property 'hypervisor_type' | solariszones                         |
| Property 'vm_mode'         | solariszones                         |
| checksum                   | b2fc9560c15603c7663326db82d5ddaa     |
| container_format           | bare                                 |
| created_at                 | 2014-06-29T15:40:49.108578           |
| deleted                    | False                                |
| disk_format                | raw                                  |
| id                         | e422aae1-b0ba-618c-85d3-a214059800e2 |
| is_public                  | True                                 |
| min_disk                   | 0                                    |
| min_ram                    | 0                                    |
| name                       | Solaris Kernel Zone                  |
| owner                      | 7461d4a9f5a64af9a01ae4e84e08c182     |
| protected                  | False                                |
| size                       | 1547458560                           |
| status                     | active                               |
| updated_at                 | 2014-06-29T15:40:55.769756           |
+----------------------------+--------------------------------------+

이미지 만들기

Solaris에서 OpenStack 이미지는 통합 아카이브이며 Oracle Solaris 11.2를 실행 중이어야 합니다. archiveadm 명령을 사용하여 Oracle Solaris 11.2를 실행하는 전역, 비전역 및 커널 영역에서 새 통합 아카이브를 만들 수 있습니다. OpenStack에서 사용할 이미지를 Glance 저장소로 업로드하십시오.

통합 아카이브는 복제 아카이브 또는 복구 아카이브일 수 있습니다. 현재 활성 상태의 부팅 환경을 기반으로 복제 아카이브를 만들거나 모든 부팅 환경과 시스템 구성 정보가 포함된 복구 아카이브를 만드십시오. 복제 아카이브에는 OS 인스턴스의 시스템 구성 정보가 포함되지 않습니다. 복제 아카이브의 경우 설치 프로그램에서 재구성을 강제로 수행할 수도 있고, SC(시스템 구성) 프로파일에서 구성을 수동으로 제공할 수도 있습니다. 복제 아카이브에는 비활성 BE 등도 포함되지 않습니다. 시스템의 모든 요소가 필요한 경우 복구 통합 아카이브를 사용하십시오. 통합 아카이브에 대한 자세한 내용은 Oracle Solaris 11.2의 시스템 복구 및 복제용 Unified Archive 사용을 참조하십시오.

다음 명령은 myzone이라는 실행 중인 비전역 영역의 통합 아카이브를 캡처합니다.

global# zonecfg -z myzone create
global# zoneadm -z myzone install
global# zlogin myzone \
'sed /^PermitRootLogin/s/no$/without-password/ \
< /etc/ssh/sshd_config > /system/volatile/sed.$$ ; \
cp /system/volatile/sed.$$ /etc/ssh/sshd_config'
global# archiveadm create -z myzone /var/tmp/myzone.uar

기존 VM 인스턴스의 스냅샷을 만들어 OpenStack 이미지를 만들 수도 있습니다. nova image-create 명령을 통해 실행 중인 VM 인스턴스의 스냅샷을 생성하여 이미지를 만드십시오.

VM 인스턴스를 만드는 데 사용할 이미지를 만드는 것 이외에 데이터 백업을 위한 사용자 정의 이미지를 사용하거나 VM 인스턴스를 자동 복구할 수도 있습니다. 자동 복구 이미지는 VM 인스턴스가 rescue 모드로 설정될 때 부팅되는 특수 유형의 이미지입니다. 자동 복구 이미지를 통해 관리자는 VM 인스턴스에 대한 파일 시스템을 마운트하여 문제를 해결할 수 있습니다.

이미지 저장소에 이미지 추가

OpenStack 이미지 서비스인 Glance는 디스크 및 서버 이미지에 대한 저장소, 검색, 등록 및 전달 서비스를 제공합니다. 레지스트리 서버는 클라이언트에 이미지 메타데이터 정보를 제공하는 이미지 서비스입니다. 이미지 캐시는 이미지가 요청될 때마다 이미지 서비스가 이미지 서버에서 이미지를 다시 다운로드하지 않고 로컬 호스트에서 이미지를 가져오는 데 사용합니다.

다음 명령은 이전 절에서 만들어진 통합 아카이브를 Glance 저장소로 업로드합니다. raw를 포맷 유형으로 사용합니다. architecture 등록 정보를 지정해야 합니다.

global# glance image-create --container-format bare --disk-format raw \
--is-public true --name "Oracle Solaris 11.2 x86 NGZ" \
--property architecture=x86_64 \
--property hypervisor_type=solariszones \
--property vm_mode=solariszones < /var/tmp/myzone.uar

glance image-create 명령은 이미지를 업로드하고 모든 등록 정보 값을 한 번에 설정할 수 있습니다. 다음 스크립트는 architecture 등록 정보가 현재 호스트의 아키텍처로 설정된 이미지를 업로드하는 방법을 보여줍니다.

#!/bin/ksh

# Upload Unified Archive image to glance with proper Solaris decorations

arch=$(archiveadm info -p $1|grep ^archive|cut -d '|' -f 4)

if [[ "$arch" == "i386" ]]; then
        imgarch=x86_64
else
        imgarch=sparc64
fi

name=$(basename $1 .uar)

export OS_USERNAME=glance
export OS_PASSWORD=glance
export OS_TENANT_NAME=service
export OS_AUTH_URL=http://controller-name:5000/v2.0

glance image-create --name $name --container-format bare --disk-format raw --owner service
--file $1 --is-public True --property architecture=$imgarch --property hypervisor_type=solariszones
--property vm_mode=solariszones --progress