- glance는 인스턴스의 이미지(인스턴스 데이터 저장 파일)을 관리하는 서비스다
- 여기서부터 오타가 발생시 인증서 오류로 인하여 정상적인 서비스가 불가능 할 수 있으니 유심하여 입력할 것
- openstack의 특성상 kvm을 주로 사용하니 qcow2 파일을 자주 이용하게 될 것이니 알아두면 좋다.
DB, 서비스 사용자 등록 및 API 엔드포인트 생성
sudo su root
#루트 권한 접속
#DB 등록
mysql
#mariadb 접속
MariaDB [(none)]> CREATE DATABASE nova_api;
MariaDB [(none)]> CREATE DATABASE nova;
MariaDB [(none)]> CREATE DATABASE nova_cell0;
#DB생성
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' \
IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' \
IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' \
IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' \
IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' \
IDENTIFIED BY 'NOVA_DBPASS';
#액세스 권한 설정,설정한 NOVA_DBPASS 기입
. admin-openrc
#어드민 권한 접속
#서비스 사용자 등록
openstack user create --domain default --password-prompt nova
#nova 사용자 등록
User Password: #NOVA_PASS
Repeat User Password: #NOVA_PASS
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| domain_id | default |
| enabled | True |
| id | 8a7dbf5279404537b1c7b86c033620fe |
| name | nova |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+
#생성 결과(예시)
openstack role add --project service --user nova admin
#admin 역활 추가
openstack service create --name nova \
--description "OpenStack Compute" compute
#서비스 엔터티 생성
#API 엔드포인트 추가
openstack endpoint create --region RegionOne \
compute public http://controller:8774/v2.1
#public
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 3c1caa473bfe4390a11e7177894bcc7b |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 060d59eac51b4594815603d75a00aba2 |
| service_name | nova |
| service_type | compute |
| url | http://controller:8774/v2.1 |
+--------------+-------------------------------------------+
#생성 결과(예시)
openstack endpoint create --region RegionOne \
compute internal http://controller:8774/v2.1
#internal
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | e3c918de680746a586eac1f2d9bc10ab |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 060d59eac51b4594815603d75a00aba2 |
| service_name | nova |
| service_type | compute |
| url | http://controller:8774/v2.1 |
+--------------+-------------------------------------------+
#생성 결과(예시)
openstack endpoint create --region RegionOne \
compute admin http://controller:8774/v2.1
#admin
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 38f7af91666a47cfb97b4dc790b94424 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 060d59eac51b4594815603d75a00aba2 |
| service_name | nova |
| service_type | compute |
| url | http://controller:8774/v2.1 |
+--------------+-------------------------------------------+
#생성 결과(예시)
구성 요소 설치 및 설정
apt-get update
#최신화
apt install glance
#설치
vi /etc/glance/glance-api.conf
[database]
....(생략)
connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
#설정한 GLANCE_DBPASS 입력
[keystone_authtoken]
....(생략)
www_authenticate_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = GLANCE_PASS
#설정한 GLANCE_DBPASS 입력
[paste_deploy]
....(생략)
flavor = keystone
[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/
#filesystem_store_datadir = 이미지(인스턴스 데이터 저장 파일)를 저장할 위치
su -s /bin/sh -c "glance-manage db_sync" glance
#DB에 설정 등록
service glance-api restart
#서비스 재시작
설치 확인
. admin-openrc
#어드민 권한 접속
wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img
#centOS 7 이미지 받기
glance image-create --name "cirros" \
--file cirros-0.4.0-x86_64-disk.img \
--disk-format qcow2 --container-format bare \
--visibility=public
#public 형태로 이미지 등록
+------------------+------------------------------------------------------+
| Field | Value |
+------------------+------------------------------------------------------+
| checksum | 133eae9fb1c98f45894a4e60d8736619 |
| container_format | bare |
| created_at | 2015-03-26T16:52:10Z |
| disk_format | qcow2 |
| file | /v2/images/cc5c6982-4910-471e-b864-1098015901b5/file |
| id | cc5c6982-4910-471e-b864-1098015901b5 |
| min_disk | 0 |
| min_ram | 0 |
| name | cirros |
| owner | ae7a98326b9c455588edd2656d723b9d |
| protected | False |
| schema | /v2/schemas/image |
| size | 13200896 |
| status | active |
| tags | |
| updated_at | 2015-03-26T16:52:10Z |
| virtual_size | None |
| visibility | public |
+------------------+------------------------------------------------------+
#생성 결과(예시)
glance image-list
#이미지 업로드 확인
+--------------------------------------+--------+--------+
| ID | Name | Status |
+--------------------------------------+--------+--------+
| 38047887-61a7-41ea-9b49-27987d5e8bb9 | cirros | active |
+--------------------------------------+--------+--------+
#생성 결과(예시)
'구축 > Openstack' 카테고리의 다른 글
openstack 구축 5 nova (2) | 2024.01.03 |
---|---|
openstack 구축 4 placement (0) | 2023.12.28 |
openstack 구축 2 keystone (1) | 2023.12.27 |
openstack 구축 1 사전 환경 구축 (1) | 2023.12.26 |
openstack 구축 0 들어가기 앞서 (1) | 2023.12.26 |