Ingress是Kubernetes中的一个概念,用于将入站连接路由到不同的服务。这可以通过不同方式实现。
生成证书文件1
openssl req -x509 -nodes -days 2920 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=*.idcsec.com/O=nginxsvc"
导入证书文件到k8s secret1
kubectl create secret tls https-secret --key tls.key --cert tls.crt
或者使用yaml1
2
3
4
5
6
7
8apiVersion: v1
kind: Secret
type: kubernetes.io/tls
metadata:
name: mytlssecret
data:
tls.crt: <base64 encoded cert>
tls.key: <base64 encoded key>
配置ingress1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19kind: Ingress
apiVersion: extensions/v1beta1
metadata:
name: test
annotations:
ingress.kubernetes.io/ssl-redirect: "False" #设置是否强制跳转 false| true
spec:
tls:
- hosts:
- www.idcsec.com
secretName: https-secret
rules:
- host: www.idcsec.com
http:
paths:
- path: /
backend:
serviceName: test
servicePort: 80
校验证书信息1
openssl x509 -in tls.crt -noout -text