更新时间:2022-05-07 GMT+08:00
分享

参考:发布https类型的ingress到ELB

获取弹性负载均衡ELB的证书并加密

  1. 获取客户证书和私钥,本例使用ELB的样例证书。

    登录控制台,单击左上角的,在服务列表中单击“网路 > 弹性负载均衡 ELB”进入网络控制台,单击左侧栏目树中的“弹性负载均衡 > 证书管理”,单击右上角的“创建证书”

    在弹出的创建证书窗口中配置证书内容和私钥,本例使用ELB的样例参考(单击“样例参考”后的可自动填充样例),如下图:
    图1 获取客户证书和私钥

  2. 将证书和私钥分别写到两个文件中,然后使用cat xxx | base64 | tr -d '\n' 进行base64位加密,获取加密后的字段。

    图2 获取加密后的字段

生成secret文件

生成secret文件如下:

apiVersion: v1
data:
  tls.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0******dDOTlIV3A2S3czN1JMOFdvQjhHV0ZVMFE0dEhMT2pCSXhrWlJPUFJoSCt6TUlycVVleHY2ZnNiM05XS2hubGZoMU1qNXdRRTRMZG89Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
  tls.key: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRV*******SGp5YTRJa2trZ3Q0MHExTXJVc2dJWWJGWU1mMgotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
kind: Secret
metadata:
  annotations:
    description: test for ingressTLS secrets
  name: elb-https-secret
  namespace: default
type: IngressTLS

创建该Secret:

kubectl create –f  xxx.yml

创建ingress并使用该secret

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/elb.ip: 192.168.0.244
    kubernetes.io/elb.port: "7777"
  name: https-ing
  namespace: default
spec:
  rules:
  - http:
      paths:
      - backend:
          serviceName: jenkinstest
          servicePort: 8080
        path: /test-https
        property:
          ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
  tls:
  - secretName: elb-https-secret

创建ingress:

kubectl create –f  xxx.yml
分享:

    相关文档

    相关产品

关闭导读