Wie wird https mit dem awx-Operator konfiguriert?
Wenn Sie OCP verwenden, verarbeitet die Route https- und SSL-Terminierung. Auf der Ingress-Controller-Seite müssen Sie das meiner Meinung nach auf andere Weise herausfinden.
Lassen Sie dies hier, wenn Sie jemals TLS für Ihren Ingress in k8s einrichten möchten:
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
name: awx
namespace: ansible-awx
spec:
deployment_type: awx
tower_admin_user: test
tower_admin_email: [email protected]
tower_admin_password: changeme
tower_broadcast_websocket_secret: changeme
tower_ingress_type: none
ExternalName
Dienst, um die Anfragen zwischen Namespaces weiterzuleiten (der externe Name ist der FQDN des awx-Dienstes):kind: Service
apiVersion: v1
metadata:
name: awx-service-proxy
spec:
type: ExternalName
externalName: awx-service.ansible-awx.svc.cluster.local
ports:
- port: 80
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: awx-ingress
annotations:
kubernetes.io/ingress.class: nginx
spec:
tls:
- hosts:
- awx.mydomain.com
secretName: ingress-tls
rules:
- host: awx.mydomain.com
http:
paths:
- backend:
serviceName: awx-service-proxy
servicePort: 80
path: /
pathType: ImplementationSpecific
Lassen Sie dies hier, wenn Sie jemals TLS für Ihren Ingress in k8s einrichten möchten:
- Zuerst müssen Sie sicherstellen, dass Ihr Ingress-Typ in Ihrer Awx-Ressource auf "Keine" eingestellt ist:
apiVersion: awx.ansible.com/v1beta1 kind: AWX metadata: name: awx namespace: ansible-awx spec: deployment_type: awx tower_admin_user: test tower_admin_email: [email protected] tower_admin_password: changeme tower_broadcast_websocket_secret: changeme tower_ingress_type: none
- (optional) Wenn sich Ihr tls-Zertifikatsgeheimnis in einem anderen Namespace befindet, erstellen Sie einen
ExternalName
Dienst, um die Anfragen zwischen Namespaces weiterzuleiten (der externe Name ist der FQDN des awx-Dienstes):kind: Service apiVersion: v1 metadata: name: awx-service-proxy spec: type: ExternalName externalName: awx-service.ansible-awx.svc.cluster.local ports: - port: 80
- Erstellen Sie die Ingress-Ressource, die auf den Proxy-Dienst (oder den awx-Dienst) verweist:
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: awx-ingress annotations: kubernetes.io/ingress.class: nginx spec: tls: - hosts: - awx.mydomain.com secretName: ingress-tls rules: - host: awx.mydomain.com http: paths: - backend: serviceName: awx-service-proxy servicePort: 80 path: / pathType: ImplementationSpecific
Vielen Dank. Wie fügt man jedoch ein Zertifikat hinzu?
@nicolaibaralmueller https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
Hilfreichster Kommentar
Lassen Sie dies hier, wenn Sie jemals TLS für Ihren Ingress in k8s einrichten möchten:
ExternalName
Dienst, um die Anfragen zwischen Namespaces weiterzuleiten (der externe Name ist der FQDN des awx-Dienstes):