Kubernetes 为EKS服务命名(而不是自动生成)

Kubernetes 为EKS服务命名(而不是自动生成),kubernetes,amazon-eks,Kubernetes,Amazon Eks,假设我有代表服务的以下YAML: apiVersion: v1 kind: Service metadata: annotations: service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:us-west-2:91371:certificate/0a389f-4086-4db6-9106-b587c90a3 service.beta.kubernetes.io/aws-load-balancer

假设我有代表服务的以下YAML:

apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:us-west-2:91371:certificate/0a389f-4086-4db6-9106-b587c90a3
    service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
    service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443"
  labels:
    app: main-api-prod
  name: main-api-prod
spec:
  type: LoadBalancer
  ports:
    - name: http
      protocol: TCP
      port: 80
      targetPort: 80
    - name: https
      protocol: TCP
      port: 443
      targetPort: 80
  selector:
    app: main-api-prod
在我跑步之后:

kubectl apply -f <file>
我们看到:

“主机名”: “a392f200796b8b0279bdd390c-228227293.us-west-2.elb.amazonaws.com”

我的问题是-有没有办法告诉kubectl在主机名中使用我自己的id?换言之,我想告诉它使用“abc”而不是“a392..”,因此:

"abc-228227293.us-west-2.elb.amazonaws.com"

顺便说一句,如果有人知道“228227293”代表什么,请记住,我知道这肯定不是我们的AWS帐户ID。

当您创建“负载平衡器”类型的服务时,您的云提供商(这里是AWS)会创建一个新的负载平衡器。负载平衡器命名由云提供商负责。我认为您无法告诉amazon如何生成负载平衡器名称。它可能取决于负载平衡器类型-alb、内部alb、nlb等


但您可以使用“外部dns”()。当为dns提供商配置时(例如aws route53),它可以自动为负载平衡器创建dns别名。但您将无法在amazonws.com域中创建名称…

当您创建“负载平衡器”类型的服务时,您的云提供商将创建一个新的负载平衡器(此处为aws)。负载平衡器命名由云提供商负责。我认为您无法告诉amazon如何生成负载平衡器名称。它可能取决于负载平衡器类型-alb、内部alb、nlb等

但您可以使用“外部dns”()。当为dns提供商配置时(例如aws route53),它可以自动为负载平衡器创建dns别名。但您将无法在amazonws.com域中创建名称

"abc-228227293.us-west-2.elb.amazonaws.com"