AKS群集外部IP-适用于Python的Azure SDK

时间:2019-02-19 05:42:14

标签: azure azure-kubernetes azure-aks azure-load-balancer azure-sdk-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的正确方法会创建服务负载平衡器吗?我一直没有找到适合这个的天蓝色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

1 个答案:

答案 0 :(得分:1)

这不是正确的方法。正确的方法是创建LoadBalancer类型的kubernetes服务:

种类:服务

apiVersion: v1
metadata:
  name: my-service
spec:
  selector:
    app: MyApp
  ports:
  - protocol: TCP
    port: 80
    targetPort: 9376
  type: LoadBalancer

将为您创建一个负载平衡器和一个公共IP地址。跳转到此主题有点复杂,但是基本上,kubernetes会为您管理那些外部端点,您只需要声明有效的kubernetes原语即可。您可以预先创建它们,但这确实没有任何意义。只是让kubernetes努力工作。

阅读:
https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer