【发布时间】:2019-04-03 10:54:07
【问题描述】:
我有
- 一个 openstack,它是 Queens,它有 octavia 用于 lbaas
- 在其之上的小型(测试)k8s 集群(3 个节点,1 个主节点),版本 9.1.2
- 一个名为
hello的部署,它提供一个简单的网页,上面写着“hello world”,当从集群内访问时它可以工作
我想将我的部署公开为具有浮动 IP 的负载平衡服务。
我做了kubectl expose deployment hello --type=LoadBalancer --name=my-service
上面写着 (kubectl describe service my-service)
Error creating load balancer (will retry): failed to ensure load balancer for service default/my-service: error getting floating ip for port 9cc6442b-2b2f-4b6a-8f91-65dbc2ff13d0: Resource not found
如果我手动执行:openstack floating ip --port 9cc6442b-2b2f-4b6a-8f91-65dbc2ff13d0 356c8ffa-7bc2-43a9-a8d3-29147ae01727
其中:
| ID | Floating IP Address | Port | Floating Network |
| 356c8ffa-7bc2-43a9-a8d3-29147ae01727 | 172.27.81.241 | None | eb31cc74-96ba-4394-aef4-0e94bec46d85 |
并且 /etc/kubernetes/cloud_config 有:
[LoadBalancer]
subnet-id=6a6cdc35-8dda-4982-850e-53c6ee5a5085
floating-network-id=eb31cc74-96ba-4394-aef4-0e94bec46d85
use-octavia=True
(因此它在正确的网络上寻找浮动 IP,并且该子网是 k8s 内部子网)
一切正常。
因此,除了“关联 IP”之外的所有操作都有效。为什么这一步会失败? k8s 在哪里记录了它做了什么以及它是如何失败的?我只能找到 pod 级别日志记录的文档(而且我的 pod 很好,并且提供它的测试网页也很棒)。
(我还有很多配额用于“制作更多浮动 ips”,还有几个未使用的配额)
【问题讨论】:
标签: kubernetes openstack