Awx-operator: habilitar https

Criado em 13 jul. 2020  ·  4Comentários  ·  Fonte: ansible/awx-operator

Como o https é configurado com o operador awx?

Comentários muito úteis

Deixando isso aqui se você quiser configurar o TLS em sua entrada em k8s:

  1. Primeiro, você precisa ter certeza de que seu tipo de entrada está definido como nenhum em seu recurso awx:
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
  1. (opcional) Se o segredo do seu certificado tls residir em um namespace diferente, crie um serviço ExternalName para fazer o proxy das solicitações entre namespaces (o nome externo é o FQDN do serviço awx):
kind: Service
apiVersion: v1
metadata:
  name: awx-service-proxy
spec:
  type: ExternalName
  externalName: awx-service.ansible-awx.svc.cluster.local
  ports:
  - port: 80
  1. Crie o recurso de entrada que aponta para o serviço de proxy (ou serviço awx):
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

Todos 4 comentários

Se você estiver no OCP, a rota trata da terminação https e SSL. No lado do controlador de ingresso, você precisará descobrir isso de alguma outra maneira que eu reconheço.

Deixando isso aqui se você quiser configurar o TLS em sua entrada em k8s:

  1. Primeiro, você precisa ter certeza de que seu tipo de entrada está definido como nenhum em seu recurso awx:
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
  1. (opcional) Se o segredo do seu certificado tls residir em um namespace diferente, crie um serviço ExternalName para fazer o proxy das solicitações entre namespaces (o nome externo é o FQDN do serviço awx):
kind: Service
apiVersion: v1
metadata:
  name: awx-service-proxy
spec:
  type: ExternalName
  externalName: awx-service.ansible-awx.svc.cluster.local
  ports:
  - port: 80
  1. Crie o recurso de entrada que aponta para o serviço de proxy (ou serviço awx):
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

Deixando isso aqui se você quiser configurar o TLS em sua entrada em k8s:

  1. Primeiro, você precisa ter certeza de que seu tipo de entrada está definido como nenhum em seu recurso awx:
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
  1. (opcional) Se o segredo do seu certificado tls residir em um namespace diferente, crie um serviço ExternalName para fazer o proxy das solicitações entre namespaces (o nome externo é o FQDN do serviço awx):
kind: Service
apiVersion: v1
metadata:
  name: awx-service-proxy
spec:
  type: ExternalName
  externalName: awx-service.ansible-awx.svc.cluster.local
  ports:
  - port: 80
  1. Crie o recurso de entrada que aponta para o serviço de proxy (ou serviço awx):
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

Muito obrigado. Porém, como você adiciona um certificado?

Esta página foi útil?
0 / 5 - 0 avaliações