• 在k8s上配置ingress并启用HTTPS证书


    第一步,定义Secret文件

    该文件设置tls的证书私钥和公钥内容,通过base64编码的内容
    tls.crt: 证书公钥
    tls.key: 证书私钥
    示例

    apiVersion: v1
    kind: Secret
    metadata:
      name: secret-tls
    data:
      tls.crt: xxxxx cat xxx.crt | base64 -w 0
      tls.key: xxxxx cat xxx.pem | base64 -w 0
    type: kubernetes.io/tls

    第二步,定义ingress文件

    如果希望http的强制转到https,把ingress.kubernetes.io/ssl-redirect设为true
    hosts:如果是泛域名*,则需要添加该泛域名的定义
    secretName:上一步的secret名称
    backend:对应后端的service名称和端口
    示例

    apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
      name: secret-tls-ingress
      annotations:
        ingress.kubernetes.io/ssl-redirect: "False"
    spec:
      tls:
      - hosts:
        - aaa.com
        - "*.aaa.com"
        secretName: secret-tls
      rules:
      - host: aaa.com
        http:
          paths:
          - backend:
              serviceName: jira-svc
              servicePort: 9000
            path: /

    第三步,部署secret,ingress文件

    kubectl create -f xxx.yml
    

    第四步,重启ingress-controller组件

    由于目前的ingress-controller版本对tls证书的bug,需要重新启动才能生效

  • 相关阅读:
    mapreduce的组件介绍
    [转]编译hadoop
    hadoop-2.7.2-HA安装笔记
    Maven常用命令
    Maven教程
    [转]Mahout推荐算法API详解
    [转]hadoop新手错误解决方法
    mysql命令
    [java笔记]JDK的安装和配置
    Nginx常见错误解决办法
  • 原文地址:https://www.cnblogs.com/liubin0509/p/7561960.html
Copyright © 2020-2023  润新知