第4章 デプロイメントのテスト
4.1. 基本的なテストの実行 リンクのコピーリンクがクリップボードにコピーされました!
基本的なテストでは、インスタンスが互いに ping を実行できることを確認します。テストでは、Floating IP SSH アクセスもチェックします。以下の例では、アンダークラウドからこのテストを実行する方法について説明します。
本手順では、個別のステップを多数実行する必要があります。便宜上、手順を小さいセクションに分けています。ただし、以下の順序ですべての手順を実行する必要があります。
In this setup, a flat network is used to create the _External_ network, and _VXLAN_ is used for the _Tenant_ networks. _VLAN External_ networks and _VLAN Tenant_ networks are also supported, depending on the desired deployment.
4.1.1. テスト用の新規ネットワークの作成 リンクのコピーリンクがクリップボードにコピーされました!
オーバークラウドにアクセスするための認証情報を読み込みます。
$ source /home/stack/overcloudrcオーバークラウドの外部からインスタンスにアクセスするための neutron の外部ネットワークを作成します。
$ openstack network create --external --project service --external --provider-network-type flat --provider-physical-network datacentre external新しい外部ネットワーク (前のステップで作成済み) に対応する neutron サブネットを作成します。
$ openstack subnet create --project service --no-dhcp --network external --gateway 192.168.37.1 --allocation-pool start=192.168.37.200,end=192.168.37.220 --subnet-range 192.168.37.0/24 external-subnetオーバークラウドのインスタンスを作成するのに使用する cirros イメージをダウンロードします。
$ wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.imgオーバークラウドの glance に cirros イメージをアップロードします。
$ openstack image create cirros --public --file ./cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bareオーバークラウドインスタンスに使用する
tinyフレーバーを作成します。$ openstack flavor create m1.tiny --ram 512 --disk 1 --publicインスタンスをホストするための VXLAN のテナントネットワークを作成します。
$ openstack network create net_test --provider-network-type=vxlan --provider-segment 100テナントネットワーク (前のステップで作成済み) のサブネットを作成します。
$ openstack subnet create --network net_test --subnet-range 123.123.123.0/24 testテナントネットワークの ID を特定して保存します。
$ net_mgmt_id=$(openstack network list | grep net_test | awk '{print $2}')インスタンス
cirros1を作成して、net_testネットワークとSSHセキュリティーグループにアタッチします。$ openstack server create --flavor m1.tiny --image cirros --nic net-id=$vlan1 --security-group SSH --key-name RDO_KEY --availability-zone nova:overcloud-novacompute-0.localdomain cirros1cirros2という 2 番目のインスタンスを作成して、そのインスタンスもnet_testネットワークとSSHセキュリティーグループにアタッチします。$ openstack server create --flavor m1.tiny --image cirros --nic net-id=$vlan1 --security-group SSH --key-name RDO_KEY --availability-zone nova:overcloud-novacompute-0.localdomain cirros2
4.1.2. テスト環境でのネットワークの設定 リンクのコピーリンクがクリップボードにコピーされました!
admin プロジェクトの ID を特定して保存します。
$ admin_project_id=$(openstack project list | grep admin | awk '{print $2}')admin プロジェクトのデフォルトのセキュリティーグループを特定して保存します。
$ admin_sec_group_id=$(openstack security group list | grep $admin_project_id | awk '{print $2}')admin のデフォルトセキュリティーグループに、ICMP トラフィックの受信を許可するルールを追加します。
$ openstack security group rule create $admin_sec_group_id --protocol icmp --ingressadmin のデフォルトセキュリティーグループに、ICMP トラフィックの送信を許可するルールを追加します。
$ openstack security group rule create $admin_sec_group_id --protocol icmp --egressadmin のデフォルトセキュリティーグループに、SSH トラフィックの受信を許可するルールを追加します。
$ openstack security group rule create $admin_sec_group_id --protocol tcp --dst-port 22 --ingressadmin のデフォルトセキュリティーグループに、SSH トラフィックの送信を許可するルールを追加します。
$ openstack security group rule create $admin_sec_group_id --protocol tcp --dst-port 22 --egress
4.1.3. 接続性のテスト リンクのコピーリンクがクリップボードにコピーされました!
-
horizon から、インスタンスの novnc コンソールにアクセスできるはずです。overcloudrc から取得したパスワードを使用して horizon に admin としてログインします。cirros イメージのデフォルトの認証情報は、ユーザー名が
cirros、パスワードがcubswin:)です。 novnc コンソールから、インスタンスが DHCP アドレスを受信していることを確認します。
$ ip addr show注記また、アンダークラウドから
nova console-log <instance id>のコマンドを実行して、インスタンスが DHCP アドレスを受信していることを確認することもできます。- ステップ 1 と 2 をその他すべてのインスタンスで繰り返します。
- あるインスタンスから、別のインスタンスの ping を試行します。これにより、オーバークラウドの基本的な テナント ネットワーク接続が検証されます。
- Floating IP を使用して他のインスタンスに到達できるかどうかを確認します。
4.1.4. デバイスの作成 リンクのコピーリンクがクリップボードにコピーされました!
cirros1インスタンスに関連付けられる Floating IP を外部ネットワーク上に作成します。$ openstack floating ip create externalFloating IP と
cirros1テナントの IP の間で NAT を処理するルーターを作成します。$ openstack router create testルーターのゲートウェイを外部ネットワークとなるように設定します。
$ openstack router set test --external-gateway externalテナントネットワークに接続されたルーターにインターフェイスを追加します。
$ openstack router add subnet test testステップ 1 で作成した Floating IP を特定して保存します。
$ floating_ip=$(openstack floating ip list | head -n -1 | grep -Eo '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+')Floating IP を
cirros1インスタンスに関連付けます。$ openstack server add floating ip cirros1 $floating_ip外部ネットワークにアクセス可能なノードからインスタンスへのログインを試みます。
$ ssh cirros@$floating_ip