我希望看到一些可行的解决方案和建议,人们是如何做到这一点。我的设置是: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使用证书。
感谢您的帮助和建议。
1条答案
按热度按时间htrmnn0y1#
使用下面的注解,我们可以给予acm arn到服务NLB
service.beta.kubernetes.io/aws-load-balancer-ssl-cert
我的想法是,如果我有一个域,可以以某种方式配置为在route53中将流量路由到NLB,然后NLB保持TLS端到端将流量发送到Pod,这会起作用吗?是的,这会起作用。
谢谢.