使用K3s在树莓派上启动Kubernetes集群

集群概览

在这个集群里,我们会使用三个树莓派。其中一个树莓派作为主节点,我们将它命名为 kmaster,并为其分配一个静态 IP 192.168.0.50(注:假设使用的私有网段是 192.168.0.0/24),而另外两个树莓派作为工作节点,分别命名为 knode1 和 knode2,也分别分配 192.168.0.51 和 192.168.0.52 两个 IP 地址。

当然,如果你实际的网络布局和上面不同,只要将文中所提及到的 IP 替换成你实际可用的 IP 就可以了。

为了不需要通过 IP 来引用某一个节点,我们将每个节点的主机名记录到 PC 的 /etc/hosts 文件当中:


  1. echo -e "192.168.0.50\tkmaster" | sudo tee -a /etc/hosts
  2. echo -e "192.168.0.51\tknode1" | sudo tee -a /etc/hosts
  3. echo -e "192.168.0.52\tknode2" | sudo tee -a /etc/hosts

部署主节点

我们首先部署主节点。最开始的步骤当然是使用镜像安装最新的 Raspbian,这个步骤可以参考我,在这里就不展开介绍了。在安装完成之后,启动 SSH 服务,将主机名设置为 kmaster,然后分配静态 IP 192.168.0.50

在主节点上安装 Raspbian 完成后,启动树莓派并通过 ssh 连接上去:


  1. ssh pi@kmaster

在主节点上执行以下命令安装 K3s:


  1. curl -sfL https://get.k3s.io | sh -

等到命令跑完以后,一个单节点集群就已经运行起来了。让我们检查一下,还在这个树莓派上执行:


  1. sudo kubectl get nodes

就会看到这样的输出:


  1. NAME STATUS ROLES AGE VERSION
  2. kmaster Ready master 2m13s v1.14.3-k3s.1

获取连接令牌join token

之后我们需要部署工作节点。在工作节点上安装 K3s 的时候,会需要用到连接令牌,它放置在主节点的文件系统上。首先把连接令牌保存出来以便后续使用:


  1. sudo cat /var/lib/rancher/k3s/server/node-token

部署工作节点

通过 SD 卡在每个作为工作节点的树莓派上安装 Raspbian。在这里,我们把其中一个树莓派的主机名设置为 knode1,为其分配 IP 地址 192.168.0.51,另一个树莓派的主机名设置为 knode2,分配 IP 地址 192.168.0.52。接下来就可以安装 K3s 了。

启动主机名为 knode1 的树莓派,通过 ssh 连接上去:


  1. ssh pi@knode1

在这个树莓派上,安装 K3s 的过程和之前差不多,但需要另外加上一些参数,表示它是一个工作节点,需要连接到一个已有的集群上:


  1. curl -sfL http://get.k3s.io | K3S_URL=https://192.168.0.50:6443 \
  2. K3S_TOKEN=刚才保存下来的连接令牌 sh -

K3S_TOKEN 的值需要替换成刚才保存下来的实际的连接令牌。完成之后,在主机名为 knode2 的树莓派上重复这个安装过程。

通过 PC 访问集群

现在如果我们想要查看或者更改集群,都必须 ssh 到集群的主节点才能使用 kubectl,这是比较麻烦的。因此我们会将 kubectl 放到 PC 上使用。首先,在主节点上获取一些必要的配置信息,ssh 到 kmaster 上执行:


  1. sudo cat /etc/rancher/k3s/k3s.yaml
【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章