Awx-operator: 启用 https

创建于 2020-07-13  ·  4评论  ·  资料来源: ansible/awx-operator

https是如何用awx-operator配置的?

最有用的评论

如果您想在 k8s 的入口上设置 TLS,请留在这里:

  1. 首先,您需要确保您的 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. (可选)如果您的 tls 证书密钥位于不同的命名空间中,则创建一个ExternalName服务来代理命名空间之间的请求(外部名称是 awx 服务的 FQDN):
kind: Service
apiVersion: v1
metadata:
  name: awx-service-proxy
spec:
  type: ExternalName
  externalName: awx-service.ansible-awx.svc.cluster.local
  ports:
  - port: 80
  1. 创建指向代理服务(或 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

所有4条评论

如果您使用 OCP,则该路由会处理 https 和 ssl 终止。 在入口控制器方面,您需要通过我认为的其他方式来解决这个问题。

如果您想在 k8s 的入口上设置 TLS,请留在这里:

  1. 首先,您需要确保您的 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. (可选)如果您的 tls 证书密钥位于不同的命名空间中,则创建一个ExternalName服务来代理命名空间之间的请求(外部名称是 awx 服务的 FQDN):
kind: Service
apiVersion: v1
metadata:
  name: awx-service-proxy
spec:
  type: ExternalName
  externalName: awx-service.ansible-awx.svc.cluster.local
  ports:
  - port: 80
  1. 创建指向代理服务(或 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

如果您想在 k8s 的入口上设置 TLS,请留在这里:

  1. 首先,您需要确保您的 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. (可选)如果您的 tls 证书密钥位于不同的命名空间中,则创建一个ExternalName服务来代理命名空间之间的请求(外部名称是 awx 服务的 FQDN):
kind: Service
apiVersion: v1
metadata:
  name: awx-service-proxy
spec:
  type: ExternalName
  externalName: awx-service.ansible-awx.svc.cluster.local
  ports:
  - port: 80
  1. 创建指向代理服务(或 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

非常感谢。 你如何添加证书?

此页面是否有帮助?
0 / 5 - 0 等级