Block 스토리지 서비스를 구성하기 전 선행조건
페이지 정보
본문
* Block 스토리지 서비스를 설치 및 구성하기 전에, 데이터베이스, 서비스 credential 및 API 엔드 포인트를 생성해야 합니다.
1. 데이터베이스를 생성하기 위하여, 다음 과정을 완료해야 합니다.
1) 데이터베이스 액세스 클라이언트를 사용하여 데이터베이스 서버에 root 사용자로 연결합니다.
$ mysql -u root -p
2) cinder 데이터베이스를 생성합니다.
MariaDB [(none)]> CREATE DATABASE cinder;
3) cinder 데이터베이스에 올바른 액세스를 부여합니다.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
IDENTIFIED BY 'CINDER_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
IDENTIFIED BY 'CINDER_DBPASS';
- CINDER_DBPASS 를 적절한 암호로 변경합니다.
4) 데이터베이스 접속 클라이언트를 종료합니다.
2. admin credential을 소스로 사용하여 관리자 전용 CLI 명령어에 대한 액세스를 갖습니다.
$ . admin-openrc
3. 서비스 credential을 생성하기 위해, 다음 스텝들을 완료합니다.
1) cinder 사용자를 생성합니다.
$ openstack user create --domain default --password-prompt cinder
User Password:
Repeat User Password:
+-----------------------+-------------------------------------------+
| Field | Value |
+-----------------------+-------------------------------------------+
| domain_id | default |
| enabled | True |
| id | 9d7e33de3e1a498390353819bc7d245d |
| name | cinder |
| options | {} |
| password_expires_at | None |
+-----------------------+-------------------------------------------+
2) admin role을 cinder 사용자에 추가합니다.
$ openstack role add --project service --user cinder admin
- 이 명령어는 출력이 없습니다.
3) ``cinderv2 `` 및 ``cinderv3 `` 서비스 엔티티를 생성합니다.
$ openstack service create --name cinderv2 \
--description "OpenStack Block Storage" volumev2
+-------------+-----------------------------------------+
| Field | Value |
+-------------+-----------------------------------------+
| description | OpenStack Block Storage |
| enabled | True |
| id | eb9fd245bdbc414695952e93f29fe3ac |
| name | cinderv2 |
| type | volumev2 |
+-------------+-----------------------------------------+
$ openstack service create --name cinderv3 \
--description "OpenStack Block Storage" volumev3
+-------------+------------------------------------------+
| Field | Value |
+-------------+------------------------------------------+
| description | OpenStack Block Storage |
| enabled | True |
| id | ab3bbbef780845a1a283490d281e7fda |
| name | cinderv3 |
| type | volumev3 |
+-------------+------------------------------------------+
- 블록 스토리지 서비스는 두 서비스 엔티티를 필요로 합니다.
4. 블록 스토리지 서비스 API 엔드 포인트를 생성합니다.
$ openstack endpoint create --region RegionOne \
volumev2 public http://controller:8776/v2/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 513e73819e14460fb904163f41ef3759 |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb9fd245bdbc414695952e93f29fe3ac |
| service_name | cinderv2 |
| service_type | volumev2 |
| url | http://controller:8776/v2/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev2 internal http://controller:8776/v2/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 6436a8a23d014cfdb69c586eff146a32 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb9fd245bdbc414695952e93f29fe3ac |
| service_name | cinderv2 |
| service_type | volumev2 |
| url | http://controller:8776/v2/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev2 admin http://controller:8776/v2/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | e652cf84dd334f359ae9b045a2c91d96 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb9fd245bdbc414695952e93f29fe3ac |
| service_name | cinderv2 |
| service_type | volumev2 |
| url | http://controller:8776/v2/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev3 public http://controller:8776/v3/%\(project_id\)s
+--------------+--------------------------------------------+
| Field | Value |
+--------------+--------------------------------------------+
| enabled | True |
| id | 03fa2c90153546c295bf30ca86b1344b |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | ab3bbbef780845a1a283490d281e7fda |
| service_name | cinderv3 |
| service_type | volumev3 |
| url | http://controller:8776/v3/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev3 internal http://controller:8776/v3/%\(project_id\)s
+--------------+--------------------------------------------+
| Field | Value |
+--------------+--------------------------------------------+
| enabled | True |
| id | 94f684395d1b41068c70e4ecb11364b2 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | ab3bbbef780845a1a283490d281e7fda |
| service_name | cinderv3 |
| service_type | volumev3 |
| url | http://controller:8776/v3/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev3 admin http://controller:8776/v3/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 4511c28a0f9840c78bacb25f10f62c98 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | ab3bbbef780845a1a283490d281e7fda |
| service_name | cinderv3 |
| service_type | volumev3 |
| url | http://controller:8776/v3/%(project_id)s |
+--------------+--------------------------------------------+
- 블록 스토리지 서비스는 각 서비스 엔티티에 대한 엔드 포인트를 필요로 합니다.
1. 데이터베이스를 생성하기 위하여, 다음 과정을 완료해야 합니다.
1) 데이터베이스 액세스 클라이언트를 사용하여 데이터베이스 서버에 root 사용자로 연결합니다.
$ mysql -u root -p
2) cinder 데이터베이스를 생성합니다.
MariaDB [(none)]> CREATE DATABASE cinder;
3) cinder 데이터베이스에 올바른 액세스를 부여합니다.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
IDENTIFIED BY 'CINDER_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
IDENTIFIED BY 'CINDER_DBPASS';
- CINDER_DBPASS 를 적절한 암호로 변경합니다.
4) 데이터베이스 접속 클라이언트를 종료합니다.
2. admin credential을 소스로 사용하여 관리자 전용 CLI 명령어에 대한 액세스를 갖습니다.
$ . admin-openrc
3. 서비스 credential을 생성하기 위해, 다음 스텝들을 완료합니다.
1) cinder 사용자를 생성합니다.
$ openstack user create --domain default --password-prompt cinder
User Password:
Repeat User Password:
+-----------------------+-------------------------------------------+
| Field | Value |
+-----------------------+-------------------------------------------+
| domain_id | default |
| enabled | True |
| id | 9d7e33de3e1a498390353819bc7d245d |
| name | cinder |
| options | {} |
| password_expires_at | None |
+-----------------------+-------------------------------------------+
2) admin role을 cinder 사용자에 추가합니다.
$ openstack role add --project service --user cinder admin
- 이 명령어는 출력이 없습니다.
3) ``cinderv2 `` 및 ``cinderv3 `` 서비스 엔티티를 생성합니다.
$ openstack service create --name cinderv2 \
--description "OpenStack Block Storage" volumev2
+-------------+-----------------------------------------+
| Field | Value |
+-------------+-----------------------------------------+
| description | OpenStack Block Storage |
| enabled | True |
| id | eb9fd245bdbc414695952e93f29fe3ac |
| name | cinderv2 |
| type | volumev2 |
+-------------+-----------------------------------------+
$ openstack service create --name cinderv3 \
--description "OpenStack Block Storage" volumev3
+-------------+------------------------------------------+
| Field | Value |
+-------------+------------------------------------------+
| description | OpenStack Block Storage |
| enabled | True |
| id | ab3bbbef780845a1a283490d281e7fda |
| name | cinderv3 |
| type | volumev3 |
+-------------+------------------------------------------+
- 블록 스토리지 서비스는 두 서비스 엔티티를 필요로 합니다.
4. 블록 스토리지 서비스 API 엔드 포인트를 생성합니다.
$ openstack endpoint create --region RegionOne \
volumev2 public http://controller:8776/v2/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 513e73819e14460fb904163f41ef3759 |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb9fd245bdbc414695952e93f29fe3ac |
| service_name | cinderv2 |
| service_type | volumev2 |
| url | http://controller:8776/v2/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev2 internal http://controller:8776/v2/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 6436a8a23d014cfdb69c586eff146a32 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb9fd245bdbc414695952e93f29fe3ac |
| service_name | cinderv2 |
| service_type | volumev2 |
| url | http://controller:8776/v2/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev2 admin http://controller:8776/v2/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | e652cf84dd334f359ae9b045a2c91d96 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | eb9fd245bdbc414695952e93f29fe3ac |
| service_name | cinderv2 |
| service_type | volumev2 |
| url | http://controller:8776/v2/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev3 public http://controller:8776/v3/%\(project_id\)s
+--------------+--------------------------------------------+
| Field | Value |
+--------------+--------------------------------------------+
| enabled | True |
| id | 03fa2c90153546c295bf30ca86b1344b |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | ab3bbbef780845a1a283490d281e7fda |
| service_name | cinderv3 |
| service_type | volumev3 |
| url | http://controller:8776/v3/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev3 internal http://controller:8776/v3/%\(project_id\)s
+--------------+--------------------------------------------+
| Field | Value |
+--------------+--------------------------------------------+
| enabled | True |
| id | 94f684395d1b41068c70e4ecb11364b2 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | ab3bbbef780845a1a283490d281e7fda |
| service_name | cinderv3 |
| service_type | volumev3 |
| url | http://controller:8776/v3/%(project_id)s |
+--------------+--------------------------------------------+
$ openstack endpoint create --region RegionOne \
volumev3 admin http://controller:8776/v3/%\(project_id\)s
+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| enabled | True |
| id | 4511c28a0f9840c78bacb25f10f62c98 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | ab3bbbef780845a1a283490d281e7fda |
| service_name | cinderv3 |
| service_type | volumev3 |
| url | http://controller:8776/v3/%(project_id)s |
+--------------+--------------------------------------------+
- 블록 스토리지 서비스는 각 서비스 엔티티에 대한 엔드 포인트를 필요로 합니다.
- 이전글Block스토리지 서비스 구성요소 설치 및 구성 21.08.19
- 다음글컨트롤러 노드에 대시보드 설치와 설정 21.08.06
댓글목록
등록된 댓글이 없습니다.