如何将安全组附加到EKS群集中的负载均衡器?

问题描述

我们在AWS中拥有一个EKS 1.17 Kubernetes集群,我正在尝试使用附带的安全组创建一个负载均衡器,以允许对流量策略进行控制。

根据this link,应有注释service.beta.kubernetes.io/aws-load-balancer-extra-security-groups,当在类型LoadBalancer的服务中指定时,该注释应完全允许。当我应用服务模板时,将创建负载均衡器,但是没有附加安全组。 (请参见下面的模板和结果)

我研究了little bit of source code,在某些旧文件中有这种可能性,但是似乎在更高版本中缺少此代码。此功能的状态如何?是否有其他自动解决方案可让我创建带有安全组的负载均衡器?

模板:

apiVersion: v1
kind: Service
Metadata:
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-extra-security-groups: sg-0fed8ca44df49ad59
    service.beta.kubernetes.io/aws-load-balancer-type: nlb
  creationTimestamp: null
  finalizers:
  - service.kubernetes.io/load-balancer-cleanup
  labels:
    app: nginx-ingress
    chart: nginx-ingress-1.40.3
    component: controller
    heritage: Helm
    release: Nginx-internal
  name: Nginx-internal-nginx-ingress-controller
  selfLink: /api/v1/namespaces/ingress/services/Nginx-internal-nginx-ingress-controller
spec:
  externalTrafficPolicy: Cluster
  ports:
  - name: http
    nodePort: 32283
    port: 80
    protocol: TCP
    targetPort: http
  - name: https
    nodePort: 30485
    port: 443
    protocol: TCP
    targetPort: https
  selector:
    app: nginx-ingress
    app.kubernetes.io/component: controller
    release: Nginx-internal
  sessionAffinity: None
  type: LoadBalancer

结果:

$> aws elbv2 describe-load-balancers --profile cwp-test-admin --names ab45172b455c8471aafce3bb590963a0
{
    "LoadBalancers": [
        {
            "LoadBalancerArn": "arn:aws:elasticloadbalancing:eu-central-1:291004035372:loadbalancer/net/ab45172b455c8471aafce3bb590963a0/e3865ad5129b8c6f","DNSName": "ab45172b455c8471aafce3bb590963a0-e3865ad5129b8c6f.elb.eu-central-1.amazonaws.com","CanonicalHostedZoneId": "Z3F0SRJ5LGBH90","CreatedTime": "2020-08-18T11:19:22.129Z","LoadBalancerName": "ab45172b455c8471aafce3bb590963a0","Scheme": "internet-facing","VpcId": "vpc-0ab00d7cc01d6f870","State": {
                "Code": "active"
            },"Type": "network","AvailabilityZones": [
                {
                    "ZoneName": "eu-central-1b","subnetId": "subnet-0aa1554d7ba6d766a","LoadBalancerAddresses": []
                },{
                    "ZoneName": "eu-central-1a","subnetId": "subnet-0eabf8d5fabfac6be","LoadBalancerAddresses": []
                }
            ],"IpAddresstype": "ipv4"
        }
    ]
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)