环境变量
如 快速入门指南 中所述,您可以使用 https://get.k3s.io 上提供的安装脚本,将 K3s 作为服务安装在基于 systemd 和 openrc 的系统上。
此命令的最简单形式如下所示
curl -sfL https://get.k3s.io | sh -
使用此方法安装 K3s 时,可以使用以下环境变量来配置安装。
环境变量 | 描述 |
---|---|
INSTALL_K3S_SKIP_DOWNLOAD | 如果设置为 true,则不会下载 K3s 哈希或二进制文件。 |
INSTALL_K3S_SYMLINK | 默认情况下,如果路径中不存在 kubectl、crictl 和 ctr 二进制文件,则会为其创建符号链接。如果设置为“skip”,则不会创建符号链接,而“force”将覆盖现有链接。 |
INSTALL_K3S_SKIP_ENABLE | 如果设置为 true,则不会启用或启动 K3s 服务。 |
INSTALL_K3S_SKIP_START | 如果设置为 true,则不会启动 K3s 服务。 |
INSTALL_K3S_VERSION | 要从 Github 下载的 K3s 版本。如果未指定,将尝试从稳定通道下载。 |
INSTALL_K3S_BIN_DIR | 安装 K3s 二进制文件、链接和卸载脚本的目录,或使用 /usr/local/bin 作为默认目录。 |
INSTALL_K3S_BIN_DIR_READ_ONLY | 如果设置为 true,则不会将文件写入 INSTALL_K3S_BIN_DIR ,强制设置 INSTALL_K3S_SKIP_DOWNLOAD=true 。 |
INSTALL_K3S_SYSTEMD_DIR | 安装 systemd 服务和环境文件的目录,或使用 /etc/systemd/system 作为默认目录。 |
INSTALL_K3S_EXEC | 用于在服务中启动 K3s 的带有标志的命令。如果未指定命令,并且已设置 K3S_URL ,则它将默认为“agent”。如果未设置 K3S_URL ,则它将默认为“server”。有关帮助,请参考 此示例。 |
INSTALL_K3S_NAME | 要创建的 systemd 服务的名称,如果以服务器模式运行 K3s,则默认为“k3s”,如果以代理模式运行 K3s,则默认为“k3s-agent”。如果指定,则名称将以“k3s-”为前缀。 |
INSTALL_K3S_TYPE | 要创建的 systemd 服务类型,如果未指定,则默认为 K3s exec 命令。 |
INSTALL_K3S_SELINUX_WARN | 如果设置为 true,则如果找不到 k3s-selinux 策略,将继续执行。 |
INSTALL_K3S_SKIP_SELINUX_RPM | 如果设置为 true,则会跳过自动安装 k3s RPM。 |
INSTALL_K3S_CHANNEL_URL | 用于获取 K3s 下载 URL 的通道 URL。默认为 https://update.k3s.io/v1-release/channels. |
INSTALL_K3S_CHANNEL | 用于获取 K3s 下载 URL 的通道。默认为“stable”。选项包括:stable 、latest 、testing 。 |
此示例显示了将上述环境变量放置为选项的位置(在管道之后)。
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=latest sh -
以 K3S_
开头的环境变量将被保留以供 systemd 和 openrc 服务使用。
设置 K3S_URL
而不显式设置 exec 命令将使命令默认为“agent”。
运行代理时,还必须设置 K3S_TOKEN
。
版本限制
从 2024 年 10 月的版本开始提供:v1.28.15+k3s1、v1.29.10+k3s1、v1.30.6+k3s1、v1.31.2+k3s1。
K3s 现在将使用 PATH
查找替代容器运行时,此外还检查容器运行时软件包使用的默认路径。要使用此功能,您必须修改 K3s 服务的 PATH 环境变量以添加包含容器运行时二进制文件的目录。
建议您修改以下两个环境文件之一
- /etc/default/k3s # 或 k3s-agent
- /etc/sysconfig/k3s # 或 k3s-agent
此示例将在 /etc/default/k3s
中添加 PATH
echo PATH=$PATH >> /etc/default/k3s
警告
PATH
更改应谨慎进行,以避免将不受信任的二进制文件放置在以 root 身份运行的服务的路径中。