在阿里云国内搭建一个纯净的 kubernetes 环境
阿里云自己的 kubernetes 有好多闭源组件,而且更新慢。本文总结一下在阿里云建立一个仅用 kubernetes 官方组件的容易升级的环境。
环境规划:
- 一台出口代理(以下简称 proxy):1 CPU 1G Memory
- 一台网关(以下简称 gateway):1 CPU 1G Memory
- 一台独立 master(以下简称 master): 2CPU 4G Memory
- 两台 Node(以下简称 node1、node2): 2CPU 8G Memory,数量可调整
- 存储使用阿里云的 NAS(nfs)
- 入网请求使用阿里云的 SLB + Ingress
合计 5 台服务器,2 个阿里云服务。
准备网络环境
主要是配置 NAT。让多台局域网内的服务器能访问外网。
另外 kubernetes 依赖一些在中国大陆需要代理才能访问的镜像源,因此也需要选择性代理。
代理使用 outline,管理方便一些。
第一步,安装 outline
租用一台阿里云海外的服务器,选 1 CPU 1G Memory 即可,需要公网。
在 proxy 上执行:
sudo bash -c "$(wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh)"
之后在安全组中,把管理端口与连接端口开放 0.0.0.0 访问。
把生成的 token 贴到本机的 outline manager 中。获取连接信息。
第二步,配置 gateway
gateway 有三个作用
- 做局域网内部的 NAT
- 做海外的透明代理
- 做防污染的 DNS
租用一台阿里云中国大陆的服务器,选 1 CPU 1G Memory 即可,需要公网。ubuntu。
配置文件参考: