仮想マシンにフローティングIPが割り当てられるたびに、ドメインプリセットを使用してサブドメインを自動的に作成する
ネットワークのDNS設定
「管理」>「ネットワーク」>「ネットワーク」の順に移動し、ネットワーク一覧から「ネットワーク名」をクリックして、アクションボタンの「サブネットを編集」を選択します。「サブネットの詳細」画面で、DNSネームサーバーを入力してください(コントローラーのIPアドレスまたはVIPを入力します)。その後、「保存」をクリックします。

コンソールに接続
Warning: Permanently added '192.168.1.210' (ECDSA) to the list of known hosts.
Password:
Welcome to the Cube Appliance
Last login: Wed Feb 4 05:26:05 2020 from 192.168.1.22
#
サーバーの認証情報を読み込む
# . /etc/admin-openrc.sh
ゾーンを作成する
+----------------+--------------------------------------+
| Field | Value |
+----------------+--------------------------------------+
| action | CREATE |
| attributes | |
| created_at | 2020-02-05T04:54:29.000000 |
| description | None |
| id | 20af6f9c-b9a6-4b1d-a912-487b86fb9c6d |
| masters | |
| name | bigstack.co. |
| pool_id | 794ccc2c-d751-44fe-b57f-8894c9f5c842 |
| project_id | 03525522f7c547cd88627c626896d04a |
| serial | 1580964869 |
| status | PENDING |
| transferred_at | None |
| ttl | 3600 |
| type | PRIMARY |
| updated_at | None |
| version | 1 |
+----------------+--------------------------------------+
[network_id] ネットワーク一覧を表示
# openstack network list
+--------------------------------------+-------------+--------------------------------------+
| ID | Name | Subnets |
+--------------------------------------+-------------+--------------------------------------+
| 62420cb0-67c3-476a-ae7b-09d64698b303 | lb-mgmt-net | fcce41dd-b99a-482c-8117-b6791f6ae743 |
| bdf01063-4500-4266-9363-36414ba6d252 | internet | 3caa9b99-e3a9-453c-9b91-13dd67fa78dd |
| f5050464-a1e4-4e19-8c04-3949a5cf0340 | private | 24d713e8-5db4-4fc5-bac0-747547737bb0 |
+--------------------------------------+-------------+--------------------------------------+
[dns_domain] プライベートネットワーク [network_id] のデフォルトドメインを bigstack.co. に設定します
# neutron net-update f5050464-a1e4-4e19-8c04-3949a5cf0340 --dns_domain bigstack.co.
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Updated network: f5050464-a1e4-4e19-8c04-3949a5cf0340
# openstack network show f5050464-a1e4-4e19-8c04-3949a5cf0340
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | nova |
| created_at | 2020-02-04T06:41:08Z |
| description | |
| dns_domain | bigstack.co. |
| id | f5050464-a1e4-4e19-8c04-3949a5cf0340 |
| ipv4_address_scope | None |
| ipv6_address_scope | None |
| is_default | None |
| is_vlan_transparent | None |
| mtu | 1450 |
| name | private |
| port_security_enabled | True |
| project_id | 03525522f7c547cd88627c626896d04a |
| provider:network_type | vxlan |
| provider:physical_network | None |
| provider:segmentation_id | 100 |
| qos_policy_id | None |
| revision_number | 6 |
| router:external | Internal |
| segments | None |
| shared | False |
| status | ACTIVE |
| subnets | 24d713e8-5db4-4fc5-bac0-747547737bb0 |
| tags | |
| updated_at | 2020-02-05T05:30:48Z |
+---------------------------+--------------------------------------+
プライベートネットワーク [network_id] 上に仮想マシンを作成する
# openstack server create --image Cirros --flavor m1.tiny --nic net-id=f5050464-a1e4-4e19-8c04-3949a5cf0340 test-1
+-------------------------------------+----------------------------------------------------------+
| Field | Value |
+-------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig | AUTO |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | sky8 |
| OS-EXT-SRV-ATTR:hypervisor_hostname | sky8 |
| OS-EXT-SRV-ATTR:instance_name | instance-0000000f |
| OS-EXT-STS:power_state | Running |
| OS-EXT-STS:task_state | None |
| OS-EXT-STS:vm_state | active |
| OS-SRV-USG:launched_at | 2020-02-05T05:32:19.000000 |
| OS-SRV-USG:terminated_at | None |
| accessIPv4 | |
| accessIPv6 | |
| addresses | private=192.168.100.27 |
| config_drive | |
| created | 2020-02-05T05:32:01Z |
| flavor | m1.tiny (5fb04908-6596-43bd-98e2-9bd3acb7d970) |
| hostId | 56672bf7f406222f8d15759ae92bc92ea3e89098b8cff785ef1133a6 |
| id | e136f2ad-3c33-40c9-9248-11cd5c49411e |
| image | |
| key_name | roy |
| name | test-1 |
| progress | 0 |
| project_id | 03525522f7c547cd88627c626896d04a |
| properties | |
| security_groups | name='default' |
| status | ACTIVE |
| updated | 2020-02-05T05:32:19Z |
| user_id | d23281f2c2d141af983071f86e53fa3c |
| volumes_attached | id='fe6b225e-4ef8-47b0-b9b1-62cf3d9e57ce' |
+-------------------------------------+----------------------------------------------------------+
[port_id] ネットワークポートID {#port_id-look-up-for-network-port-id} を検索
# openstack port list
+--------------------------------------+------------------------+-------------------+-------------------------------------------------------------------------------+--------+
| ID | Name | MAC Address | Fixed IP Addresses | Status |
+--------------------------------------+------------------------+-------------------+-------------------------------------------------------------------------------+--------+
| 982ddbba-05ed-4665-be07-d7bb28311212 | | fa:16:3e:58:df:bb | ip_address='192.168.100.27', subnet_id='24d713e8-5db4-4fc5-bac0-747547737bb0' | ACTIVE |
+--------------------------------------+------------------------+-------------------+-------------------------------------------------------------------------------+--------+
[port_id] によるネットワークポートの詳細を表示する
# openstack port show 982ddbba-05ed-4665-be07-d7bb28311212
+-----------------------+-------------------------------------------------------------------------------+
| Field | Value |
+-----------------------+-------------------------------------------------------------------------------+
| admin_state_up | UP |
| allowed_address_pairs | |
| binding_host_id | sky8 |
| binding_profile | |
| binding_vif_details | port_filter='True' |
| binding_vif_type | bridge |
| binding_vnic_type | normal |
| created_at | 2020-02-05T05:32:05Z |
| data_plane_status | None |
| description | |
| device_id | e136f2ad-3c33-40c9-9248-11cd5c49411e |
| device_owner | compute:nova |
| dns_assignment | fqdn='test-1.cube.local.', hostname='test-1', ip_address='192.168.100.27' |
| dns_name | test-1 |
| extra_dhcp_opts | |
| fixed_ips | ip_address='192.168.100.27', subnet_id='24d713e8-5db4-4fc5-bac0-747547737bb0' |
| id | 982ddbba-05ed-4665-be07-d7bb28311212 |
| ip_address | None |
| mac_address | fa:16:3e:58:df:bb |
| name | |
| network_id | f5050464-a1e4-4e19-8c04-3949a5cf0340 |
| option_name | None |
| option_value | None |
| port_security_enabled | True |
| project_id | 03525522f7c547cd88627c626896d04a |
| qos_policy_id | None |
| revision_number | 9 |
| security_group_ids | 74e6a165-9c94-47b5-89ba-21c8d113df17 |
| status | ACTIVE |
| subnet_id | None |
| tags | |
| trunk_details | None |
| updated_at | 2020-02-05T05:32:19Z |
+-----------------------+-------------------------------------------------------------------------------+
[zone_id] ドメインのゾーンIDを探してください
# openstack zone show bigstack.co.
+----------------+--------------------------------------+
| Field | Value |
+----------------+--------------------------------------+
| action | NONE |
| attributes | |
| created_at | 2020-02-05T08:43:12.000000 |
| description | None |
| id | a475d193-7873-4f2a-9d90-c7792fae6734 |
| masters | |
| name | bigstack.co |
| pool_id | 794ccc2c-d751-44fe-b57f-8894c9f5c842 |
| project_id | 03525522f7c547cd88627c626896d04a |
| serial | 1580898425 |
| status | ACTIVE |
| transferred_at | None |
| ttl | 3600 |
| type | PRIMARY |
| updated_at | 2020-02-05T10:27:10.000000 |
| version | 4 |
+----------------+--------------------------------------+
[zone_id] によるレコード一覧を確認する(以前)
# openstack recordset list a475d193-7873-4f2a-9d90-c7792fae6734
+--------------------------------------+-------------------+------+--------------------------------------------------------+--------+--------+
| id | name | type | records | status | action |
+--------------------------------------+-------------------+------+--------------------------------------------------------+--------+--------+
| 0f161f6e-6a8f-4d60-aeb4-56769bcba66c | bistack.co. | NS | sky8.cube.org. | ACTIVE | NONE |
| 33d38c32-eac9-4fb4-a665-fcc0f3c57ac8 | bistack.co. | SOA | sky8.cube.org. c.l.com. 1580898425 3538 600 86400 3600 | ACTIVE | NONE |
+--------------------------------------+-------------------+------+--------------------------------------------------------+--------+--------+
[floating_ip_address] フローティングIPを作成する
# openstack floating ip create internet
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| created_at | 2020-02-06T04:27:21Z |
| description | |
| fixed_ip_address | None |
| floating_ip_address | 192.168.1.143 |
| floating_network_id | bdf01063-4500-4266-9363-36414ba6d252 |
| id | b998ad59-0c9b-4d5a-8702-1df8c8490232 |
| name | 192.168.1.143 |
| port_id | None |
| project_id | 03525522f7c547cd88627c626896d04a |
| revision_number | 0 |
| router_id | None |
| status | DOWN |
| updated_at | 2020-02-06T04:27:21Z |
+---------------------+--------------------------------------+
[floating_ip_address] を [port_id] に割り当てます
# openstack floating ip set --port 982ddbba-05ed-4665-be07-d7bb28311212 192.168.1.143
[zone_id] によるレコード一覧を確認する(後)
# openstack recordset list a475d193-7873-4f2a-9d90-c7792fae6734
+--------------------------------------+---------------------+------+--------------------------------------------------------+--------+--------+
| id | name | type | records | status | action |
+--------------------------------------+---------------------+------+--------------------------------------------------------+--------+--------+
| 0f161f6e-6a8f-4d60-aeb4-56769bcba66c | bistack.co. | NS | sky8.cube.org. | ACTIVE | NONE |
| 33d38c32-eac9-4fb4-a665-fcc0f3c57ac8 | bistack.co. | SOA | sky8.cube.org. c.l.com. 1580898425 3538 600 86400 3600 | ACTIVE | NONE |
| 0abfc156-fb0b-441a-af5b-f820ce2bfa0f | test-1.bigstack.co. | A | 192.168.1.143 | ACTIVE | NONE |
+--------------------------------------+---------------------+------+--------------------------------------------------------+--------+--------+
仮想マシンを表示
# openstack server list
+--------------------------------------+--------+--------+---------------------------------------+--------+---------+
| ID | Name | Status | Networks | Image | Flavor |
+--------------------------------------+--------+--------+---------------------------------------+--------+---------+
| e136f2ad-3c33-40c9-9248-11cd5c49411e | test-1 | ACTIVE | private=192.168.100.27, 192.168.1.143 | Cirros | m1.tiny |
+--------------------------------------+--------+--------+---------------------------------------+--------+---------+
Summary
このユースケースでは、フローティングIPのアドレスが、関連付けられたポートのdns_nameおよびそのポートのネットワークのdns_domainとともに、外部DNSサービスに公開されます。 このユースケースで実行する手順は以下の通りです:
- ネットワークの dns_domain 属性に有効なドメイン名を割り当ててください。 この名前はピリオド(.)で終わらなければなりません。
- インスタンスを起動するか、あるいは、dns_name 属性に有効な値を指定してポートを作成します。 そのポートをインスタンスの起動に使用する場合は、dns_name に割り当てる値は、Compute サービスがインスタンスに割り当てるホスト名と一致している必要があります。 そうしないと、起動に失敗します。
- フローティングIPを作成し、それをポートに関連付けます。