azure - Azure Kubernetes 集群 - 从本地访问服务并与之交互
问题描述
目前我们有以下场景:
我们已经建立了从本地到 Azure Kubernetes 集群(私有集群!)的连接(网络方式),没有任何问题。
正在路由和允许的端口
TCP 80
TCP 443
到目前为止,我们处于开发环境中并测试不同的配置。
为了设置我们的 AKS,我们需要设置虚拟网络(通过 CNI)和服务 CIDR。我们设置了以下配置(只是一个例子)
Virtual Network: 10.2.0.0 /21
Service CIDR: 10.2.8.0 /23
因此,我们的 pod 拥有来自我们的虚拟网络子网的 IP,服务从 Service CIDR 获得它们的 IP。到目前为止,一切都很好。虚拟网络的路由表(子网已与路由表关联)正在将所有流量转发到我们的防火墙,反之亦然:与虚拟网络的交互正常工作。网络团队(也是 Azure 云的新手)表示,对 Service CIDR 的连接和访问应该可以正常工作。
遗憾的是,我们无法访问服务 CIDR。
例如,假设我们要通过https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/建立 kubernetes 仪表板(web ui) 。运行 YAML 代码后,kubernetes 仪表板 pod 和服务已成功创建。可以 ping 和“访问”该 pod,但无法访问可以通过端口 443 访问 kubernetes 仪表板的服务。例如https://10.2.8.42/. 到目前为止,我的解决方法是 kubernetes 仪表板(作为服务,类型:ClusterIP)设置了来自虚拟网络的外部 IP。这听起来很棒,但我不是很喜欢它,因为我必须与虚拟网络而不是服务 CIDR 交互。这真的是正确的方法吗?任何提示如何使服务 CIDR 可访问?我错过了什么?
任何帮助,将不胜感激。
解决方案
推荐阅读
- python - 为什么我的代码只循环使用 BeautifulSoup 的第一个网页?
- r - 试图在 R 上的 ds 中查找没有导演的电影
- d3.js - D3js 版本转换(v4 到 v6)。事件处理的变化?
- java - 如何在没有代码错误的情况下修复 .NullPointerException 错误?
- php - PHP处理Lavavel非常慢,有什么线索吗?
- javascript - 即使在成功的 Rest API 调用完成后,Axios 也会发布进入 catch 块
- tableau-api - 创建没有度量数据的表格饼图
- c# - Calling a method from Main Form to run on Child Form / Threads
- android - 我在哪里可以从 android 复选框中获取图像
- design-patterns - Consumer Producer design