Oracle® Solaris での OpenStack (Kilo) のインストールと構成

印刷ビューの終了

更新: 2016 年 6 月
 
 

VM インスタンスのインストールと構成

このセクションで説明する問題は、特に VM インスタンスに関連しています。

VM インスタンスがエラー状態になっている

VM のインスタンスがエラー状態になる理由の 1 つは、ホストシステムとは異なるアーキテクチャーの VM インスタンスをインストールしようとしたというものです。この場合、アーキテクチャーの不一致を明確に示すエラーメッセージは表示されない可能性があります。この問題を回避するには、glance イメージストアにイメージをアップロードする際に、イメージの architecture プロパティーを正しく設定してください。Horizon を使用してイメージをアップロードする場合は、アップロード後にイメージのプロパティーを設定する必要があります。あるいは、コマンド行を使用すれば、イメージのアップロードとプロパティー値の設定を 1 つの glance image-create コマンドで行うことができます。例については、Glance リポジトリ用のイメージの準備を参照してください。

VM インスタンスのプロパティー値がゾーンのプロパティー値と一致しない

VM インスタンスに関して OpenStack が報告する情報の一部は、対応するゾーンに関して Oracle Solaris が報告する情報と一致しません。Horizon に表示される情報と nova コマンドで表示される情報は、zoneadm コマンドやほかの Oracle Solaris コマンドで表示される情報と一致しない場合があります。

名前

Horizon または nova list コマンドで表示される VM インスタンスの名前は、インスタンスを作成したときに割り当てた名前です (example-instance など)。zoneadm list コマンドで表示されるゾーンの名前は instance-00000001 のようになります。どのゾーンがどの VM インスタンスに関連付けられているかを特定するには、nova show コマンドを使用します。nova show の出力の中で、OS-EXT-SRV-ATTR:instance_name プロパティーの値はゾーンの名前、name プロパティーの値は VM インスタンスの名前です。

UUID

Horizon または nova show コマンドで表示される VM インスタンスの UUID は、zoneadm list -p コマンドで表示される同じゾーンの UUID と一致しません。zoneadm コマンドが表示する UUID は、Nova に使用される識別子とは異なる識別子です。

CPU

Horizon に表示される VM インスタンスの VCPU 数は、そのインスタンスで使用できる分割 CPU 数の限度においてのみ仮想化される、上限が定義された CPU の数です。この数からは、インスタンス内部の制限前の数を把握することはできません。psrinfo コマンドは、ゾーンに割り当てられている専用 CPU 数を報告します。

メモリー

Horizon に表示される VM インスタンスのメモリー量は、その VM インスタンスにログインしているときに prtconf コマンドで表示されるメモリー量とは異なる場合があります。Horizon は、VM インスタンスの作成に使用されたフレーバが指定しているメモリー量を表示します。prtconf コマンドは、すべてのシステムメモリーを報告します。

ストレージ

VM インスタンスが Zones on Shared Storage (ZOSS) を使用した非大域ゾーンである場合を除き、Horizon に表示される VM インスタンスのストレージ量は、その VM インスタンスにログインしているときに表示されるストレージ量とは異なる場合があります。

資格に関する問題

場合によっては、サービスコマンドの発行を妨げる、正しくない資格に関連したエラーメッセージが表示されることがあります。たとえば、glance コマンドを発行すると、次のエラーメッセージが生成されることがあります。

Invalid OpenStack Identity credentials.

このメッセージの根本原因は、そのつど異なる可能性があります。そのため、ログを検査して考えられる原因を限定する必要があります。例として glance サービスの場合は、Glance SMF サービスログの内容を参照してください。/var/log/glance/api.log で、次が報告されている可能性があります。

WARNING keystonemiddleware.auth_token [-] Authorization failed for token

glance 構成ファイルで Debug = True および Verbose = True を設定している場合は、/var/svc/log/application-openstack-glance-glance-api:default.log で、次のような、より詳細な情報が提供されます。

DEBUG keystonemiddleware.auth_token [-] Received request from user:
 user_id None, project_id None, roles None service: user_id None,
 project_id None, roles None 
__call__/usr/lib/python2.7/vendor-packages/keystonemiddleware/auth_token.py:821

問題を解決するために、次の領域を調査できます。

  • サービス構成ファイルをチェックして、関連するパラメータが正しく定義されていることを確認します。

  • サービスのグローバルシェル変数が正しいことを確認します。たとえば、Glance サービスの場合は、次の変数が設定されているべきです。

    • OS_USERNAME=glance

    • OS_PASSWORD=service-password

    • OS_PROJECT_NAME=service

    • OS_AUTH_URL=http://$CONTROLLER_ADMIN_NODE:5000/v2.0

報告されたエラーメッセージでコマンドが引き続き失敗する場合は、新しい資格を生成するためにサービスユーザーを作成し直すことが必要になる可能性があります。次の例について調べてみます。

# export OS_USERNAME=admin
# export OS_PASSWORD=service-password
# export OS_PROJECT_NAME=project
# export OS_AUTH_URL=http://$CONTROLLER_ADMIN_NODE:5000/v2.0

# openstack user list

このコマンドの出力から、破損したサービスユーザーの ID 番号を書きとめます。そのユーザーを削除し、正しい資格を使用して作成し直します。

# openstack user delete user-ID

# openstack user create --name glance --password service-password
# openstack user role add --user=glance --project=service --role=admin