설치와 설정

설치와 설정

이 섹션에서는 컨트롤러 노드에 glance라는 코드 이름을 가진 이미지 서비스를 설치하고 구성하는 방법을 설명합니다. 간략화하여 해당 구성에서는 이미지를 로컬 파일 시스템에 저장합니다.

선행조건

이미지 서비스를 설치 및 구성하기 전에, 데이터베이스, 서비스 credential, 엔드포인트를 생성해야 합니다.

  1. 데이터베이스를 생성하기 위하여, 다음 과정을 완료해야 합니다:

    • glance 데이터베이스를 생성합니다:

      MariaDB [(none)]> CREATE DATABASE glance;
      
    • glance 데이터베이스에 대해 적합한 액세스를 부여합니다:

      MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \
        IDENTIFIED BY 'GLANCE_DBPASS';
      MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \
        IDENTIFIED BY 'GLANCE_DBPASS';
      

      GLANCE_DBPASS 를 적절한 암호로 변경합니다.

    • 데이터베이스 접속 클라이언트를 종료합니다.

  2. admin credential을 소스로 사용하여 관리자 전용 CLI 명령어에 대한 액세스를 갖습니다:

    $ . admin-openrc
    
  3. 서비스 credential을 생성하기 위해, 다음 스텝들을 완료합니다:

    • glance 사용자를 생성합니다:

      $ openstack user create --domain default --password-prompt glance
      
      User Password:
      Repeat User Password:
      +---------------------+----------------------------------+
      | Field               | Value                            |
      +---------------------+----------------------------------+
      | domain_id           | default                          |
      | enabled             | True                             |
      | id                  | 3f4e777c4062483ab8d9edd7dff829df |
      | name                | glance                           |
      | options             | {}                               |
      | password_expires_at | None                             |
      +---------------------+----------------------------------+
      
    • admin 역할을 glance 사용자와 service 프로젝트에 추가합니다:

      $ openstack role add --project service --user glance admin
      

      주석

      이 명령어는 출력이 없습니다.

    • glance 서비스 엔티티를 생성합니다:

      $ openstack service create --name glance \
        --description "OpenStack Image" image
      
      +-------------+----------------------------------+
      | Field       | Value                            |
      +-------------+----------------------------------+
      | description | OpenStack Image                  |
      | enabled     | True                             |
      | id          | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
      | name        | glance                           |
      | type        | image                            |
      +-------------+----------------------------------+
      
  4. 이미지 서비스 API 엔드포인트를 생성합니다:

    $ openstack endpoint create --region RegionOne \
      image public http://controller:9292
    
    +--------------+----------------------------------+
    | Field        | Value                            |
    +--------------+----------------------------------+
    | enabled      | True                             |
    | id           | 340be3625e9b4239a6415d034e98aace |
    | interface    | public                           |
    | region       | RegionOne                        |
    | region_id    | RegionOne                        |
    | service_id   | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
    | service_name | glance                           |
    | service_type | image                            |
    | url          | http://controller:9292           |
    +--------------+----------------------------------+
    
    $ openstack endpoint create --region RegionOne \
      image internal http://controller:9292
    
    +--------------+----------------------------------+
    | Field        | Value                            |
    +--------------+----------------------------------+
    | enabled      | True                             |
    | id           | a6e4b153c2ae4c919eccfdbb7dceb5d2 |
    | interface    | internal                         |
    | region       | RegionOne                        |
    | region_id    | RegionOne                        |
    | service_id   | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
    | service_name | glance                           |
    | service_type | image                            |
    | url          | http://controller:9292           |
    +--------------+----------------------------------+
    
    $ openstack endpoint create --region RegionOne \
      image admin http://controller:9292
    
    +--------------+----------------------------------+
    | Field        | Value                            |
    +--------------+----------------------------------+
    | enabled      | True                             |
    | id           | 0c37ed58103f4300a84ff125a539032d |
    | interface    | admin                            |
    | region       | RegionOne                        |
    | region_id    | RegionOne                        |
    | service_id   | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
    | service_name | glance                           |
    | service_type | image                            |
    | url          | http://controller:9292           |
    +--------------+----------------------------------+
    

구성요소 설치 및 구성

주석

디폴트 구성 파일을 배포판에 따라 달라집니다. 기존 섹션 및 옵션을 변경하는 것 보다는 해당 섹션과 옵션을 추가해야 할 수도 있습니다. 또한 구성 내용 조각 중 생략 (...) 부분은 유지될 필요성이 있는 디폴트 구성 옵션을 가리킵니다.

  1. /etc/glance/glance-api.conf 파일을 편집하여 다음 작업을 완료합니다:

    • [database] 섹션에서, 데이터베이스 액세스를 구성합니다:

      [database]
      # ...
      connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
      

      GLANCE_DBPASS 를 이미지 서비스 데이터베이스를 위해 선택한 암호로 변경합니다.

    • [keystone_authtoken][paste_deploy] 섹션에 Identity 서비스 액세스를 구성합니다:

      [keystone_authtoken]
      # ...
      auth_uri = http://controller:5000
      auth_url = http://controller:35357
      memcached_servers = controller:11211
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      project_name = service
      username = glance
      password = GLANCE_PASS
      
      [paste_deploy]
      # ...
      flavor = keystone
      

      GLANCE_PASS 를 Identity 서비스에서 glance 사용자에 대해 선택한 암호로 변경합니다.

      주석

      [keystone_authtoken] 섹션 내 다른 옵션들을 주석 처리 또는 제거합니다.

    • [glance_store] 섹션에 로컬 파일 시스템 저장소와 이미지 파일 위치를 구성합니다:

      [glance_store]
      # ...
      stores = file,http
      default_store = file
      filesystem_store_datadir = /var/lib/glance/images/
      
  2. /etc/glance/glance-registry.conf 파일을 편집하여 다음 작업을 완료합니다:

    • [database] 섹션에서, 데이터베이스 액세스를 구성합니다:

      [database]
      # ...
      connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
      

      GLANCE_DBPASS 를 이미지 서비스 데이터베이스를 위해 선택한 암호로 변경합니다.

    • [keystone_authtoken][paste_deploy] 섹션에 Identity 서비스 액세스를 구성합니다:

      [keystone_authtoken]
      # ...
      auth_uri = http://controller:5000
      auth_url = http://controller:35357
      memcached_servers = controller:11211
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      project_name = service
      username = glance
      password = GLANCE_PASS
      
      [paste_deploy]
      # ...
      flavor = keystone
      

      GLANCE_PASS 를 Identity 서비스에서 glance 사용자에 대해 선택한 암호로 변경합니다.

      주석

      [keystone_authtoken] 섹션 내 다른 옵션들을 주석 처리 또는 제거합니다.

설치 마무리

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.