K3s

安装部署

K3s是开源、极轻量的Kubernetes发行版,目前为CNCF云原生计算基金会沙箱项目

K3s对服务器计算资源要求较低,可单机运行。K3s应用镜像已阈值Kubernetes-dashboard可视化工具,方便您通过浏览器进行Kubernetes集群管理。

部署后使用

查看实例各项应用配置信息

  1. 登录轻量服务器控制台
  2. 在实例列表中,选择并进入使用K3s应用镜像创建的实例详情页。
  3. 选择应用管理页签,进入应用管理详情页。
    K3s应用管理

您可以在此页面查看应用内软件的各项配置信息。例如:

  • kubeconfig 路径、Kubernetes-dashboard的访问地址、管理员TOKEN获取方式、访问端口
  • K3s、Kubernetes-dashboard在操作系统中的安装地址。

登录实例,粘贴并执行命令dashboard-token,按Enter
记录返回结果 TOKEN 值。如下图所示:
K3s TOKEN
在“应用内软件信息”栏中获取“访问地址”,并使用浏览器访问,进入 Kubernetes Dashboard。
在登录页面中,输入获取的 TOKEN 后,单击Sign in。如下图所示:
Kubernetes Dashboard Sign in
登录成功后,即可使用 Kubernetes Dashboard 进行集群管理操作。

增加集群节点

使用 K3s 应用镜像创建的实例即为集群 Master 节点。您可参考本步骤,向集群中增加其他 Node 节点。

  1. 进入实例详情页,选择防火墙页签,放通 TCP:6443UDP:8472TCP:10250(用于获取Node节点的监控信息)端口。
  2. 访问“应用内软件信息”中的访问地址、
  3. 在弹出的登录窗口中,执行以下命令,加入集群节点IP。
    1. K3s-add-node {node-ip}

    说明

    • Master 节点操作系统为 Ubuntu 18.04.1,建议您添加同地域、同可用区及同系列操作系统的其他轻量服务器实例作为集群Node节点。您可先使用 Ubuntu 18.04.1 系统镜像创建实例,再通过以上命令将实例加入集群作为Node节点。
    • Node节点需与Master节点内网互通。
      • 同账号下同一地域内的不同轻量服务器默认内网互通。
      • 实例间的网络访问收到防火墙的控制,TCP:6443UDP:8472TCP:10250端口默认未在防火墙中放通,您需要放通这些接口。
        示例命令如下:
        1. [root@yisu-some_instance]$ k3s-add-node 10.0.0.100
        返回信息如下所示:
        1. Please ensure firewall rule(TCP:6443) of master node has been allowed!
        2. root@10.0.0.100's password:
  4. 输入待加入节点的root用户密码,并按Enter。待节点初始化结束后,将会加入集群。

修改 NodePort

默认 NodePort 范围为30000 - 32767。某些情况下,因为网络策略限制,您可能需要修改 NodePort 的端口范围,可参考一下步骤完成修改:

  1. 进入实例详情页,选择防火墙页签,放通修改的 NodePort。例如30000-42767端口。
  2. 登录实例。
  3. 执行以下命令,编辑k3s.service配置文件。
    1. sudo vi /etc/systemd/system/k3s.service
  4. i进入编辑模式,找到ExecStart并增加--service-node-port-range参数指定 NodePort。例如:
    1. ExecStart=/usr/local/bin/k3s server --write-kubeconfig-mode=644 --service-node-port-range=30000-42767
    修改完成后,如下图所示:
    NodePort提示
  5. Esc输入:wq保存修改并退出编辑模式。
  6. 执行以下命令,并输入root用户密码重启K3s服务,使配置生效。
    1. systemctl daemon-reload && systemctl restart k3s