zoukankan      html  css  js  c++  java
  • 在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,需要重新启动才能生效

  • 相关阅读:
    mac 终端常见指令
    git常见指令
    iOS8的autolayout和size class
    UIWindow详解
    操作系统Unix、Windows、Mac OS、Linux的故事
    iOS引用当前显示的UIAlertView
    Unexpected CFBundleExecutable Key
    《CODE》讲了什么?
    exit和return的区别
    php 登录注册api接口代码
  • 原文地址:https://www.cnblogs.com/liubin0509/p/7561960.html
Copyright © 2011-2022 走看看