对于以下清单,创建服务类型(CluserIP
):
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
selector:
app.kubernetes.io/name: MyApp
ports:
- protocol: TCP
port: 80
targetPort: 9376
字符串
假设K8s托管在Azure云(AKS)中。
K8s集群分配给此服务的IP地址是什么?是否基于AWS子网(VPC/VNET内)IP范围(K8s集群托管的位置)?
1条答案
按热度按时间64jmpszr1#
在Azure Kubernetes Service(AKS)等云平台上托管的Kubernetes集群中,服务CIDR范围通常配置为与云提供商的网络设置保持一致,以避免IP冲突。这意味着服务CIDR范围的选择方式不会与AKS集群托管的VNet IP范围重叠。
要查找用于AKS群集中的服务的特定IP范围,可以检查群集配置。此信息通常在最初创建群集时设置,并且可以在AKS群集的网络设置中找到。可以使用Azure CLI或Azure门户查看这些详细信息。x1c 0d1x
分配给特定服务的实际IP地址(如示例中的
my-service
)是从该服务CIDR范围内动态分配的,并由Kubernetes管理。您通常不控制或预测确切的IP地址; Kubernetes处理此分配以确保每个服务在集群内获得唯一的IP。要查看为您的服务分配的IP地址,您可以在AKS集群中创建服务后运行
kubectl get service my-service
命令。这将显示分配给您的服务的IP地址沿着其他详细信息。现在,如果我以示例AKS集群网络配置为例,
*Pod CIDR:
10.244.0.0/16
10.244.0.1
到10.244.255.254
的IP地址。*业务CIDR:
10.0.0.0/16
ClusterIPs
。您的服务的IP地址范围是从10.0.0.1
到10.0.255.254
。*DNS服务IP:
10.0.0.10
*
kubernetes
服务集群IP:10.0.0.1
*
my-service
集群IP:10.0.169.125
my-service
)。它也在您定义的服务CIDR内。总结一下:
10.244.0.1
到10.244.255.254
。kubernetes
和my-service
)的IP范围为10.0.0.1
到10.0.255.254
。***参考文件:***official K8s cluster-IP allocation document