###################################################################### # All Rights Reserved, Copyright FUJITSU LIMITED 2015-2018 # # API実行サンプル名: # 05-014_ポート作成 # # 内容: # ポートの作成手順です。 # # 版数:v1.0 # 更新日:2017/11/21 ###################################################################### 手順: ─────────────────────────────────── 項番1.ポート作成 項番2.ポート確認 項番2-1.ポート詳細一覧確認 項番2-2.ポート詳細確認 ─────────────────────────────────── 事前準備: あらかじめ以下を準備する必要があります。 ─────────────────────────────────── ・ネットワーク ・サブネット ・セキュリティグループ ─────────────────────────────────── 項番1.ポート作成 ポートを作成します。 環境定義コマンド例: ====================================================================== # PORT_NAME=<作成するポート名(任意)> PORT_NAME=TEST_PORT_01 # NETWORK_ID=<作成するポートのネットワークID> NETWORK_ID=0e47de93-7142-4ff0-b7c3-5a1edfb13t54 # SUBNET_ID=<作成するポートのサブネットID> SUBNET_ID=a6d8ecf7-385c-4ccd-8528-e2c0b4899214 # FIXED_IP_ADDRESS=<指定するIPアドレス> FIXED_IP_ADDRESS=192.168.212.11 # SG_ID=<作成するポートが属するセキュリティグループID> SG_ID=beb2e81d-a67f-4d18-9270-93324f226741 # AZ=<アベイラビリティゾーン名> AZ=jp-west-2a API実行コマンド例: ====================================================================== curl -Ss $NETWORK/v2.0/ports -X POST -H "X-Auth-Token: $OS_AUTH_TOKEN" -H "Content-Type: application/json" -d '{"port":{"network_id": "'$NETWORK_ID'", "name": "'$PORT_NAME'", "availability_zone": "'$AZ'", "fixed_ips": [{"subnet_id": "'$SUBNET_ID'", "ip_address": "'$FIXED_IP_ADDRESS'"}], "security_groups": ["'$SG_ID'"] }}' | jq . レスポンス例: ====================================================================== { "port": { "availability_zone": "jp-west-2a", "device_id": "", "security_groups": [ "beb2e81d-a67f-4d18-9270-93324f226741" ], "id": "5095fbfc-861e-4cde-9f23-e378395d2c47", "fixed_ips": [ { "ip_address": "192.168.212.11", "subnet_id": "a6d8ecf7-385c-4ccd-8528-e2c0b4899214" } ], "mac_address": "fa:16:3e:e5:f8:73", "status": "DOWN", "name": "TEST_PORT_01", "allowed_address_pairs": [], "admin_state_up": true, "network_id": "0e47de93-7142-4ff0-b7c3-5a1edfb13t54", "tenant_id": "<プロジェクトID>", "binding:vnic_type": "normal", "device_owner": "" } } ====================================================================== 項番2.ポート確認 ポートが作成されたことを確認します。 項番2-1.ポート詳細一覧確認 ポート詳細一覧で同一プロジェクト内のポート一覧を確認します。 API実行コマンド例: ====================================================================== curl -Ss $NETWORK/v2.0/ports -X GET -H "X-Auth-Token: $OS_AUTH_TOKEN" | jq . レスポンス例: ====================================================================== { "ports": [ { "availability_zone": "jp-west-2a", "device_id": "", "security_groups": [ "beb2e81d-a67f-4d18-9270-93324f226741" ], "id": "5095fbfc-861e-4cde-9f23-e378395d2c47", "fixed_ips": [ { "ip_address": "192.168.212.11", "subnet_id": "a6d8ecf7-385c-4ccd-8528-e2c0b4899214" } ], "mac_address": "fa:16:3e:e5:f8:73", "device_owner": "", "status": "DOWN", "name": "TEST_PORT_01", "allowed_address_pairs": [], "admin_state_up": true, "network_id": "0e47de93-7142-4ff0-b7c3-5a1edfb13t54", "tenant_id": "<プロジェクトID>", "extra_dhcp_opts": [], "binding:vnic_type": "normal" }, { "availability_zone": "jp-west-2a", "device_id": "dhcp8c1aaa4d-3fda-5f04-bf47-7dd27e50fb7c-0e47de93-7142-4ff0-b7c3-5a1edfb13t54", "security_groups": [], "id": "b1208ba9-3146-48be-9f53-0b8af69d8fr3", "fixed_ips": [ { "ip_address": "192.168.212.2", "subnet_id": "a6d8ecf7-385c-4ccd-8528-e2c0b4899214" } ], "mac_address": "fa:16:3e:50:3c:16", "device_owner": "network:dhcp", "status": "ACTIVE", "name": "", "allowed_address_pairs": [], "admin_state_up": true, "network_id": "0e47de93-7142-4ff0-b7c3-5a1edfb13t54", "tenant_id": "<プロジェクトID>", "extra_dhcp_opts": [], "binding:vnic_type": "normal" }, { "availability_zone": "jp-west-2a", "device_id": "f8fcc5ae-5b7b-4a71-81dd-b15117229ee0", "security_groups": [], "id": "ba59de04-5e31-4537-ba8c-2f0d7b21f7d2", "fixed_ips": [ { "ip_address": "192.168.212.1", "subnet_id": "a6d8ecf7-385c-4ccd-8528-e2c0b4899214" } ], "mac_address": "fa:16:3e:97:0b:4e", "device_owner": "network:router_interface", "status": "ACTIVE", "name": "", "allowed_address_pairs": [], "admin_state_up": true, "network_id": "0e47de93-7142-4ff0-b7c3-5a1edfb13t54", "tenant_id": "<プロジェクトID>", "extra_dhcp_opts": [], "binding:vnic_type": "normal" } ] } ====================================================================== 項番2-2.ポート詳細確認 ポート詳細確認で指定したポート詳細を確認します。 環境定義コマンド例: ====================================================================== # PORT_ID=<項番1で作成したポートID> PORT_ID=5095fbfc-861e-4cde-9f23-e378395d2c47 API実行コマンド例: ====================================================================== curl -Ss $NETWORK/v2.0/ports/$PORT_ID -X GET -H "X-Auth-Token: $OS_AUTH_TOKEN" | jq . レスポンス例: ====================================================================== { "port": { "availability_zone": "jp-west-2a", "device_id": "", "security_groups": [ "ba59de04-5e31-4537-ba8c-2f0d7b21f7d2" ], "id": "5095fbfc-861e-4cde-9f23-e378395d2c47", "fixed_ips": [ { "ip_address": "192.168.212.11", "subnet_id": "a6d8ecf7-385c-4ccd-8528-e2c0b4899214" } ], "mac_address": "fa:16:3e:e5:f8:73", "device_owner": "", "status": "DOWN", "name": "TEST_PORT_01", "allowed_address_pairs": [], "admin_state_up": true, "network_id": "0e47de93-7142-4ff0-b7c3-5a1edfb13t54", "tenant_id": "<プロジェクトID>", "extra_dhcp_opts": [], "binding:vnic_type": "normal" } } ====================================================================== 以上