K3s 是轻量级的 Kubernetes。它易于安装,仅需要 Kubernetes 内存的一半,适用于资源有限的环境,特别是边缘计算、物联网等应用场景。
首先,确保集群的网络正常,并且能够访问互联网。你可以使用 SSH 远程登录到集群中的每台机器,执行后续安装命令。确保主节点和工作节点的 IP 地址固定,并且网络间能够互相访问。
K3s 的安装非常简单。你只需在主节点上运行以下命令:
如果下载很慢可以使用以下命令加速安装
该命令会自动下载并安装 K3s。安装过程完成后,通过以下命令检查 K3s 服务是否启动:
如果显示 active (running)
,表示 K3s 已成功启动。
在工作节点上安装 K3s 时,需要将工作节点与主节点连接。使用以下命令在工作节点上安装 K3s:
上述命令中,主节点IP
需要替换为主节点的 IP 地址,主节点Token
是从主节点获取的令牌。你可以通过以下命令在主节点上查看令牌:
安装完成后,使用以下命令验证工作节点是否成功加入集群:
如果工作节点显示在列表中,且状态为 Ready
,则表示工作节点成功加入集群。
我们新建一个配置文件,用于运行 k3s 容器
文件内容如下:
然后使用这个配置文件启动一个容器
查看 pods 状态
通过浏览器访问 10.42.0.114:8080
distcc 是一个分布式 C/C++ 编译系统,它通过将编译任务分发到多台机器上来加速编译过程。它允许你利用多台计算机的计算能力,更快速地编译代码,特别适用于大型代码库或资源受限的设备环境。
对于 Debian 系统,可以直接使用包管理器安装 distcc
开启 distcc 服务
配置 DISTCC_HOSTS 环境变量,指定可用的工作节点。可以在 .bashrc 中添加以下内容:
然后,可以尝试编译一个简单的程序,检查 distcc 是否正常分发编译任务:
为了测试 distcc 是否能够有效地加速编译过程,我们使用 OpenSSL 来进行编译测试。OpenSSL 是一个广泛使用的 C 库,包含大量源代码,适合用来测试分布式编译的效果。
可以使用 distccmon-text 查看当前编译任务的分发情况
在测试过程中,我们对 OpenSSL 项目分别使用了单机编译和分布式编译(5台机器),下面是两种方式的编译结果:
可以看到,使用 distcc 进行分布式编译后,编译时间显著缩短,从 18 分钟降至约 6 分钟。可见分布式编译的加速效果明显,同时也可以有效地减轻单个机器的负载。
nomad-playbook 是一个使用 Ansible 编写的自动化部署脚本,旨在快速搭建基于 HashiCorp Nomad 和 Consul 的集群环境。该项目支持一键部署单服务器 Nomad/Consul 集群,结合 Podman(或可选的 Docker)作为容器运行时,非常适合便携式 HomeLab 或小型边缘计算集群的快速部署与测试。