安装介绍
概述
RKE 是一个快速的,多功能的 Kubernetes 安装工具,您可以参考以下步骤,使用 RKE 在您的 Linux 主机上安装 Kubernetes。
1. 下载 RKE 二进制安装包
RKE 提供了三种下载安装包的方法:通过 GitHub、Homebrew 或 MacPorts 都可以下载 RKE 安装包。使用 Github 下载对您使用的主机操作系统没有要求,而使用 Homebrew 和 MacPorts 要求您的主机操作系统必须为 MacOS。
选项 1:使用 GitHub 下载安装包
登录您的主机,打开浏览器,访问RKE 版本发布页面,下载最新的 RKE v1.x,有以下几个版本供您下载:
- macOS:
rke_darwin-amd64
- Linux (Intel/AMD):
rke_linux-amd64
- Linux (ARM 32-bit):
rke_linux-arm
- Linux (ARM 64-bit):
rke_linux-arm64
- Windows (32-bit):
rke_windows-386.exe
- Windows (64-bit):
rke_windows-amd64.exe
- macOS:
运行以下命令,将下载的 RKE 二进制安装包复制到您想要保存的路径下。然后将这个安装包重命名为
rke
(Windows 用户请重命名为rke.exe
)。MacOS 用户请运行以下命令:
# macOS
mv rke_darwin-amd64 rkeLinux 用户请运行以下命令:
# Linux
mv rke_linux-amd64 rkeWindows 用户请运行以下命令:
# Windows PowerShell
> mv rke_windows-amd64.exe rke.exe运行以下命令,将 RKE 安装包转为可执行文件。如果您使用的 Windows 操作系统,则可以跳过这个步骤,直接查看为 Kubernetes 集群准备节点。
$ chmod +x rke
运行以下命令,检查 RKE 安装包是否已经转换成可执行文件。
$ rke --version
选项 2:使用 Homebrew 下载安装包
使用 Homebrew 下载 RKE 安装包时,请参考以下步骤:
打开浏览器,访问Homebrew 官方网站,按照网站列出的指示安装 Homebrew,通常只需要将网站上的命令复制粘贴到命令行工具中,单击回车键运行该命令即可,整个安装过程可能需要 3~5 分钟。
运行
brew
命令,安装 RKE。brew install rke
如果您已经使用 Homebrew 安装过了 RKE,可以运行以下命令,将 RKE 升级到最新版本。
brew upgrade rke
选项 3:使用 MacPorts 下载安装包
使用 MacPorts 下载 RKE 安装包时,请参考以下步骤:
打开浏览器,访问MacPorts 官方网站,按照网站列出的指示安装 MacPorts,通常只需要将网站上的命令复制粘贴到命令行工具中,单击回车键运行该命令即可,整个安装过程可能需要 3~5 分钟。
运行
port
命令,安装 RKE。port install rke
完成 MacPorts 安装后,使用
port
命令安装 Docker:port install rke
如果您已经使用 MacPorts 安装过了 RKE,可以运行以下命令,升级到最新版本的 RKE。
port upgrade rke
2.为 Kubernetes 集群准备节点
Kubernetes 集群组件需要在 Linux 发行版上的 Docker 中运行,只要是能安装和运行 Docker 的 Linux 发行版,您都可以使用。请参考操作系统要求,正确地配置每一个节点。
3. 创建集群配置文件
RKE 使用集群配置文件cluster.yml
规划集群中的节点,例如集群中应该包含哪些节点,如何部署 Kubernetes。您可以通过该文件修改很多集群配置选项。在 RKE 的文档中,我们提供的代码示例假设集群中只有一个节点。
创建集群配置文件cluster.yml
的方式有两种:
- 使用 minimal cluster.yml创建集群配置文件,然后将您使用的节点的相关信息添加到文件中。
- 使用
rke config
命令创建集群配置文件,然后将集群参数逐个输入到该文件中。
使用rke config
运行rke config
命令,在当前路径下创建 cluster.yml
文件。这条命令会引导您输入创建集群所需的所有参数,详情请参考集群配置选项。
rke config --name cluster.yml
其他配置选项
在原有创建集群配置文件命令的基础上,加上 --empty
,可以创建一个空白的集群配置文件。
rke config --empty --name cluster.yml
您也可以使用--print
,将cluster.yml
文件的内容显示出来。
rke config --print
高可用集群
RKE 适配了高可用集群,您可以在cluster.yml
文件中配置多个controlplane
节点。RKE 会把 master 节点的组件部署在所有被列为controlplane
的节点上,同时把 kubelets 的默认连接地址配置为127.0.0.1:6443
。这个地址是nginx-proxy
请求所有 master 节点的地址
创建高可用集群需要指定两个或更多的节点作为controlplane
。
证书
v0.2.0 开始可用
默认情况下,Kubernetes 集群需要用到证书,而 RKE 会自动为所有集群组件生成证书。您也可以使用自定义证书。部署集群后,您可以管理这些自动生成的证书,详情请参考管理自动生成的证书。
4. 使用 RKE 部署 Kubernetes 集群
创建了cluster.yml
文件后,您可以运行以下命令部署集群。这条命令默认cluster.yml
已经保存在了您运行命令所处的路径下。
rke up
INFO[0000] Building Kubernetes cluster
INFO[0000] [dialer] Setup tunnel for host [10.0.0.1]
INFO[0000] [network] Deploying port listener containers
INFO[0000] [network] Pulling image [alpine:latest] on host [10.0.0.1]
...
INFO[0101] Finished building Kubernetes cluster successfully
运行该命令后,返回的最后一行信息应该是Finished building Kubernetes cluster successfully
,表示成功部署集群,可以开始使用集群。在创建 Kubernetes 集群的过程中,会创建一个kubeconfig
文件,它的文件名称是 kube_config_cluster.yml
,您可以使用它控制 Kubernetes 集群。
如果您之前使用的集群配置文件名称不是cluster.yml
,那么这里生成的 kube_config 文件的名称也会随之变化为kube_config*<FILE_NAME>.yml
。
5. 保存文件
请保存下文中列出来的所有文件,这些文件可以用于维护集群,排查问题和升级集群。
请将这些文件复制并保存到安全的位置:
cluster.yml
:RKE 集群的配置文件。kube_config_cluster.yml
:该集群的Kubeconfig 文件包含了获取该集群所有权限的认证凭据。cluster.rkestate
:Kubernetes 集群状态文件,包含了获取该集群所有权限的认证凭据,使用 RKE v0.2.0 时才会创建这个文件。
kube_config_cluster.yml
和cluster.rkestate
两个文件的名称取决于您如何命名 RKE 集群配置文件,如果您修改的集群配置文件的名称,那么后两个文件的名称可能会跟上面列出来的文件名称不一样。
Kubernetes 集群状态文件
Kubernetes 集群状态文件用集群配置文件cluster.yml
以及集群中的组件证书组成。不同版本的 RKE 会将文件保存在不同的地方。
v0.2.0 以及更新版本的 RKE 会在保存集群配置文件 cluster.yml
的路径下创建一个.rkestate
文件。该文件包含当前集群的状态、RKE 配置信息和证书信息。请妥善保存该文件的副本。
v0.2.0 之前的版本的 RKE 会将集群状态存储以密文的形式存储。更新集群状态时,RKE 拉取这些密文,修改集群状态,然后将新的集群状态再次存储为密文。
6. 操作 Kubernetes 集群
成功启动和运行集群后,您可以使用kubectl
和kubeconfig 文件控制集群。
相关操作
完成 RKE 安装后,可能还需要完成以下两个相关操作: