このセクションでは、コントローラーノードに Image サービス ( Glance )をインストールして設定する方法を説明します。簡単のため、この設定ではイメージをローカルファイルシステムに保存します。
データベース環境の設定
SQL データベースに root ユーザーで接続し、GlanceのデータベースとGlance データベースに接続するユーザーとアクセス権を作成します。作業は、コントローラーノードで実施します。ここでは、Glance のデータベース名は glance 、ユーザー名は glance 、データベースに接続するパスワードは GLANCE_DB_PASS としているので、実際の情報に置き換えてください。
[root@controller ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 27 Server version: 10.1.20-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> CREATE DATABASE glance; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \ -> IDENTIFIED BY 'GLANCE_DB_PASS'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \ -> IDENTIFIED BY 'GLANCE_DB_PASS'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> exit Bye [root@controller ~]#
クレデンシャルとエンドポイントの作成
admin のクレデンシャルを読み込み、管理者専用 CLI コマンドへのアクセス権を取得します。
[root@controller ~]# . openrc/admin-openrc [root@controller ~]#
glance ユーザーを作成します。ここでは、glance ユーザーのパスワードはGLANCE_PASS としているので、適宜変更して下さい。
[root@controller ~]# openstack user create --domain default --password-prompt glance User Password: GLANCE_PASS Repeat User Password: GLANCE_PASS +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | a8ac77bcc90e470f860f90b0734848ea | | name | glance | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ [root@controller ~]#
admin の ロールを glance ユーザーと service プロジェクトに追加します。
[root@controller ~]# openstack role add --project service --user glance admin [root@controller ~]#
glance サービスエンティティーを作成します。
[root@controller ~]# openstack service create --name glance \ > --description "OpenStack Image" image +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Image | | enabled | True | | id | d2f2daec67bb46c29db876e1c1f19d47 | | name | glance | | type | image | +-------------+----------------------------------+ [root@controller ~]#
Image service の API エンドポイントを作成します。
[root@controller ~]# openstack endpoint create --region RegionOne \ > image public http://controller:9292 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 6384b136508145978072e2e660a9cf0b | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | d2f2daec67bb46c29db876e1c1f19d47 | | service_name | glance | | service_type | image | | url | http://controller:9292 | +--------------+----------------------------------+ [root@controller ~]#
[root@controller ~]# openstack endpoint create --region RegionOne \ > image internal http://controller:9292 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | e0f6af2b29b64a4b8bffaf26f81af9f0 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | d2f2daec67bb46c29db876e1c1f19d47 | | service_name | glance | | service_type | image | | url | http://controller:9292 | +--------------+----------------------------------+ [root@controller ~]#
[root@controller ~]# openstack endpoint create --region RegionOne \ > image admin http://controller:9292 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 27a4f6bc3c554e1899cdc70a47910f19 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | d2f2daec67bb46c29db876e1c1f19d47 | | service_name | glance | | service_type | image | | url | http://controller:9292 | +--------------+----------------------------------+ [root@controller ~]#
コンポーネントのインストールと設定
openstack-rocky の yum リポジトリ(CentOS-Openstack-rocky.repo)を使って、 Image サービス(Glance) に必要なパッケージをインストールします。インストールは、コントローラーノードで実施します。
[root@controller ~]# yum --enablerepo=centos-openstack-rocky -y install openstack-glance 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * extras: ftp.nara.wide.ad.jp * updates: ftp.nara.wide.ad.jp 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ openstack-glance.noarch 1:17.0.0-2.el7 を インストール --> 依存性の処理をしています: python-glance = 1:17.0.0-2.el7 のパッケージ: 1:openstack-glance-17.0.0-2.el7.noarch --> トランザクションの確認を実行しています。 ---> パッケージ python-glance.noarch 1:17.0.0-2.el7 を インストール --> 依存性の処理をしています: python2-wsme >= 0.8 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-taskflow >= 2.16.0 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-swiftclient >= 2.2.0 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-oslo-vmware >= 0.11.1 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-os-brick >= 1.8.0 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-glance-store >= 0.26.1 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-cursive のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python2-boto のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python-retrying のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: python-httplib2 のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> 依存性の処理をしています: pysendfile のパッケージ: 1:python-glance-17.0.0-2.el7.noarch --> トランザクションの確認を実行しています。 ---> パッケージ pysendfile.x86_64 0:2.0.0-5.el7 を インストール ---> パッケージ python-boto.noarch 0:2.34.0-4.el7 を インストール --> 依存性の処理をしています: python-rsa のパッケージ: python-boto-2.34.0-4.el7.noarch ---> パッケージ python-httplib2.noarch 0:0.9.2-1.el7 を インストール ---> パッケージ python-retrying.noarch 0:1.2.3-4.el7 を インストール ---> パッケージ python2-cursive.noarch 0:0.2.2-1.el7 を インストール --> 依存性の処理をしています: python2-castellan >= 0.4.0 のパッケージ: python2-cursive-0.2.2-1.el7.noarch ---> パッケージ python2-glance-store.noarch 0:0.26.1-1.el7 を インストール --> 依存性の処理をしています: python2-oslo-privsep >= 1.23.0 のパッケージ: python2-glance-store-0.26.1-1.el7.noarch --> 依存性の処理をしています: python2-oslo-rootwrap のパッケージ: python2-glance-store-0.26.1-1.el7.noarch ---> パッケージ python2-os-brick.noarch 0:2.5.4-1.el7 を インストール --> 依存性の処理をしています: python2-os-win >= 3.0.0 のパッケージ: python2-os-brick-2.5.4-1.el7.noarch --> 依存性の処理をしています: sg3_utils のパッケージ: python2-os-brick-2.5.4-1.el7.noarch --> 依存性の処理をしています: device-mapper-multipath のパッケージ: python2-os-brick-2.5.4-1.el7.noarch ---> パッケージ python2-oslo-vmware.noarch 0:2.31.0-1.el7 を インストール --> 依存性の処理をしています: python-oslo-vmware-lang = 2.31.0-1.el7 のパッケージ: python2-oslo-vmware-2.31.0-1.el7.noarch --> 依存性の処理をしています: python2-suds >= 0.6 のパッケージ: python2-oslo-vmware-2.31.0-1.el7.noarch --> 依存性の処理をしています: python-lxml のパッケージ: python2-oslo-vmware-2.31.0-1.el7.noarch ---> パッケージ python2-swiftclient.noarch 0:3.6.0-1.el7 を インストール ---> パッケージ python2-taskflow.noarch 0:3.2.0-1.el7 を インストール --> 依存性の処理をしています: python2-automaton >= 1.9.0 のパッケージ: python2-taskflow-3.2.0-1.el7.noarch --> 依存性の処理をしています: python-networkx >= 1.10 のパッケージ: python2-taskflow-3.2.0-1.el7.noarch --> 依存性の処理をしています: python-networkx-core のパッケージ: python2-taskflow-3.2.0-1.el7.noarch ---> パッケージ python2-wsme.noarch 0:0.9.3-1.el7 を インストール --> 依存性の処理をしています: python-simplegeneric のパッケージ: python2-wsme-0.9.3-1.el7.noarch --> トランザクションの確認を実行しています。 ---> パッケージ device-mapper-multipath.x86_64 0:0.4.9-119.el7_5.1 を インストール --> 依存性の処理をしています: device-mapper-multipath-libs = 0.4.9-119.el7_5.1 のパッケージ: device-mapper-multipath-0.4.9-119.el7_5.1.x86_64 --> 依存性の処理をしています: libmultipath.so.0()(64bit) のパッケージ: device-mapper-multipath-0.4.9-119.el7_5.1.x86_64 --> 依存性の処理をしています: libmpathpersist.so.0()(64bit) のパッケージ: device-mapper-multipath-0.4.9-119.el7_5.1.x86_64 --> 依存性の処理をしています: libmpathcmd.so.0()(64bit) のパッケージ: device-mapper-multipath-0.4.9-119.el7_5.1.x86_64 ---> パッケージ python-lxml.x86_64 0:3.2.1-4.el7 を インストール --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.1.9)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.1.26)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.1.2)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.0.24)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.0.22)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.0.18)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1(LIBXML2_1.0.11)(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libxslt.so.1()(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 --> 依存性の処理をしています: libexslt.so.0()(64bit) のパッケージ: python-lxml-3.2.1-4.el7.x86_64 ---> パッケージ python-networkx.noarch 0:1.10-1.el7 を インストール ---> パッケージ python-networkx-core.noarch 0:1.10-1.el7 を インストール --> 依存性の処理をしています: scipy のパッケージ: python-networkx-core-1.10-1.el7.noarch ---> パッケージ python-oslo-vmware-lang.noarch 0:2.31.0-1.el7 を インストール ---> パッケージ python-simplegeneric.noarch 0:0.8-7.el7 を インストール ---> パッケージ python2-automaton.noarch 0:1.15.0-1.el7 を インストール ---> パッケージ python2-castellan.noarch 0:0.19.0-1.el7 を インストール ---> パッケージ python2-os-win.noarch 0:4.0.1-1.el7 を インストール ---> パッケージ python2-oslo-privsep.noarch 0:1.29.2-1.el7 を インストール --> 依存性の処理をしています: python-oslo-privsep-lang = 1.29.2-1.el7 のパッケージ: python2-oslo-privsep-1.29.2-1.el7.noarch ---> パッケージ python2-oslo-rootwrap.noarch 0:5.14.1-1.el7 を インストール ---> パッケージ python2-rsa.noarch 0:3.3-2.el7 を インストール --> 依存性の処理をしています: python-pyasn1 >= 0.1.3 のパッケージ: python2-rsa-3.3-2.el7.noarch ---> パッケージ python2-suds.noarch 0:0.7-0.4.94664ddd46a6.el7 を インストール ---> パッケージ sg3_utils.x86_64 0:1.37-12.el7 を インストール --> 依存性の処理をしています: sg3_utils-libs = 1.37-12.el7 のパッケージ: sg3_utils-1.37-12.el7.x86_64 --> 依存性の処理をしています: libsgutils2.so.2()(64bit) のパッケージ: sg3_utils-1.37-12.el7.x86_64 --> トランザクションの確認を実行しています。 ---> パッケージ device-mapper-multipath-libs.x86_64 0:0.4.9-119.el7_5.1 を インストール --> 依存性の処理をしています: librados.so.2()(64bit) のパッケージ: device-mapper-multipath-libs-0.4.9-119.el7_5.1.x86_64 ---> パッケージ libxslt.x86_64 0:1.1.28-5.el7 を インストール ---> パッケージ python-oslo-privsep-lang.noarch 0:1.29.2-1.el7 を インストール ---> パッケージ python2-pyasn1.noarch 0:0.1.9-7.el7 を インストール ---> パッケージ python2-scipy.x86_64 0:0.18.0-3.el7 を インストール --> 依存性の処理をしています: numpy のパッケージ: python2-scipy-0.18.0-3.el7.x86_64 --> 依存性の処理をしています: libgfortran.so.3(GFORTRAN_1.4)(64bit) のパッケージ: python2-scipy-0.18.0-3.el7.x86_64 --> 依存性の処理をしています: libgfortran.so.3(GFORTRAN_1.0)(64bit) のパッケージ: python2-scipy-0.18.0-3.el7.x86_64 --> 依存性の処理をしています: libtatlas.so.3()(64bit) のパッケージ: python2-scipy-0.18.0-3.el7.x86_64 --> 依存性の処理をしています: libquadmath.so.0()(64bit) のパッケージ: python2-scipy-0.18.0-3.el7.x86_64 --> 依存性の処理をしています: libgfortran.so.3()(64bit) のパッケージ: python2-scipy-0.18.0-3.el7.x86_64 ---> パッケージ sg3_utils-libs.x86_64 0:1.37-12.el7 を インストール --> トランザクションの確認を実行しています。 ---> パッケージ atlas.x86_64 0:3.10.1-12.el7 を インストール ---> パッケージ libgfortran.x86_64 0:4.8.5-28.el7_5.1 を インストール ---> パッケージ libquadmath.x86_64 0:4.8.5-28.el7_5.1 を インストール ---> パッケージ librados2.x86_64 2:12.2.5-0.el7 を インストール --> 依存性の処理をしています: libibverbs.so.1(IBVERBS_1.1)(64bit) のパッケージ: 2:librados2-12.2.5-0.el7.x86_64 --> 依存性の処理をしています: libibverbs.so.1(IBVERBS_1.0)(64bit) のパッケージ: 2:librados2-12.2.5-0.el7.x86_64 --> 依存性の処理をしています: liblttng-ust.so.0()(64bit) のパッケージ: 2:librados2-12.2.5-0.el7.x86_64 --> 依存性の処理をしています: libibverbs.so.1()(64bit) のパッケージ: 2:librados2-12.2.5-0.el7.x86_64 ---> パッケージ python2-numpy.x86_64 1:1.14.5-1.el7 を インストール --> 依存性の処理をしています: python2-nose のパッケージ: 1:python2-numpy-1.14.5-1.el7.x86_64 --> トランザクションの確認を実行しています。 ---> パッケージ libibverbs.x86_64 0:15-7.el7_5 を インストール --> 依存性の処理をしています: rdma-core(x86-64) = 15-7.el7_5 のパッケージ: libibverbs-15-7.el7_5.x86_64 ---> パッケージ lttng-ust.x86_64 0:2.10.0-1.el7 を インストール --> 依存性の処理をしています: liburcu-cds.so.6()(64bit) のパッケージ: lttng-ust-2.10.0-1.el7.x86_64 --> 依存性の処理をしています: liburcu-bp.so.6()(64bit) のパッケージ: lttng-ust-2.10.0-1.el7.x86_64 ---> パッケージ python-nose.noarch 0:1.3.7-7.el7 を インストール --> トランザクションの確認を実行しています。 ---> パッケージ rdma-core.x86_64 0:15-7.el7_5 を インストール --> 依存性の処理をしています: pciutils のパッケージ: rdma-core-15-7.el7_5.x86_64 ---> パッケージ userspace-rcu.x86_64 0:0.10.0-3.el7 を インストール --> トランザクションの確認を実行しています。 ---> パッケージ pciutils.x86_64 0:3.5.1-3.el7 を インストール --> 依存性解決を終了しました。 依存性を解決しました ================================================================================ Package アーキテクチャー バージョン リポジトリー 容量 ================================================================================ インストール中: openstack-glance noarch 1:17.0.0-2.el7 centos-openstack-rocky 78 k 依存性関連でのインストールをします: atlas x86_64 3.10.1-12.el7 base 4.5 M device-mapper-multipath x86_64 0.4.9-119.el7_5.1 updates 138 k device-mapper-multipath-libs x86_64 0.4.9-119.el7_5.1 updates 258 k libgfortran x86_64 4.8.5-28.el7_5.1 updates 299 k libibverbs x86_64 15-7.el7_5 updates 224 k libquadmath x86_64 4.8.5-28.el7_5.1 updates 188 k librados2 x86_64 2:12.2.5-0.el7 centos-ceph-luminous 2.8 M libxslt x86_64 1.1.28-5.el7 base 242 k lttng-ust x86_64 2.10.0-1.el7 centos-ceph-luminous 245 k pciutils x86_64 3.5.1-3.el7 base 93 k pysendfile x86_64 2.0.0-5.el7 centos-openstack-rocky 10 k python-boto noarch 2.34.0-4.el7 centos-openstack-rocky 1.6 M python-glance noarch 1:17.0.0-2.el7 centos-openstack-rocky 760 k python-httplib2 noarch 0.9.2-1.el7 extras 115 k python-lxml x86_64 3.2.1-4.el7 base 758 k python-networkx noarch 1.10-1.el7 centos-openstack-rocky 7.8 k python-networkx-core noarch 1.10-1.el7 centos-openstack-rocky 1.6 M python-nose noarch 1.3.7-7.el7 centos-openstack-rocky 276 k python-oslo-privsep-lang noarch 1.29.2-1.el7 centos-openstack-rocky 8.1 k python-oslo-vmware-lang noarch 2.31.0-1.el7 centos-openstack-rocky 9.4 k python-retrying noarch 1.2.3-4.el7 centos-openstack-rocky 16 k python-simplegeneric noarch 0.8-7.el7 centos-ceph-luminous 12 k python2-automaton noarch 1.15.0-1.el7 centos-openstack-rocky 37 k python2-castellan noarch 0.19.0-1.el7 centos-openstack-rocky 108 k python2-cursive noarch 0.2.2-1.el7 centos-openstack-rocky 53 k python2-glance-store noarch 0.26.1-1.el7 centos-openstack-rocky 266 k python2-numpy x86_64 1:1.14.5-1.el7 centos-openstack-rocky 3.7 M python2-os-brick noarch 2.5.4-1.el7 centos-openstack-rocky 1.1 M python2-os-win noarch 4.0.1-1.el7 centos-openstack-rocky 417 k python2-oslo-privsep noarch 1.29.2-1.el7 centos-openstack-rocky 30 k python2-oslo-rootwrap noarch 5.14.1-1.el7 centos-openstack-rocky 39 k python2-oslo-vmware noarch 2.31.0-1.el7 centos-openstack-rocky 206 k python2-pyasn1 noarch 0.1.9-7.el7 base 100 k python2-rsa noarch 3.3-2.el7 centos-openstack-rocky 63 k python2-scipy x86_64 0.18.0-3.el7 centos-openstack-rocky 12 M python2-suds noarch 0.7-0.4.94664ddd46a6.el7 centos-openstack-rocky 234 k python2-swiftclient noarch 3.6.0-1.el7 centos-openstack-rocky 162 k python2-taskflow noarch 3.2.0-1.el7 centos-openstack-rocky 679 k python2-wsme noarch 0.9.3-1.el7 centos-openstack-rocky 193 k rdma-core x86_64 15-7.el7_5 updates 48 k sg3_utils x86_64 1.37-12.el7 base 644 k sg3_utils-libs x86_64 1.37-12.el7 base 64 k userspace-rcu x86_64 0.10.0-3.el7 centos-ceph-luminous 93 k トランザクションの要約 ================================================================================ インストール 1 パッケージ (+43 個の依存関係のパッケージ) 総ダウンロード容量: 34 M インストール容量: 145 M Downloading packages: (1/44): device-mapper-multipath-0.4.9-119.el7_5.1.x86_64.r | 138 kB 00:00 (2/44): device-mapper-multipath-libs-0.4.9-119.el7_5.1.x86 | 258 kB 00:00 (3/44): libquadmath-4.8.5-28.el7_5.1.x86_64.rpm | 188 kB 00:00 (4/44): libgfortran-4.8.5-28.el7_5.1.x86_64.rpm | 299 kB 00:00 (5/44): libibverbs-15-7.el7_5.x86_64.rpm | 224 kB 00:00 (6/44): libxslt-1.1.28-5.el7.x86_64.rpm | 242 kB 00:00 (7/44): pciutils-3.5.1-3.el7.x86_64.rpm | 93 kB 00:00 (8/44): atlas-3.10.1-12.el7.x86_64.rpm | 4.5 MB 00:01 (9/44): pysendfile-2.0.0-5.el7.x86_64.rpm | 10 kB 00:00 warning: /var/cache/yum/x86_64/7/centos-ceph-luminous/packages/lttng-ust-2.10.0-1.el7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID e451e5b5: NOKEY lttng-ust-2.10.0-1.el7.x86_64.rpm の公開鍵がインストールされていません (10/44): lttng-ust-2.10.0-1.el7.x86_64.rpm | 245 kB 00:02 (11/44): openstack-glance-17.0.0-2.el7.noarch.rpm | 78 kB 00:02 (12/44): python-httplib2-0.9.2-1.el7.noarch.rpm | 115 kB 00:00 (13/44): librados2-12.2.5-0.el7.x86_64.rpm | 2.8 MB 00:03 (14/44): python-boto-2.34.0-4.el7.noarch.rpm | 1.6 MB 00:02 (15/44): python-networkx-1.10-1.el7.noarch.rpm | 7.8 kB 00:00 (16/44): python-glance-17.0.0-2.el7.noarch.rpm | 760 kB 00:02 (17/44): python-networkx-core-1.10-1.el7.noarch.rpm | 1.6 MB 00:01 (18/44): python-oslo-privsep-lang-1.29.2-1.el7.noarch.rpm | 8.1 kB 00:00 (19/44): python-oslo-vmware-lang-2.31.0-1.el7.noarch.rpm | 9.4 kB 00:00 (20/44): python-nose-1.3.7-7.el7.noarch.rpm | 276 kB 00:00 (21/44): python-retrying-1.2.3-4.el7.noarch.rpm | 16 kB 00:00 (22/44): python2-automaton-1.15.0-1.el7.noarch.rpm | 37 kB 00:00 (23/44): python2-castellan-0.19.0-1.el7.noarch.rpm | 108 kB 00:00 (24/44): python2-cursive-0.2.2-1.el7.noarch.rpm | 53 kB 00:00 (25/44): python-simplegeneric-0.8-7.el7.noarch.rpm | 12 kB 00:00 (26/44): python2-glance-store-0.26.1-1.el7.noarch.rpm | 266 kB 00:00 (27/44): python2-os-brick-2.5.4-1.el7.noarch.rpm | 1.1 MB 00:01 (28/44): python-lxml-3.2.1-4.el7.x86_64.rpm | 758 kB 00:06 (29/44): python2-os-win-4.0.1-1.el7.noarch.rpm | 417 kB 00:04 (30/44): python2-oslo-privsep-1.29.2-1.el7.noarch.rpm | 30 kB 00:00 (31/44): python2-oslo-rootwrap-5.14.1-1.el7.noarch.rpm | 39 kB 00:00 (32/44): python2-pyasn1-0.1.9-7.el7.noarch.rpm | 100 kB 00:00 (33/44): python2-numpy-1.14.5-1.el7.x86_64.rpm | 3.7 MB 00:08 (34/44): python2-oslo-vmware-2.31.0-1.el7.noarch.rpm | 206 kB 00:01 (35/44): python2-rsa-3.3-2.el7.noarch.rpm | 63 kB 00:00 (36/44): python2-suds-0.7-0.4.94664ddd46a6.el7.noarch.rpm | 234 kB 00:00 (37/44): python2-swiftclient-3.6.0-1.el7.noarch.rpm | 162 kB 00:00 (38/44): python2-taskflow-3.2.0-1.el7.noarch.rpm | 679 kB 00:01 (39/44): rdma-core-15-7.el7_5.x86_64.rpm | 48 kB 00:00 (40/44): sg3_utils-libs-1.37-12.el7.x86_64.rpm | 64 kB 00:00 (41/44): sg3_utils-1.37-12.el7.x86_64.rpm | 644 kB 00:00 (42/44): python2-wsme-0.9.3-1.el7.noarch.rpm | 193 kB 00:00 (43/44): userspace-rcu-0.10.0-3.el7.x86_64.rpm | 93 kB 00:00 (44/44): python2-scipy-0.18.0-3.el7.x86_64.rpm | 12 MB 00:46 -------------------------------------------------------------------------------- 合計 555 kB/s | 34 MB 01:03 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage から鍵を取得中です。 Importing GPG key 0xE451E5B5: Userid : "CentOS Storage SIG (http://wiki.centos.org/SpecialInterestGroup/Storage) <security@centos.org>" Fingerprint: 7412 9c0b 173b 071a 3775 951a d4a2 e50b e451 e5b5 Package : centos-release-storage-common-2-2.el7.centos.noarch (@extras) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage Running transaction check Running transaction test Transaction test succeeded Running transaction インストール中 : libquadmath-4.8.5-28.el7_5.1.x86_64 1/44 インストール中 : libgfortran-4.8.5-28.el7_5.1.x86_64 2/44 インストール中 : atlas-3.10.1-12.el7.x86_64 3/44 インストール中 : python-retrying-1.2.3-4.el7.noarch 4/44 インストール中 : pciutils-3.5.1-3.el7.x86_64 5/44 インストール中 : rdma-core-15-7.el7_5.x86_64 6/44 インストール中 : libibverbs-15-7.el7_5.x86_64 7/44 インストール中 : python2-pyasn1-0.1.9-7.el7.noarch 8/44 インストール中 : python2-rsa-3.3-2.el7.noarch 9/44 インストール中 : python-boto-2.34.0-4.el7.noarch 10/44 インストール中 : python-httplib2-0.9.2-1.el7.noarch 11/44 インストール中 : python-oslo-vmware-lang-2.31.0-1.el7.noarch 12/44 インストール中 : python2-automaton-1.15.0-1.el7.noarch 13/44 インストール中 : python2-swiftclient-3.6.0-1.el7.noarch 14/44 インストール中 : python2-suds-0.7-0.4.94664ddd46a6.el7.noarc 15/44 インストール中 : userspace-rcu-0.10.0-3.el7.x86_64 16/44 インストール中 : lttng-ust-2.10.0-1.el7.x86_64 17/44 インストール中 : 2:librados2-12.2.5-0.el7.x86_64 18/44 インストール中 : device-mapper-multipath-libs-0.4.9-119.el7_ 19/44 インストール中 : device-mapper-multipath-0.4.9-119.el7_5.1.x 20/44 インストール中 : python2-oslo-rootwrap-5.14.1-1.el7.noarch 21/44 インストール中 : libxslt-1.1.28-5.el7.x86_64 22/44 インストール中 : python-lxml-3.2.1-4.el7.x86_64 23/44 インストール中 : python2-oslo-vmware-2.31.0-1.el7.noarch 24/44 インストール中 : pysendfile-2.0.0-5.el7.x86_64 25/44 インストール中 : sg3_utils-libs-1.37-12.el7.x86_64 26/44 インストール中 : sg3_utils-1.37-12.el7.x86_64 27/44 インストール中 : python2-os-win-4.0.1-1.el7.noarch 28/44 インストール中 : python2-castellan-0.19.0-1.el7.noarch 29/44 インストール中 : python2-cursive-0.2.2-1.el7.noarch 30/44 インストール中 : python-oslo-privsep-lang-1.29.2-1.el7.noarc 31/44 インストール中 : python2-oslo-privsep-1.29.2-1.el7.noarch 32/44 インストール中 : python2-os-brick-2.5.4-1.el7.noarch 33/44 インストール中 : python2-glance-store-0.26.1-1.el7.noarch 34/44 インストール中 : python-nose-1.3.7-7.el7.noarch 35/44 インストール中 : 1:python2-numpy-1.14.5-1.el7.x86_64 36/44 インストール中 : python2-scipy-0.18.0-3.el7.x86_64 37/44 インストール中 : python-networkx-core-1.10-1.el7.noarch 38/44 インストール中 : python-networkx-1.10-1.el7.noarch 39/44 インストール中 : python2-taskflow-3.2.0-1.el7.noarch 40/44 インストール中 : python-simplegeneric-0.8-7.el7.noarch 41/44 インストール中 : python2-wsme-0.9.3-1.el7.noarch 42/44 インストール中 : 1:python-glance-17.0.0-2.el7.noarch 43/44 インストール中 : 1:openstack-glance-17.0.0-2.el7.noarch 44/44 検証中 : python-simplegeneric-0.8-7.el7.noarch 1/44 検証中 : python-nose-1.3.7-7.el7.noarch 2/44 検証中 : python-oslo-privsep-lang-1.29.2-1.el7.noarc 3/44 検証中 : python2-castellan-0.19.0-1.el7.noarch 4/44 検証中 : 2:librados2-12.2.5-0.el7.x86_64 5/44 検証中 : python-lxml-3.2.1-4.el7.x86_64 6/44 検証中 : rdma-core-15-7.el7_5.x86_64 7/44 検証中 : python2-oslo-vmware-2.31.0-1.el7.noarch 8/44 検証中 : python2-scipy-0.18.0-3.el7.x86_64 9/44 検証中 : atlas-3.10.1-12.el7.x86_64 10/44 検証中 : lttng-ust-2.10.0-1.el7.x86_64 11/44 検証中 : python-networkx-core-1.10-1.el7.noarch 12/44 検証中 : python2-rsa-3.3-2.el7.noarch 13/44 検証中 : 1:openstack-glance-17.0.0-2.el7.noarch 14/44 検証中 : python-retrying-1.2.3-4.el7.noarch 15/44 検証中 : python2-os-win-4.0.1-1.el7.noarch 16/44 検証中 : 1:python2-numpy-1.14.5-1.el7.x86_64 17/44 検証中 : python2-oslo-privsep-1.29.2-1.el7.noarch 18/44 検証中 : device-mapper-multipath-libs-0.4.9-119.el7_ 19/44 検証中 : libgfortran-4.8.5-28.el7_5.1.x86_64 20/44 検証中 : sg3_utils-libs-1.37-12.el7.x86_64 21/44 検証中 : python2-taskflow-3.2.0-1.el7.noarch 22/44 検証中 : pysendfile-2.0.0-5.el7.x86_64 23/44 検証中 : libxslt-1.1.28-5.el7.x86_64 24/44 検証中 : libibverbs-15-7.el7_5.x86_64 25/44 検証中 : sg3_utils-1.37-12.el7.x86_64 26/44 検証中 : python2-oslo-rootwrap-5.14.1-1.el7.noarch 27/44 検証中 : userspace-rcu-0.10.0-3.el7.x86_64 28/44 検証中 : python-networkx-1.10-1.el7.noarch 29/44 検証中 : python2-os-brick-2.5.4-1.el7.noarch 30/44 検証中 : libquadmath-4.8.5-28.el7_5.1.x86_64 31/44 検証中 : 1:python-glance-17.0.0-2.el7.noarch 32/44 検証中 : python2-suds-0.7-0.4.94664ddd46a6.el7.noarc 33/44 検証中 : device-mapper-multipath-0.4.9-119.el7_5.1.x 34/44 検証中 : python2-glance-store-0.26.1-1.el7.noarch 35/44 検証中 : python2-swiftclient-3.6.0-1.el7.noarch 36/44 検証中 : python2-automaton-1.15.0-1.el7.noarch 37/44 検証中 : python-oslo-vmware-lang-2.31.0-1.el7.noarch 38/44 検証中 : python2-cursive-0.2.2-1.el7.noarch 39/44 検証中 : python-httplib2-0.9.2-1.el7.noarch 40/44 検証中 : python2-pyasn1-0.1.9-7.el7.noarch 41/44 検証中 : pciutils-3.5.1-3.el7.x86_64 42/44 検証中 : python-boto-2.34.0-4.el7.noarch 43/44 検証中 : python2-wsme-0.9.3-1.el7.noarch 44/44 インストール: openstack-glance.noarch 1:17.0.0-2.el7 依存性関連をインストールしました: atlas.x86_64 0:3.10.1-12.el7 device-mapper-multipath.x86_64 0:0.4.9-119.el7_5.1 device-mapper-multipath-libs.x86_64 0:0.4.9-119.el7_5.1 libgfortran.x86_64 0:4.8.5-28.el7_5.1 libibverbs.x86_64 0:15-7.el7_5 libquadmath.x86_64 0:4.8.5-28.el7_5.1 librados2.x86_64 2:12.2.5-0.el7 libxslt.x86_64 0:1.1.28-5.el7 lttng-ust.x86_64 0:2.10.0-1.el7 pciutils.x86_64 0:3.5.1-3.el7 pysendfile.x86_64 0:2.0.0-5.el7 python-boto.noarch 0:2.34.0-4.el7 python-glance.noarch 1:17.0.0-2.el7 python-httplib2.noarch 0:0.9.2-1.el7 python-lxml.x86_64 0:3.2.1-4.el7 python-networkx.noarch 0:1.10-1.el7 python-networkx-core.noarch 0:1.10-1.el7 python-nose.noarch 0:1.3.7-7.el7 python-oslo-privsep-lang.noarch 0:1.29.2-1.el7 python-oslo-vmware-lang.noarch 0:2.31.0-1.el7 python-retrying.noarch 0:1.2.3-4.el7 python-simplegeneric.noarch 0:0.8-7.el7 python2-automaton.noarch 0:1.15.0-1.el7 python2-castellan.noarch 0:0.19.0-1.el7 python2-cursive.noarch 0:0.2.2-1.el7 python2-glance-store.noarch 0:0.26.1-1.el7 python2-numpy.x86_64 1:1.14.5-1.el7 python2-os-brick.noarch 0:2.5.4-1.el7 python2-os-win.noarch 0:4.0.1-1.el7 python2-oslo-privsep.noarch 0:1.29.2-1.el7 python2-oslo-rootwrap.noarch 0:5.14.1-1.el7 python2-oslo-vmware.noarch 0:2.31.0-1.el7 python2-pyasn1.noarch 0:0.1.9-7.el7 python2-rsa.noarch 0:3.3-2.el7 python2-scipy.x86_64 0:0.18.0-3.el7 python2-suds.noarch 0:0.7-0.4.94664ddd46a6.el7 python2-swiftclient.noarch 0:3.6.0-1.el7 python2-taskflow.noarch 0:3.2.0-1.el7 python2-wsme.noarch 0:0.9.3-1.el7 rdma-core.x86_64 0:15-7.el7_5 sg3_utils.x86_64 0:1.37-12.el7 sg3_utils-libs.x86_64 0:1.37-12.el7 userspace-rcu.x86_64 0:0.10.0-3.el7 完了しました! [root@controller ~]#
Glance のAPI 設定ファイル( /etc/glance/glance-api.conf )を編集し、以下の設定をします。
[root@controller ~]# vi /etc/glance/glance-api.conf
[database] セクションで、データベースのアクセス方法を設定します。ここでは、glance データベースに接続するパスワードは GLANCE_DB_PASS としているので、実際の情報に置き換えてください。
[database] # ... connection = mysql+pymysql://glance:GLANCE_DB_PASS@controller/glance
[keystone_authtoken] セクションと [paste_deploy] セクションで、認証サービス( Keystone )へのアクセス方法を設定します。ここでは、glance ユーザーのパスワードは GLANCE_PASS としているので、実際の情報に置き換えてください。
[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 [paste_deploy] # ... flavor = keystone
[glance_store] セクションにおいて、ローカルファイルシステムストアおよびイメージファイルの場所を設定します。
[glance_store] # ... stores = file,http default_store = file filesystem_store_datadir = /var/lib/glance/images/
Glance の registry 設定ファイル( /etc/glance/glance-registry.conf )を編集し、以下の設定をします。
[root@controller ~]# vi /etc/glance/glance-registry.conf
[database] セクションで、データベースのアクセス方法を設定します。ここでは、glance データベースに接続するパスワードは GLANCE_DB_PASS としているので、実際の情報に置き換えてください。
[database] # ... connection = mysql+pymysql://glance:GLANCE_DB_PASS@controller/glance
[keystone_authtoken] セクションと [paste_deploy] セクションで、認証サービス( Keystone )へのアクセス方法を設定します。ここでは、glance ユーザーのパスワードは GLANCE_PASS としているので、実際の情報に置き換えてください。
[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 [paste_deploy] # ... flavor = keystone
Image サービス( Glance )データベースを展開します。
[root@controller ~]# su -s /bin/sh -c "glance-manage db_sync" glance /usr/lib/python2.7/site-packages/oslo_db/sqlalchemy/enginefacade.py:1352: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade expire_on_commit=expire_on_commit, _conf=conf) INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running upgrade -> liberty, liberty initial INFO [alembic.runtime.migration] Running upgrade liberty -> mitaka01, add index on created_at and updated_at columns of 'images' table INFO [alembic.runtime.migration] Running upgrade mitaka01 -> mitaka02, update metadef os_nova_server INFO [alembic.runtime.migration] Running upgrade mitaka02 -> ocata_expand01, add visibility to images INFO [alembic.runtime.migration] Running upgrade ocata_expand01 -> pike_expand01, empty expand for symmetry with pike_contract01 INFO [alembic.runtime.migration] Running upgrade pike_expand01 -> queens_expand01 INFO [alembic.runtime.migration] Running upgrade queens_expand01 -> rocky_expand01, add os_hidden column to images table INFO [alembic.runtime.migration] Running upgrade rocky_expand01 -> rocky_expand02, add os_hash_algo and os_hash_value columns to images table INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. データベースが rocky_expand02 にアップグレードされました。現在のリビジョン: rocky_expand02 INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. Database migration is up to date. No migration needed. INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.runtime.migration] Running upgrade mitaka02 -> ocata_contract01, remove is_public from images INFO [alembic.runtime.migration] Running upgrade ocata_contract01 -> pike_contract01, drop glare artifacts tables INFO [alembic.runtime.migration] Running upgrade pike_contract01 -> queens_contract01 INFO [alembic.runtime.migration] Running upgrade queens_contract01 -> rocky_contract01 INFO [alembic.runtime.migration] Running upgrade rocky_contract01 -> rocky_contract02 INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. データベースが rocky_contract02 にアップグレードされました。現在のリビジョン: rocky_contract02 INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. データベースの同期に成功しました。 [root@controller ~]#
ファイアウォールでの通信許可
Image サービス( Glance )で必要となる TCP 9191 と 9292 通信を許可します。
[root@controller ~]# firewall-cmd --add-port=9191/tcp --zone=public --permanent success [root@controller ~]# [root@controller ~]# firewall-cmd --add-port=9292/tcp --zone=public --permanent success [root@controller ~]#
firewalld をリロードし、設定を反映します。
[root@controller ~]# firewall-cmd --reload success [root@controller ~]#
インストールの最後
Image サービス( Glance )の自動起動を有効化します。
■ 自動起動の有効化 [root@controller ~]# systemctl enable openstack-glance-api.service \ > openstack-glance-registry.service Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-glance-api.service to /usr/lib/systemd/system/openstack-glance-api.service. Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-glance-registry.service to /usr/lib/systemd/system/openstack-glance-registry.service. [root@controller ~]# ■ 自動起動の状態確認 [root@controller ~]# systemctl is-enabled openstack-glance-api.service openstack-glance-registry.service enabled enabled [root@controller ~]#
Image サービス( Glance )を再起動します。
■ 再起動 [root@controller ~]# systemctl restart openstack-glance-api.service \ > openstack-glance-registry.service ][root@controller ~]# ■ 起動状態の確認 [root@controller ~]# systemctl status openstack-glance-api.service openstack-glance-registry.service ● openstack-glance-api.service - OpenStack Image Service (code-named Glance) API server Loaded: loaded (/usr/lib/systemd/system/openstack-glance-api.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-10-21 11:39:06 JST; 8s ago Main PID: 4063 (glance-api) CGroup: /system.slice/openstack-glance-api.service ├─4063 /usr/bin/python2 /usr/bin/glance-api ├─4087 /usr/bin/python2 /usr/bin/glance-api └─4088 /usr/bin/python2 /usr/bin/glance-api 10月 21 11:39:06 controller glance-api[4063]: /usr/lib/python2.7/site-packa.... 10月 21 11:39:06 controller glance-api[4063]: return pkg_resources.EntryPoi...) 10月 21 11:39:06 controller glance-api[4063]: /usr/lib/python2.7/site-packa.... 10月 21 11:39:06 controller glance-api[4063]: return pkg_resources.EntryPoi...) 10月 21 11:39:07 controller glance-api[4063]: /usr/lib/python2.7/site-packa.... 10月 21 11:39:07 controller glance-api[4063]: return pkg_resources.EntryPoi...) 10月 21 11:39:07 controller glance-api[4063]: /usr/lib/python2.7/site-packa.... 10月 21 11:39:07 controller glance-api[4063]: return pkg_resources.EntryPoi...) 10月 21 11:39:07 controller glance-api[4063]: /usr/lib/python2.7/site-packa...r 10月 21 11:39:07 controller glance-api[4063]: val = callable(*args, **kw) ● openstack-glance-registry.service - OpenStack Image Service (code-named Glance) Registry server Loaded: loaded (/usr/lib/systemd/system/openstack-glance-registry.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-10-21 11:39:06 JST; 7s ago Main PID: 4064 (glance-registry) CGroup: /system.slice/openstack-glance-registry.service ├─4064 /usr/bin/python2 /usr/bin/glance-registry ├─4085 /usr/bin/python2 /usr/bin/glance-registry └─4086 /usr/bin/python2 /usr/bin/glance-registry 10月 21 11:39:06 controller glance-registry[4064]: /usr/lib/python2.7/site-p... 10月 21 11:39:06 controller glance-registry[4064]: return pkg_resources.Entr... 10月 21 11:39:06 controller glance-registry[4064]: /usr/lib/python2.7/site-p... 10月 21 11:39:06 controller glance-registry[4064]: return pkg_resources.Entr... 10月 21 11:39:06 controller glance-registry[4064]: /usr/lib/python2.7/site-p... 10月 21 11:39:06 controller glance-registry[4064]: return pkg_resources.Entr... 10月 21 11:39:07 controller glance-registry[4064]: /usr/lib/python2.7/site-p... 10月 21 11:39:07 controller glance-registry[4064]: debtcollector.deprecate("... 10月 21 11:39:07 controller glance-registry[4064]: /usr/lib/python2.7/site-p... 10月 21 11:39:07 controller glance-registry[4064]: val = callable(*args, **kw) Hint: Some lines were ellipsized, use -l to show in full. [root@controller ~]#