![](/img/trans.png)
[英]How to set up kubernetes NGINX ingress in AWS and SSL termination
[英]Kubernetes on AWS with NGINX ingress controller and SSL termination
在我的Kubernetes群集中配置SSL終止時遇到問題。 試圖找出最好的地方來實現這一目標。
我已經能夠按照此處列出的說明進行操作,然后使用service.beta.kubernetes.io/aws-load-balancer-ssl-cert批注更新入口控制器服務以包括SSL證書詳細信息:
kind: Service
apiVersion: v1
metadata:
name: ingress-nginx
namespace: ingress-nginx
labels:
app: ingress-nginx
annotations:
service.beta.kubernetes.io/aws-load-balancer-proxy-protocol: '*'
service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:...
spec:
type: LoadBalancer
selector:
app: ingress-nginx
ports:
- name: https
port: 443
targetPort: 80
然后,我將獲得類似於以下內容的入口規則和服務設置:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: app1
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: app1.foo.bar
http:
paths:
- backend:
serviceName: app1
servicePort: 80
---
apiVersion: v1
kind: Service
metadata:
name: app1
spec:
type: LoadBalancer
ports:
- name: http
port: 80
targetPort: 80
selector:
app: app1
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: app1
spec:
template:
metadata:
labels:
app: app1
spec:
containers:
- image: nginx
name: nginx
ports:
- containerPort: 80
轉到app1.foo.bar
我可以看到:
最初,我試圖將證書應用於我的個人應用程序服務。 我可以看到證書已應用於AWS中的ELB,但沒有通過。 所以我的問題是:
這是正確的配置還是有更好的解決方案?
謝謝 :)
我建議終止在ELB公開的Nginx Ingress Controller上終止SSL,並使用kube-lego進行自動SSL證書管理。
https://github.com/kubernetes/ingress-nginx和https://github.com/jetstack/kube-lego
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.