Я хочу включить https-соединения для моего приложения в Google Cloud.Я следовал нескольким учебникам, но, похоже, ничего не работает.
Я развернул приложение в GKE, используя Ingress.Вот ingress.yml
:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: myapp-ingress
annotations:
kubernetes.io/ingress.global-static-ip-name: myapp-ip
spec:
backend:
serviceName: myapp-service
servicePort: 80
Доступ к нему по ip-адресу работает нормально, сайт доступен из Интернета.
Я приобрел домен с доменами Google и настроил зоны DNSдобавив запись A, указывающую на мой внешний IP-адрес и запись CNAME.Теперь приложение отлично доступно с этим доменом.
Затем я создал SSL-сертификат и секрет Kubernate, выполнив команды:
openssl genrsa -out myapp-ingress-1.key 2048
openssl req -new -key myapp-ingress-1.key -out myapp-ingress-1.csr -subj "/CN=myapp.co.uk"
openssl x509 -req -days 365 -in myapp-ingress-1.csr -signkey myapp-ingress-1.key -out myapp-ingress-1.crt
kubectl create secret tls myapp-tls-secret-1 --cert myapp-ingress-1.crt --key myapp-ingress-1.key
И обновил ingress.yml
:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: myapp-ingress
annotations:
kubernetes.io/ingress.global-static-ip-name: myapp-ip
spec:
tls:
- secretName: myapp-tls-secret-1
rules:
- host: myapp.co.uk
http:
paths:
- backend:
serviceName: myapp-service
servicePort: 80
Я пробовал несколько файлов ingress.yml, следуя различным примерам в интернете, но ни один из них не работал.
Может кто-нибудь посоветовать мне?