安装dashboard并通过nginx外网访问
原本以为很难,其实很简单
要求
- 通过Nginx前端机转发请求到k8s集群的dashboard服务
- 必须是https,并有指定域名
- dashboard采用2.0版本,该版本只提供443的https服务(自签名)
思考
- 整个访问链条全部都是HTTPS,难点在于Nginx拿到dashboard服务的内部证书
- dashboard的部署过程自动生成了密钥,但k8s集群外部无法使用。并且ingress也用到了相同的密钥与service建立TLS链接
- Nginx前端反向代理需要用到dashboard自动生成的密钥才能访问ingress公布出来的服务。所以只能修改yaml并重新设置我们自己的密钥
- Dashboard的Ingress不能采用IP的方式进行服务公布,集群万一有变化就丧失了灵活性。找问题也很麻烦
- 自签名的密钥,要使用与nginx对外公布的域名保持一致。
物料
| 名称 | 说明 |
|---|---|
| 域名 | cr.smokelee.com |
| 证书 | cr.smokelee.com.key |
| 自签证书 | cr.smokelee.com.self.key |
| nginx | 外网前端 |
| k8s ingress | 在内网公布集群服务 |

本文详细介绍了如何安装k8s Dashboard 2.0并设置Ingress,通过Nginx进行外网访问。步骤包括修改dashboard YAML文件,生成自签名证书,配置Ingress,以及为dashboard赋予集群管理权限。关键点在于处理Nginx与dashboard之间的HTTPS通信及证书匹配。
最低0.47元/天 解锁文章
1416

被折叠的 条评论
为什么被折叠?



