重要
ingress-nginx对于暴露grpc的服务,要求必须tls加密。所以,要么ingress配置grpcs,在服务端自己管理证书;要么ingress配置grpc,在ingress配置统一管理证书。
为便于运维管理证书,此处采用cert-manager
统一在ingress配置中。自动生成证书,发布https服务。
环境说明
使用
- 生成自签发CA证书,并保存在secret中(供cert-manager签发证书使用);
- 配置
cluster-issuer
,和certificate
,使生成Secret,保存证书、ca和私钥; - 创建pod,service,ingress, ingress的tls配置使用第二步生成的Secret;
- 执行命令测试grpc端口是否暴露成功;
|
|
Reference
以上1.2步参考cert-manager相关内容
cert-manager hex-博客
cert-manager hex-github-示例项目
第3,4部参考ingress-nginx
的官方示例,
IngressNginx官房GRPC示例
第3,4部也可参考cert-manager的示例代码测试
cert-manager hex-github-示例项目
其他关于grpc的内容,需要参考此链接