This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.第16章 Kuryr SDN の設定
16.1. Kuryr SDN および OpenShift Container Platform リンクのコピーリンクがクリップボードにコピーされました!
Kuryr SDN の設定機能はテクノロジープレビュー機能です。テクノロジープレビュー機能は Red Hat の実稼働環境でのサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
Red Hat のテクノロジープレビュー機能のサポートについての詳細は、https://access.redhat.com/support/offerings/techpreview/ を参照してください。
Kuryr (具体的には Kuryr-Kubernetes) は、CNI と OpenStack Neutron を使用して構築した SDN ソリューションです。Kuryr の利点として、幅広い Neutron SDN バックエンドを使用でき、Kubernetes Pod と OpenStack 仮想マシン (VM) の相互接続性が確保できる点が挙げられます。
Kuryr-Kubernetes と OpenShift Container Platform の統合は主に、OpenStack の仮想マシンで実行される OpenShift Container Platform クラスター用に設計されました。Kuryr-Kubernetes コンポーネントは OpenShift Container Platform の openshift-infra
namespace に Pod としてインストールされます。
-
kuryr-controller: 任意のノードにインストールされる単一のサービスインスタンスです。
Deployment
として OpenShift Container Platoform でモデリングされます。 -
kuryr-cni: 各 OpenShift Container Platform ノードで Kuryr を CNI ドライバーとしてインストールし、設定するコンテナーです。
DaemonSet
として OpenShift Container Platoform でモデリングされます。
16.2. インストール リンクのコピーリンクがクリップボードにコピーされました!
openshift-ansible を実行するシステムは OSP および OCP リポジトリーにサブスクライブしている必要があります。OpenStack 統合ではいくつかの追加パッケージが必要になります。依存関係をインストールするには、以下を実行します。
sudo yum install -y ansible openshift-ansible python2-shade python-dns \ python2-heatclient python2-octaviaclient python-openstackclient bind-utils
$ sudo yum install -y ansible openshift-ansible python2-shade python-dns \
python2-heatclient python2-octaviaclient python-openstackclient bind-utils
Kuryr-Kubernetes をネットワークプラグインとしてセットアップするために、Ansible ノードファイルで以下のパラメーターを指定します。
OpenStack 設定についてのドキュメントで説明されているように、OpenStack クラウドプロバイダーを指定する必要もあります。
インストール前に、OpenShift Container Platform ノードが内部名の解決に使用する DNS サーバーを指定する必要もあります。OpenStack はノード名の解決を追加設定なしで提供しません。以下の例では、10.20.30.40
は DNS サーバーの IP アドレスになります。
openshift_openstack_dns_nameservers=[10.20.30.40]
openshift_openstack_dns_nameservers=[10.20.30.40]
DNS サーバーが nsupdate
(RFC 2136) でリモート更新をサポートする場合、以下の設定を追加すると、Playbook はこれを自動的に設定できます。
openshift_openstack_external_nsupdate_keys={private: {"key_secret": "<nsupdate key>", "key_algorithm": "<nsupdate key algorithm>", "key_name": "<nsupdate key name>", "server": 10.20.30.40}}
openshift_openstack_external_nsupdate_keys={private: {"key_secret": "<nsupdate key>", "key_algorithm": "<nsupdate key algorithm>", "key_name": "<nsupdate key name>", "server": 10.20.30.40}}
最後に、provision_install.yml Playbook を実行して OpenShift Container Platform をインストールします。動的インベントリーファイル (inventory.py) を指定し、作成した Ansible ノードのファイルのパスを指定する必要があります。
ansible-playbook --user openshift -i /usr/share/ansible/openshift-ansible/playbooks/openstack/inventory.py -i ansible-nodes.txt /usr/share/ansible/openshift-ansible/playbooks/openstack/openshift-cluster/provision_install.yml
$ ansible-playbook --user openshift -i /usr/share/ansible/openshift-ansible/playbooks/openstack/inventory.py -i ansible-nodes.txt /usr/share/ansible/openshift-ansible/playbooks/openstack/openshift-cluster/provision_install.yml
作成したノードでカスタム設定してから OpenShift Container Platform をインストールする場合には、provision.yml および install.yml Playbook を別に実行してください。provision.yml は OpenStack リソース (ノードやネットワークなど) を作成し、install.yml は OpenShift Container Platform をインストールします。
16.3. 検証 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform のインストールが完了したら、Kuryr Pod が正常にデプロイされているかどうかを確認できます。
kuryr-cni Pod は、すべての OpenShift Container Platform ノードで実行する必要があります。単一の kuryr-controller インスタンスはこれらのノードのいずれかで実行する必要があります。