kubernetes 如何在AWS EKS中最好地执行端到端TLS

ckx4rj1h  于 2023-10-17  发布在  Kubernetes
关注(0)|答案(1)|浏览(102)

我希望看到一些可行的解决方案和建议,人们是如何做到这一点。我的设置是:AWS EKS群集将应用程序作为部署运行。这是一个面向公共的集群,它的服务配置为使用创建NLB的“LoadBalancer”,下面是我的服务配置。这些都是基本的,而且工作正常。

apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: instance
    service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing
    service.beta.kubernetes.io/aws-load-balancer-type: external
  labels:
    app: my-app
  name: my-service
  namespace: default-namespace
spec:
  allocateLoadBalancerNodePorts: true
  clusterIP: 10.10.20.135
  clusterIPs:
  - 10.10.20.135
  externalTrafficPolicy: Cluster
  internalTrafficPolicy: Cluster
  ipFamilies:
  - IPv4
  ipFamilyPolicy: SingleStack
  loadBalancerSourceRanges:
  - 14.56.361.259/32
  - 172.201.416.179/32
  ports:
  - nodePort: 30294
    port: 443
    protocol: TCP
    targetPort: 8443
  selector:
    app: my-app
  sessionAffinity: None
  type: LoadBalancer

现在的要求是使用域而不是负载均衡器,并确保它将做端到端TLS直到pod。我正在寻找最好的方法和步骤。我已经在集群中安装了AWS负载均衡控制器和Cert-Manager。
我的想法是,如果我有一个域,可以以某种方式配置为路由流量到路由53中的NLB,然后NLB保持TLS端到端发送流量到Pod,这会起作用吗?或者我应该采取改变服务的路线使用“NodePort”和创建入口,创建一个新的ALB,然后使用ACM证书和路由到pod,然后pod做TLS终止,因为我必须确保pod使用证书。
感谢您的帮助和建议。

htrmnn0y

htrmnn0y1#

使用下面的注解,我们可以给予acm arn到服务NLB
service.beta.kubernetes.io/aws-load-balancer-ssl-cert
我的想法是,如果我有一个域,可以以某种方式配置为在route53中将流量路由到NLB,然后NLB保持TLS端到端将流量发送到Pod,这会起作用吗?是的,这会起作用。
谢谢.

相关问题