使用Rancher在阿里云上部署Kubernetes集群

如果您已经购买了阿里云的 ECS,那么您可以使用 Rancher 很方便的构建起一套 Kubernetes 集群用于测试及小规模使用。使用 Rancher 可以自动和可视化的完成 Kubernetes 集群的安装工作,省去的繁琐的人工安装过程,然您快速投入的业务开发中。下文根据 Rancher 2.x 安装 Kubernetes 集群。

注:阿里云上已支持容器服务 ACK,如果您需要高性能、企业级的 Kubernetes 服务不妨考虑一下。

准备

要想使用阿里云 ECS 和 Rancher 直接搭建一套 Kubernetes 集群,需要准备以下条件:

  • 开通了公网 IP 的 ECS
  • ECS 规格建议至少 4C8G
  • ECS 使用的阿里云的经典网络

安全组规则

组成 Kubenretes 集群的 ECS 位于阿里云经典网络中,需要为集群配置安全组规则如下:

  • UDP/8472 端口:阿里云默认禁止了 UDP,我们使用的 flannel 网络插件的VXLAN 模式,需要将 ECS 的安全组设置 UDP/8472 端口开放
  • TCP/6443:Kubernetes API Server
  • TCP/2379:etcd
  • TCP/2380:etcd
  • TCP/80:http
  • TCP/443:https

步骤

假设现在我们有两个节点 master 和 node,请参考 Rancher Quick Start Guide 安装 Rancher。

Rancher 界面

Master

先在 Master 节点安装 Rancher server、control、etcd 和 worker。

选择网络组件为 Flannel,同时在自定义主机运行命令中选择主机角色、填写主机的内网和外网 IP。

自定义节点信息

  1. docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher

Rancher 将自动创建 Kubernetes 集群,并默认在 80 端口运行 web server。

Node

添加 Node 节点时只需要在 Rancher 的 web 界面上找到您刚安装的集群并选择【编辑集群】并选择节点角色为 Worker 即可增加一台 Kubenretes 集群节点。

集群交互

Rancher 集群监控页面

如果您习惯使用命令行与集群交互可以 Rancher 的 web 上找到集群首页上的 Kubeconfig File 下载按钮,将该文件中的内容保存到您自己电脑的 ~/.kube/config 文件中。然后现在对应 Kubernetes 版本的 kubectl 命令并放到 PATH 路径下即可。

如果您没有在本地安装 kubectl 工具,也可以通过 Rancher 的集群页面上的 Launch kubectl 命令通过 web 来操作集群。

参考