第8章 カスタムロールおよびカスタムサービスの使用
オールインワンの Red Hat OpenStack Platform (RHOSP) インストールは、すべての OpenStack サービスを含む単一ノードで実行されます。
/usr/share/openstack-tripleo-heat-templates/roles
ディレクトリーの Standalone.yaml
ロールファイルは、オールインワンインストールのすべてのサービスが含まれる設定ファイルです。Standalone.yaml
ロールファイルのコピーを作成して変更し、インストール内のサービスを有効および無効にすることができます。
Standalone.yaml
ファイルには、standalone
ロールのサービスのリストが含まれています。以下の例を使用して、このファイルの構文を説明します。
- name: Standalone description: | A standalone role that includes a minimal set of services. Use this role for testing in a single node configuration with the `openstack tripleo deploy --standalone` command, or with the `openstack overcloud deploy` command. CountDefault: 1 tags: - primary - controller disable_constraints: True ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator ... - OS::TripleO::Services::Tuned - OS::TripleO::Services::Vpp - OS::TripleO::Services::Zaqar
このロールファイルをデプロイコマンドに追加して、Standalone ロールでスタックを設定します。このロールには、ロールファイルの ServicesDefault:
セクションに含めたサービスが含まれます。
[stack@all-in-one]$ sudo openstack tripleo deploy --templates -r /usr/share/openstack-tripleo-heat-templates/roles/Standalone.yaml
ただし、プロダクションのマルチノード Red Hat OpenStack Platform 環境では、すべてのサービスを単一のノードに含めるのではなく、OpenStack サービスの一部が含まれるロールを各ノードに割り当てます。たとえば、デフォルトの Controller ロールには管理、ネットワーク、および高可用性サービスが含まれ、デフォルトの Compute ロールにはコンピューティングサービスが含まれます。マルチノード環境のデフォルトのロールファイルは、/usr/share/openstack-tripleo-heat-templates/roles_data.yaml
ファイルです。このファイルで、以下のロール種別を定義します。
- Controller
- Compute
- BlockStorage
- ObjectStorage
- CephStorage
以下の例を使用して、マルチノード環境におけるロールの構文を説明します。
----` - name: Controller description: | Controller role that contains all of the services for database, messaging and network functions.ServicesDefault: - OS::TripleO::Services::AuditD - OS::TripleO::Services::CACerts - OS::TripleO::Services::CephClient … - name: Compute description: | Basic Compute Node role ServicesDefault: - OS::TripleO::Services::AuditD - OS::TripleO::Services::CACerts - OS::TripleO::Services::CephClient … ----`
デプロイメントコマンドを実行するたびに、ロールファイルを追加する必要があります。デプロイメントコマンドで -r
引数を使用し、このファイルをオーバーライドしてカスタムロールファイルを使用できます。
----` [stack@all-in-one]$ sudo openstack tripleo deploy --templates -r ~/templates/roles_data-custom.yaml ----`
8.1. オールインワン Red Hat OpenStack Platform 環境でのサービスの有効化および無効化
お使いの環境で個別のサービスを有効または無効にするには、以下の手順を実施します。
手順
サービスを有効にするには、新しい環境ファイルを作成し、有効にするサービスから値
OS::Heat::None
を削除します。- OS::TripleO::Services::<SERVICE>:
この環境ファイルをデプロイメントコマンドに追加します。
サービスを無効にするには、新しい環境ファイルを作成し、無効にするサービスに値
OS::Heat::None
を含めます。- OS::TripleO::Services::<SERVICE>: OS::Heat::None
この環境ファイルをデプロイメントコマンドに追加します。