在前回の記事では、Kolla と Kolla-Ansible を使用して OpenStack をデプロイする方法を紹介しました。。設定に関しては、すべて 内で設定され、その他は Kolla-Ansible のテンプレートによって処理されます。しかし、この方法ではデプロイの柔軟性に欠け、特定の環境に合わせたカスタマイズが難しいため、config override という手法によるカスタム設定(custom config)が導入されました。本記事では、config override を使用して Kolla-Ansible でデプロイされた OpenStack の設定ファイルを変更する方法を紹介します。globals.yml
目次
設定方法
同様に にて、任意のフォルダに変更することが可能です。globals.yml` 中我們可以找到一行設定 config overrides 檔案的資料夾。預設值是 `/etc/kolla/config
# Location of configuration overrides
#node_custom_config: "/etc/kolla/config"
Kolla-Ansible は、 内のファイルを探します。設定ファイルのオーバーライドは、基本的に OpenStack プロジェクト全体(例:Nova)、OpenStack サービス(例:nova-api)、または特定のホスト上のサービス(例:controller02 上の nova-api)に対して行うことができ、非常に柔軟な運用が可能です。/etc/kolla/config/<< 服務名稱 >>/<< 設定檔 >>
また、すべてのサービスの設定を一括でオーバーライドしたい場合、Kolla-Ansible は というファイルを探します。/etc/kolla/config/global.conf
設定例
OpenStack上の仮想マシンでネステッド仮想化を有効にするには、libvirtのパラメータであるcpu_modeをhost-passthroughに設定する必要があります。
その際、新しく を作成し、以下の 2 行を記述します。/etc/kolla/config/nova/nova-compute.conf
[libvirt]
cpu_mode=host-passthrough
もし compute01 というホスト上で CPU と RAM の割り当て比率(allocation ratio)を変更したい場合は、 を作成して以下を記述します。/etc/kolla/config/nova/compute01/nova-compute.conf
[DEFAULT]
cpu_allocation_ratio = 16.0
ram_allocation_ratio = 2.0
最後に、すべてのサービスのデータベース接続プールサイズを変更したい場合は、新しい ファイルを作成して書き込みます。/etc/kolla/config/global.conf
[database]
max_pool_size = 100
ポリシー設定
policy.json の設定方法は、一般的なサービスの設定ファイルとは少し異なります。完全な policy ファイルをそのプロジェクトのディレクトリ内に配置する必要があります。Kolla-Ansible はそのファイルを使用して、デフォルトの policy.json ファイルを上書きします。
例えば、Neutron の policy.json を上書きしたい場合、デプロイ担当者は Neutron のソースコードから完全な policy.json を取得し、修正した上で 配下に配置します。/etc/kolla/config/neutron/policy.json
デプロイ後の設定変更
Kolla-Ansible では、デプロイ済みの OpenStack クラスターの設定変更も非常に簡単です。以下のコマンドを実行するだけです:
kolla-ansible reconfigure
これにより、変更された設定ファイルが環境にデプロイされ、対応するコンテナが再起動されます。
結論
設定の上書き(config override)を利用することで、運用者は各サービス、さらにはホスト上の特定のサービスに対して、容易に設定の調整を行うことができます。これにより、Kolla-Ansible を使用した OpenStack のデプロイの柔軟性が高まり、各デプロイ要件に合わせたカスタマイズが可能になります。
リファレンス
著作権表示:このブログのすべての記事は、以下のライセンスのもとで提供されています。 CC BY-NC-SA 4.0 (別途記載がある場合を除く)

