[root@localhost chapter5]# kubectl get secrets NAME TYPE DATA AGE default-token-97zwj kubernetes.io/service-account-token 3 46h tls-secret kubernetes.io/tls 2 41m
[root@localhost chapter5]# kubectl describe ingress kubia-tls Name: kubia-tls Namespace: default Address: 192.168.49.3 Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>) TLS: tls-secret terminates kubia.example.com Rules: Host Path Backends ---- ---- -------- kubia.example.com / kubia-nodeport:80 (10.244.0.12:8080,10.244.1.25:8080,10.244.2.26:8080) Annotations: <none> Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal CREATE 34m nginx-ingress-controller Ingress default/kubia-tls Normal UPDATE 34m nginx-ingress-controller Ingress default/kubia-tls
从Rules中,可以看到我们的Ingress已经正确的被配置,并且解析到了服务地址;
配置完成;
测试TLS连接
最后,我们做一下测试吧;
首先查看我们Ingress-Nginx服务的端口映射情况:
1 2 3 4
[root@localhost chapter5]# kubectl get svc -n ingress-nginx NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE ingress-nginx-controller NodePort 10.104.211.117 <none> 80:31904/TCP,443:30310/TCP 15h ingress-nginx-controller-admission ClusterIP 10.101.176.66 <none> 443/TCP
可以看到端口映射是:
HTTP: 80:31904/TCP;
HTTPS:443:30310/TCP;
下面我们进行测试;
首先先测试HTTP连接:
1 2 3 4 5 6 7 8 9
[root@localhost chapter5]# curl -k -v https://kubia.example.com:31904/kubia * About to connect() to kubia.example.com port 31904 (#0) * Trying 192.168.49.3... * Connected to kubia.example.com (192.168.49.3) port 31904 (#0) * Initializing NSS with certpath: sql:/etc/pki/nssdb * NSS error -12263 (SSL_ERROR_RX_RECORD_TOO_LONG) * SSL received a record that exceeded the maximum permissible length. * Closing connection 0 curl: (35) SSL received a record that exceeded the maximum permissible length.