AKS 群集外部 IP - Python 的 Azure SDK
AKS Cluster External IP - Azure SDK for Python
我部署了一个 aks 集群并分配了一个内部 ip,但没有外部 ip:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 11h
我可能会以错误的方式解决这个问题,但目标是为集群 IP 创建外部端点。使用 python SDK 的正确方法是创建服务负载平衡器吗?我一直没有成功找到 azure python SDK。
请帮忙。
我的 python 创建集群的函数:
def create_cluster(node_count):
cluster_resource = container_client.managed_clusters.create_or_update(
resource_group,
cluster_name,
parameters=ManagedCluster(
location='eastus',
dns_prefix = dns_prefix,
tags=None,
service_principal_profile = self.service_principal_profile,
agent_pool_profiles=[{
'name': 'agentpool',
'vm_size': 'Standard_DS2_v2',
'count': 3,
}],
),
)
return cluster_resource
这不是一个真正正确的方法。正确的方法是创建一个 LoadBalancer 类型的 kubernetes 服务:
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
selector:
app: MyApp
ports:
- protocol: TCP
port: 80
targetPort: 9376
type: LoadBalancer
这将为您创建一个负载平衡器和一个 public IP 地址。主题有点复杂,直接跳过它,但基本上,kubernetes 会为你管理这些外部端点,你只需要声明有效的 kubernetes 原语。你可以预先创建那些,但这真的没有意义。让 kubernetes 来做这些艰苦的工作。
阅读中:
https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
我部署了一个 aks 集群并分配了一个内部 ip,但没有外部 ip:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 11h
我可能会以错误的方式解决这个问题,但目标是为集群 IP 创建外部端点。使用 python SDK 的正确方法是创建服务负载平衡器吗?我一直没有成功找到 azure python SDK。 请帮忙。
我的 python 创建集群的函数:
def create_cluster(node_count):
cluster_resource = container_client.managed_clusters.create_or_update(
resource_group,
cluster_name,
parameters=ManagedCluster(
location='eastus',
dns_prefix = dns_prefix,
tags=None,
service_principal_profile = self.service_principal_profile,
agent_pool_profiles=[{
'name': 'agentpool',
'vm_size': 'Standard_DS2_v2',
'count': 3,
}],
),
)
return cluster_resource
这不是一个真正正确的方法。正确的方法是创建一个 LoadBalancer 类型的 kubernetes 服务:
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
selector:
app: MyApp
ports:
- protocol: TCP
port: 80
targetPort: 9376
type: LoadBalancer
这将为您创建一个负载平衡器和一个 public IP 地址。主题有点复杂,直接跳过它,但基本上,kubernetes 会为你管理这些外部端点,你只需要声明有效的 kubernetes 原语。你可以预先创建那些,但这真的没有意义。让 kubernetes 来做这些艰苦的工作。
阅读中:
https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer