networking - Openstack neutron:在响应中未从开放堆栈 neutron api 获取端口信息
问题描述
我发出了一个 POST API 请求来创建带有外部网络的路由器(路由器的 SET 网关)。
端点:/api/networks/routers/:routerId
有效载荷:
"router": {
"name: "myrout3r"
"external_gateway_info": {
"network_id": "659cf56-cad0-40a6-ae53-f24a2123508a",
"enable_snat": true
},
"admin_state_up": true
}
}
回复:
{
"router": {
"status": "ACTIVE",
"external_gateway_info": {
"network_id": "659c2f56-cad0-40a6-ae59-f24a2123508a",
"enable_snat": true,
"external_fixed_ips": [
{
"subnet_id": "52f0822b-2c36-4810-8653-a1a60b03a8b1",
"ip_address": "172.30.60.4"
}
]
},
"availability_zone_hints": [],
"availability_zones": [
"nova"
],
"description": "",
"tags": [],
"tenant_id": "5178acd154364430876d5aa687a9df7c",
"created_at": "2018-08-07T06:50:22Z",
"admin_state_up": true,
"distributed": false,
"updated_at": "2018-08-07T09:40:30Z",
"project_id": "5178acd154364430876d5aa687a9df7c",
"flavor_id": null,
"revision_number": 13,
"routes": [],
"ha": false,
"id": "398872f0-0cf6-4f48-8c94-f55623beace4",
"name": "router-szz"
}
}
我的主要问题是:当我在网络的端口选项卡中为外部网络添加路由器网关时,会动态创建一个新的端口。但是这些信息不是我想要的响应的一部分。
2)我应该为外部网络启用DHCP,如果不是为什么?router_external_gateway
解决方案
路由器的端口可以从“ports” API 而不是“router” API 获取。
可以使用以下 REST API 查询与路由器关联的端口:
curl -s -H "X-Auth-Token: $OS_TOKEN" $OS_NETWORK_API/v2.0/ports?device_id={router_id}
例子:
curl -s -H "X-Auth-Token: $OS_TOKEN" $OS_NETWORK_API/v2.0/ports?device_id=b3b11b62-04da-4a98-a981-adcd42d9fe3e
推荐阅读
- c - 查找固定长度的重复传感器模式
- asp.net - 从存储过程返回值到文本框
- xpath - XPath to identify the elements from the list having none of the child elements with a particular value
- curl - 如何卷曲 Pod k8S
- javascript - 插入/删除深色主题样式表切换按钮
- .htaccess - htaccess 301 使用查询字符串进行永久重定向
- ubuntu - Tomcat8 的 SAML2
- android - 无法为 Honeywell 开发配置 Android Studio
- vba - 如何在 MS Access 中仅为这条记录设置 visible = true?
- r - 为什么这个表达式的长度是 11?