在这个部分的主要涉及的名词如下:

  • RKE(Rancher Kubernetes Engine):是经过认证的 Kubernetes 发行版,它拥有对应的 CLI 工具可用于创建和管理 Kubernetes 集群。在 Rancher UI 中创建集群时,它将调用 RKE 来配置 Rancher 启动的 Kubernetes 集群。
  • K3s (轻量级 Kubernetes): 和 RKE 类似,也是经过认证的 Kubernetes 发行版。它比 RKE 更新,更易用且更轻量化,全部组件都在一个小于 100 MB 的二进制文件中。从 Rancher v2.4 开始,Rancher 可以安装在 K3s 集群上。

安装选项概述

Rancher 的部署可以有三种架构:

  • 高可用 Kubernetes 安装: 我们建议使用 Kubernetes 程序包管理器 Helm 在专用的 Kubernetes 集群上安装 Rancher。在 RKE 集群中,需要使用三个节点以实现高可用性。在 K3s 集群中,仅需要两个节点即可。
  • 单节点 Kubernetes 安装: 另一个选择是在 Kubernetes 集群上使用 Helm 安装 Rancher,仅在集群中使用单个节点。虽然在这种情况下的 Rancher Server 不具有高可用性,但是这种架构既节省了资源,又保留了可扩展性。如果您想在短期内通过使用单个节点来节省资源,同时又保留高可用性迁移路径,最合适的架构就是单节点 Kubernetes 安装。
  • 单节点 Docker 安装: 将 Rancher 与 Docker 一起安装在单个节点上。这种安装方式的优点是开箱即用,建议您在测试和演示环境中使用这种架构。它的缺点也非常明显,单节点 Docker 安装和 Kubernetes 安装之间无法迁移。如果您已经决定了要在生产环境中使用 Rancher,我们推荐您在上述的两种 Kubernetes 安装中选择一种,在生产环境中使用。

关于在私有环境中或 HTTP 代理后面安装 Rancher,我们有单独的说明文档:

我们建议在 Kubernetes 集群上安装 Rancher,因为在多节点集群中,Rancher Server 可以实现高可用。这种高可用配置可以提升访问下游集群的稳定性。

为了测试或演示目的,您可以在单个节点上通过 Docker 安装 Rancher,这个过程非常简洁,基本上可以实现开箱即用。

我们的描述了如何使用 K3s 或 RKE 创建和管理 Kubernetes 集群,然后在这个集群上安装 Rancher。

当 Kubernetes 集群中的节点正在运行并满足节点要求时,您可以使用 Helm 将 Rancher 部署到 Kubernetes 上。Helm 使用 Rancher 的 Helm Chart 在 Kubernetes 集群的每个节点上安装 Rancher 的副本。我们建议使用负载均衡器将流量定向到集群中每个 Rancher 副本。

有关 Rancher 部署架构的详细讨论,请参考、推荐架构或。

架构技巧

为了获得最佳性能和更高的安全性,我们建议为 Rancher 管理服务器使用单独的专用 Kubernetes 集群,不在此集群上运行用户工作负载。部署 Rancher 后,您可以创建或导入集群运行您的工作负载。

有关更多架构建议,请参考。

关于在 Kubernetes 上安装 Rancher 的详细配置,请参考Helm Chart 选项

在 Rancher 安装指南中,推荐使用 K3s 或 RKE 配置 Kubernetes 集群,并在这个集群中部署 Rancher。K3s 和 RKE 都有许多配置选项可用于自定义 Kubernetes 以适合您的特定环境。有关选项和功能的完整列表,请参见文档:

在 Docker 上安装 Rancher 的更多选项