mirror of
https://github.com/rancher/rancher-docs.git
synced 2026-09-26 13:08:11 +00:00
Merge branch 'main' into release/v2.7.2
This commit is contained in:
-109
@@ -1,109 +0,0 @@
|
||||
---
|
||||
title: 创建 EKS 集群
|
||||
---
|
||||
Amazon EKS 为 Kubernetes 集群提供托管的 controlplane。Amazon EKS 跨多个可用区运行 Kubernetes controlplane 实例,以确保高可用性。Rancher 提供了一个直观的用户界面,用于管理和部署你运行在 Amazon EKS 中的 Kubernetes 集群。通过本指南,你将使用 Rancher 在你的 AWS 账户中快速轻松地启动 Amazon EKS Kubernetes 集群。有关 Amazon EKS 的更多信息,请参阅此[文档](https://docs.aws.amazon.com/eks/latest/userguide/what-is-eks.html)。
|
||||
|
||||
|
||||
## Amazon Web 服务的先决条件
|
||||
|
||||
:::caution
|
||||
|
||||
部署到 Amazon AWS 会产生费用。有关详细信息,请参阅 [EKS 定价页面](https://aws.amazon.com/eks/pricing/)。
|
||||
|
||||
:::
|
||||
|
||||
要在 EKS 上设置集群,你需要设置 Amazon VPC(虚拟私有云)。你还需要确保用于创建 EKS 集群的账号具有适当的[权限](#最小-eks-权限)。详情请参阅 [Amazon EKS 先决条件官方指南](https://docs.aws.amazon.com/eks/latest/userguide/getting-started-console.html#eks-prereqs)。
|
||||
|
||||
### Amazon VPC
|
||||
|
||||
你需要建立一个 Amazon VPC 来启动 EKS 集群。VPC 使你能够将 AWS 资源启动到你定义的虚拟网络中。你可以自己设置一个 VPC,并在 Rancher 中创建集群时提供它。如果你创建过程中没有提供,Rancher 将创建一个 VPC。详情请参阅[教程:为你的 Amazon EKS 集群创建具有公有和私有子网的 VPC](https://docs.aws.amazon.com/eks/latest/userguide/create-public-private-vpc.html)。
|
||||
|
||||
### IAM 策略
|
||||
|
||||
Rancher 需要访问你的 AWS 账户才能在 Amazon EKS 中预置和管理你的 Kubernetes 集群。你需要在 AWS 账户中为 Rancher 创建一个用户,并定义该用户可以访问的内容。
|
||||
|
||||
1. 按照[此处](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html)的步骤创建具有编程访问权限的用户。
|
||||
|
||||
2. 创建一个 IAM 策略,定义该用户在 AWS 账户中有权访问的内容。请务必仅授予此用户所需的最小访问权限。[此处](#最小-eks-权限)列出了 EKS 集群所需的最低权限。请按照[此处](https://docs.aws.amazon.com/eks/latest/userguide/EKS_IAM_user_policies.html)的步骤创建 IAM 策略并将策略绑定到你的用户。
|
||||
|
||||
3. 最后,按照[此处](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)的步骤为该用户创建访问密钥和密文密钥。
|
||||
|
||||
:::note 重要提示:
|
||||
|
||||
定期轮换访问密钥和密文密钥非常重要。有关详细信息,请参阅此[文档](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#rotating_access_keys_console)。
|
||||
|
||||
:::
|
||||
|
||||
有关 EKS 的 IAM 策略的更多详细信息,请参阅 [Amazon EKS IAM 策略、角色和权限的官方文档](https://docs.aws.amazon.com/eks/latest/userguide/IAM_policies.html)。
|
||||
|
||||
|
||||
## 创建 EKS 集群
|
||||
|
||||
使用 Rancher 配置你的 Kubernetes 集群。
|
||||
|
||||
1. 点击 **☰ > 集群管理**。
|
||||
1. 在**集群**页面上,单击**创建**。
|
||||
1. 选择 **Amazon EKS**。
|
||||
1. 输入**集群名称**。
|
||||
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
|
||||
1. 完成表单的其余部分。如需帮助,请参阅[配置参考](#eks-集群配置参考)。
|
||||
1. 单击**创建**。
|
||||
|
||||
**结果**:
|
||||
|
||||
你已创建集群,集群的状态是**配置中**。Rancher 已在你的集群中。
|
||||
|
||||
当集群状态变为 **Active** 后,你可访问集群。
|
||||
|
||||
**Active** 状态的集群会分配到两个项目:
|
||||
|
||||
- `Default`:包含 `default` 命名空间
|
||||
- `System`:包含 `cattle-system`,`ingress-nginx`,`kube-public` 和 `kube-system` 命名空间。
|
||||
|
||||
## EKS 集群配置参考
|
||||
|
||||
有关 EKS 集群配置选项的完整列表,请参阅[此页面](../reference-guides/cluster-configuration/rancher-server-configuration/eks-cluster-configuration.md)。
|
||||
|
||||
## 架构
|
||||
|
||||
下图展示了 Rancher 2.x 的上层架构。下图中,Rancher Server 管理两个 Kubernetes 集群,其中一个由 RKE 创建,另一个由 EKS 创建。
|
||||
|
||||
<figcaption>通过 Rancher 的认证代理管理 Kubernetes 集群</figcaption>
|
||||
|
||||

|
||||
|
||||
## AWS 服务事件
|
||||
|
||||
有关 AWS 服务事件的信息,请参阅[此页面](https://status.aws.amazon.com/)。
|
||||
|
||||
## 安全与合规
|
||||
|
||||
默认情况下,只有创建集群的 IAM 用户或角色才能访问该集群。在没有额外配置的情况下,使用其他用户或角色访问集群将导致错误。在 Rancher 中,这意味着使用映射到未用于创建集群的用户或角色的凭证,导致未经授权的错误。除非用于注册集群的凭证与 EKSCtl 使用的角色或用户匹配,否则 EKSCtl 集群将不会注册到 Rancher。通过将其他用户和角色添加到 kube-system 命名空间中的 aws-auth configmap,可以授权其他用户和角色访问集群。如需更深入的解释和详细说明,请参阅此[文档](https://aws.amazon.com/premiumsupport/knowledge-center/amazon-eks-cluster-access/)。
|
||||
|
||||
有关 Amazon EKS Kubernetes 集群的安全性和合规性的更多信息,请参阅此[文档](https://docs.aws.amazon.com/eks/latest/userguide/shared-responsibilty.html)。
|
||||
|
||||
## 教程
|
||||
|
||||
AWS 开源博客上的这篇[教程](https://aws.amazon.com/blogs/opensource/managing-eks-clusters-rancher/)将指导你使用 Rancher 设置一个 EKS 集群,部署一个可公开访问的示例应用来测试集群,并部署一个使用其他开源软件(如 Grafana 和 influxdb)来实时监控地理信息的示例项目。
|
||||
|
||||
## 最小 EKS 权限
|
||||
|
||||
请参阅[此页面](../reference-guides/amazon-eks-permissions/minimum-eks-permissions.md),了解在 Rancher 中使用 EKS 驱动所有功能所需的最小权限。
|
||||
|
||||
## 同步
|
||||
|
||||
EKS 配置者可以在 Rancher 和提供商之间同步 EKS 集群的状态。有关其工作原理的技术说明,请参阅[同步](../reference-guides/cluster-configuration/rancher-server-configuration/sync-clusters.md)。
|
||||
|
||||
有关配置刷新间隔的信息,请参阅[本节](../reference-guides/cluster-configuration/rancher-server-configuration/eks-cluster-configuration.md#配置刷新间隔)。
|
||||
|
||||
## 故障排除
|
||||
|
||||
如果你的更改被覆盖,可能是集群数据与 EKS 同步的方式导致的。不要在使用其他源(例如 EKS 控制台)对集群进行更改后,又在五分钟之内在 Rancher 中进行更改。有关其工作原理,以及如何配置刷新间隔的信息,请参阅[同步](#同步)。
|
||||
|
||||
如果在修改或注册集群时返回未经授权的错误,并且集群不是使用你的凭证所属的角色或用户创建的,请参阅[安全与合规](#安全与合规)。
|
||||
|
||||
有关 Amazon EKS Kubernetes 集群的任何问题或故障排除详细信息,请参阅此[文档](https://docs.aws.amazon.com/eks/latest/userguide/troubleshooting.html)。
|
||||
|
||||
## 以编程方式创建 EKS 集群
|
||||
|
||||
通过 Rancher 以编程方式部署 EKS 集群的最常见方法是使用 Rancher 2 Terraform Provider。详情请参见[使用 Terraform 创建集群](https://registry.terraform.io/providers/rancher/rancher2/latest/docs/resources/cluster)。
|
||||
+3
-3
@@ -2,7 +2,7 @@
|
||||
title: Fleet - 大规模的 GitOps
|
||||
---
|
||||
|
||||
Fleet 是大规模的 GitOps。你可以使用 Fleet 管理多达一百万个集群。此外,它非常轻量,因此也非常适用于[单个集群](https://fleet.rancher.io/single-cluster-install/)。但是,它在[大规模](https://fleet.rancher.io/multi-cluster-install/)场景下的功能更加强大。大规模指的是大量集群、大量部署或大量团队。
|
||||
Fleet 是大规模的 GitOps。你可以使用 Fleet 管理多达一百万个集群。此外,它非常轻量,因此也非常适用于[单个集群](https://fleet.rancher.io/tut-deployment#single-cluster-examples)。但是,它在[大规模](https://fleet.rancher.io/tut-deployment#multi-cluster-examples)场景下的功能更加强大。大规模指的是大量集群、大量部署或大量团队。
|
||||
|
||||
Fleet 是一个独立于 Rancher 的项目,你可以使用 Helm 将它安装在任何 Kubernetes 集群上。
|
||||
|
||||
@@ -31,7 +31,7 @@ Fleet 预装在 Rancher 中,可以通过 Rancher UI 中的**持续交付**选
|
||||
|
||||
1. 单击左侧导航栏上的 **Git 仓库**将 git 仓库部署到当前工作空间中的集群中。
|
||||
|
||||
1. 选择你的 [git 仓库](https://fleet.rancher.io/gitrepo-add/)和[目标集群/集群组](https://fleet.rancher.io/gitrepo-structure/)。你还可以单击左侧导航栏中的**集群组**在 UI 中创建集群组。
|
||||
1. 选择你的 [git 仓库](https://fleet.rancher.io/gitrepo-add/)和[目标集群/集群组](https://fleet.rancher.io/gitrepo-targets/)。你还可以单击左侧导航栏中的**集群组**在 UI 中创建集群组。
|
||||
|
||||
1. 部署 git 仓库后,你可以通过 Rancher UI 监控应用。
|
||||
|
||||
@@ -41,7 +41,7 @@ Fleet 预装在 Rancher 中,可以通过 Rancher UI 中的**持续交付**选
|
||||
|
||||
## GitHub 仓库
|
||||
|
||||
你可以单击此处获取 [Fleet Helm Chart](https://github.com/rancher/fleet/releases/tag/v0.3.10)。
|
||||
你可以单击此处获取 [Fleet Helm Chart](https://github.com/rancher/fleet/releases)。
|
||||
|
||||
## 在代理后使用 Fleet
|
||||
|
||||
|
||||
+4
-4
@@ -17,13 +17,13 @@ Rancher UI 在基于 Firefox 或 Chromium 的浏览器(Chrome、Edge、Opera
|
||||
|
||||
## Kubernetes 与 Rancher 的兼容性
|
||||
|
||||
Rancher 需要安装在支持的 Kubernetes 版本上。请查阅 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix),确保你的 Kubernetes 版本受支持。
|
||||
Rancher 需要安装在支持的 Kubernetes 版本上。请查阅 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions),确保你的 Kubernetes 版本受支持。
|
||||
|
||||
## 操作系统和容器运行时要求
|
||||
|
||||
所有支持的操作系统都使用 64-bit x86 架构。Rancher 兼容当前所有的主流 Linux 发行版。
|
||||
|
||||
[Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix)列出了每个 Rancher 版本测试过的操作系统和 Docker 版本。
|
||||
[Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions)列出了每个 Rancher 版本测试过的操作系统和 Docker 版本。
|
||||
|
||||
运行 RKE 集群的节点需要安装 Docker。RKE2 或 K3s 集群不需要它。
|
||||
|
||||
@@ -45,7 +45,7 @@ Rancher 需要安装在支持的 Kubernetes 版本上。请查阅 [Rancher 支
|
||||
|
||||
对于容器运行时,K3s 默认附带了自己的 containerd。你也可以将 K3s 配置为使用已安装的 Docker 运行时。有关在 Docker 中使用 K3s 的更多信息,请参阅 [K3s 文档](https://docs.k3s.io/advanced#using-docker-as-the-container-runtime)。
|
||||
|
||||
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix)。如需指定 K3s 版本,在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。
|
||||
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions)。如需指定 K3s 版本,在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。
|
||||
|
||||
如果你使用 **Raspbian Buster** 在 K3s 集群上安装 Rancher,请按照[这些步骤](https://rancher.com/docs/k3s/latest/en/advanced/#enabling-legacy-iptables-on-raspbian-buster)切换到旧版 iptables。
|
||||
|
||||
@@ -55,7 +55,7 @@ Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的
|
||||
|
||||
对于容器运行时,RKE2 附带了自己的 containerd。RKE2 安装不需要 Docker。
|
||||
|
||||
如需了解 RKE2 通过了哪些操作系统版本的测试,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix)。
|
||||
如需了解 RKE2 通过了哪些操作系统版本的测试,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions)。
|
||||
|
||||
## 硬件要求
|
||||
|
||||
|
||||
+13
-15
@@ -14,18 +14,16 @@ Prometheus 支持查看 Rancher 和 Kubernetes 对象的指标。通过使用时
|
||||
|
||||
在 Rancher v2.5 中引入的 `rancher-monitoring` operator 由 [Prometheus](https://prometheus.io/)、[Grafana](https://grafana.com/grafana/)、[Alertmanager](https://prometheus.io/docs/alerting/latest/alertmanager/), [Prometheus Operator](https://github.com/prometheus-operator/prometheus-operator) 和 [Prometheus adapter](https://github.com/DirectXMan12/k8s-prometheus-adapter) 提供支持。
|
||||
|
||||
Monitoring 应用允许你:
|
||||
Monitoring 应用:
|
||||
|
||||
- 监控集群节点、Kubernetes 组件和软件部署的状态和进程
|
||||
- 根据 Prometheus 收集的指标定义告警
|
||||
- 创建自定义 Grafana 仪表板
|
||||
- 使用 Prometheus Alertmanager 通过电子邮件、Slack、PagerDuty 等配置告警通知
|
||||
- 根据 Prometheus 收集的指标,将预先计算的、经常需要的,或计算成本高的表达式定义为新的时间序列
|
||||
- 通过 Prometheus Adapter,将从 Prometheus 收集的指标公开给 Kubernetes Custom Metrics API,以便在 HPA 中使用
|
||||
- 监控集群节点、Kubernetes 组件和软件部署的状态和进程。
|
||||
- 根据 Prometheus 收集的指标定义告警。
|
||||
- 创建自定义 Grafana 仪表板。
|
||||
- 使用 Prometheus Alertmanager 通过电子邮件、Slack、PagerDuty 等配置告警通知。
|
||||
- 根据 Prometheus 收集的指标,将预先计算的、经常需要的,或计算成本高的表达式定义为新的时间序列。
|
||||
- 通过 Prometheus Adapter,将从 Prometheus 收集的指标公开给 Kubernetes Custom Metrics API,以便在 HPA 中使用。
|
||||
|
||||
## Monitoring 的工作原理
|
||||
|
||||
有关 monitoring 组件如何协同工作的说明,请参阅[此页面](../integrations-in-rancher/monitoring-and-alerting/how-monitoring-works.md)。
|
||||
有关监控组件如何协同工作的说明,请参阅 [Monitoring 工作原理](../integrations-in-rancher/monitoring-and-alerting/how-monitoring-works.md)。
|
||||
|
||||
## 默认组件和部署
|
||||
|
||||
@@ -65,7 +63,7 @@ Monitoring 应用会默认部署一些告警。要查看默认告警,请转到
|
||||
|
||||
### 在 Rancher 中配置 Monitoring 资源
|
||||
|
||||
> 此处的配置参考假设你已经熟悉 monitoring 组件的协同工作方式。如需更多信息,请参阅 [monitoring 的工作原理](../integrations-in-rancher/monitoring-and-alerting/how-monitoring-works.md)。
|
||||
此处的配置参考假设你已经熟悉 monitoring 组件的协同工作方式。如需更多信息,请参阅 [monitoring 的工作原理](../integrations-in-rancher/monitoring-and-alerting/how-monitoring-works.md)。
|
||||
|
||||
- [ServiceMonitor 和 PodMonitor](../reference-guides/monitoring-v2-configuration/servicemonitors-and-podmonitors.md)
|
||||
- [接收器](../reference-guides/monitoring-v2-configuration/receivers.md)
|
||||
@@ -76,7 +74,7 @@ Monitoring 应用会默认部署一些告警。要查看默认告警,请转到
|
||||
|
||||
### 配置 Helm Chart 选项
|
||||
|
||||
有关 `rancher-monitoring` Chart 选项的更多信息,包括设置资源限制和请求的选项,请参阅[此页面](../reference-guides/monitoring-v2-configuration/helm-chart-options.md)。
|
||||
有关 `rancher-monitoring` Chart 选项的更多信息,包括设置资源限制和请求的选项,请参阅 [Helm Chart 选项](../reference-guides/monitoring-v2-configuration/helm-chart-options.md)。
|
||||
|
||||
## Windows 集群支持
|
||||
|
||||
@@ -84,11 +82,11 @@ Monitoring 应用会默认部署一些告警。要查看默认告警,请转到
|
||||
|
||||
为了能够为 Windows 完全部署 Monitoring V2,你的所有 Windows 主机都必须至少具有 v0.1.0 的 [wins](https://github.com/rancher/wins) 版本。
|
||||
|
||||
有关如何在现有 Windows 主机上升级 wins 版本的更多详细信息,请参阅 [Windows 集群对 Monitoring V2 的支持](../integrations-in-rancher/monitoring-and-alerting/windows-support.md)。
|
||||
有关如何在现有 Windows 主机上升级 wins 版本的更多信息,请参阅 [Windows 集群对 Monitoring V2 的支持](../integrations-in-rancher/monitoring-and-alerting/windows-support.md)。
|
||||
|
||||
|
||||
## 已知问题
|
||||
|
||||
有一个[已知问题](https://github.com/rancher/rancher/issues/28787#issuecomment-693611821),即 K3s 集群需要更多的默认内存。如果你在 K3s 集群上启用 monitoring,我们建议将 `prometheus.prometheusSpec.resources.memory.limit` 设置为 2500 Mi,并将 `prometheus.prometheusSpec.resources.memory.request` 设置为 1750 Mi。
|
||||
有一个[已知问题](https://github.com/rancher/rancher/issues/28787#issuecomment-693611821),即 K3s 集群需要的内存超过分配的默认内存。如果你在 K3s 集群上启用 Monitoring,将 `prometheus.prometheusSpec.resources.memory.limit` 设置为 2500 Mi,并将 `prometheus.prometheusSpec.resources.memory.request` 设置为 1750 Mi。
|
||||
|
||||
有关调试高内存用量的提示,请参阅[此页面](../how-to-guides/advanced-user-guides/monitoring-alerting-guides/debug-high-memory-usage.md)。
|
||||
如需获取意见和建议,请参阅[调试高内存使用情况](../how-to-guides/advanced-user-guides/monitoring-alerting-guides/debug-high-memory-usage.md)。
|
||||
|
||||
+2
-2
@@ -72,7 +72,7 @@ title: 在云厂商的新节点上启动 Kubernetes
|
||||
|
||||
#### 节点池污点
|
||||
|
||||
如果你没有在节点模板上定义[污点](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/),则可以为每个节点池添加污点。相比在节点模板上添加污点,在节点池上添加污点的好处在于,你可以替换节点模板,而不必担心污点是否在节点模板中。
|
||||
如果你没有在节点模板上定义[污点](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/),则可以为每个节点池添加污点。将污点添加到节点池的好处是你可以更改节点模板,而不需要先确保污点存在于新模板中。
|
||||
|
||||
每个污点都将自动添加到节点池中已创建的节点。因此,如果你在已有节点的节点池中添加污点,污点不会应用到已有的节点,但是添加到该节点池中的新节点都将获得该污点。
|
||||
|
||||
@@ -149,4 +149,4 @@ RKE2 CLI 公开了 `server` 和 `agent` 两个角色,它们分别代表 Kubern
|
||||
|
||||
- 至少拥有三个角色为 etcd 的节点,来确保失去一个节点时仍能存活。
|
||||
- 至少两个节点具有 controlplane 角色,以实现主组件高可用性。
|
||||
- 至少两个具有 worker 角色的节点,用于在节点故障时重新安排工作负载。
|
||||
- 至少两个具有 worker 角色的节点,用于在节点故障时重新安排工作负载。
|
||||
|
||||
Reference in New Issue
Block a user