zh/2.8 fix header levels

This commit is contained in:
Billy Tat
2024-09-18 22:10:20 -07:00
parent 9b42a00a10
commit 8c8ec320c2
125 changed files with 522 additions and 503 deletions
@@ -6,18 +6,18 @@ title: Rancher 管理集群的最佳实践
<link rel="canonical" href="https://ranchermanager.docs.rancher.com/zh/reference-guides/best-practices/rancher-managed-clusters"/>
</head>
### Logging
## Logging
有关集群级别日志和应用日志的建议,请参见 [Logging 最佳实践](logging-best-practices.md)。
### Monitoring
## Monitoring
配置合理的监控和告警规则对于安全、可靠地运行生产环境中的工作负载至关重要。有关更多建议,请参阅[最佳实践](monitoring-best-practices.md)。
### 设置容器的技巧
## 设置容器的技巧
配置良好的容器可以极大地提高环境的整体性能和安全性。有关容器设置的建议,请参见[设置容器的技巧](tips-to-set-up-containers.md)。
### Rancher 管理 vSphere 集群的最佳实践
## Rancher 管理 vSphere 集群的最佳实践
[Rancher 管理 vSphere 集群的最佳实践](rancher-managed-clusters-in-vsphere.md)概述了在 vSphere 环境中配置下游 Rancher 集群的参考架构,以及 VMware 记录的标准 vSphere 最佳实践。
@@ -8,7 +8,7 @@ title: 设置容器的技巧
如果你需要了解容器安全的详细信息,也可以参见 Rancher 的[容器安全指南](https://rancher.com/complete-guide-container-security)。
### 使用通用容器操作系统
## 使用通用容器操作系统
在可能的情况下,你应该尽量在通用的容器基础操作系统上进行标准化。
@@ -16,17 +16,17 @@ Alpine 和 BusyBox 等较小的发行版减少了容器镜像的大小,并且
流行的发行版如 Ubuntu、Fedora 和 CentOS 等都经过了大量的测试,并提供了更多的功能。
### 使用 From scratch 容器
## 使用 From scratch 容器
如果你的微服务是一个独立的静态二进制,你应该使用 `From scratch` 容器。
`FROM scratch` 容器是一个[官方 Docker 镜像](https://hub.docker.com/_/scratch),它是空的,这样你就可以用它来设计最小的镜像。
这个镜像这将具有最小的攻击层和最小的镜像大小。
### 以非特权方式运行容器进程
## 以非特权方式运行容器进程
在可能的情况下,在容器内运行进程时使用非特权用户。虽然容器运行时提供了隔离,但仍然可能存在漏洞和攻击。如果容器以 root 身份运行,无意中或意外的主机挂载也会受到影响。有关为 Pod 或容器配置安全上下文的详细信息,请参见 [Kubernetes 文档](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)。
### 定义资源限制
## 定义资源限制
你应该将 CPU 和内存限制应用到你的 Pod 上。这可以帮助管理 worker 节点上的资源,并避免发生故障的微服务影响其他微服务。
在标准 Kubernetes 中,你可以设置命名空间级别的资源限制。在 Rancher 中,你可以设置项目级别的资源限制,项目内的所有命名空间都会继承这些限制。详情请参见 Rancher 官方文档。
@@ -35,7 +35,7 @@ Alpine 和 BusyBox 等较小的发行版减少了容器镜像的大小,并且
有关如何在[容器级别](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container)和命名空间级别设置资源限制的更多信息,请参见 Kubernetes 文档。
### 定义资源需求
## 定义资源需求
你应该将 CPU 和内存要求应用到你的 Pod 上。这对于通知调度器需要将你的 pod 放置在哪种类型的计算节点上,并确保它不会过度配置该节点资源至关重要。在 Kubernetes 中,你可以通过在 pod 的容器规范的资源请求字段中定义 `resources.requests` 来设置资源需求。详情请参见 [Kubernetes 文档](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container)。
:::note
@@ -46,7 +46,7 @@ Alpine 和 BusyBox 等较小的发行版减少了容器镜像的大小,并且
建议在容器级别上定义资源需求,否则,调度器会认为集群加载对你的应用没有帮助。
### 配置存活和就绪探测器
## 配置存活和就绪探测器
你可以为你的容器配置存活探测器和就绪探测器。如果你的容器不是完全崩溃,Kubernetes 是不会知道它是不健康的,除非你创建一个可以报告容器状态的端点或机制。或者,确保你的容器在不健康的情况下停止并崩溃。
Kubernetes 文档展示了如何[为容器配置存活和就绪探测器](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/)。
@@ -8,14 +8,14 @@ title: Rancher Server 的最佳实践
本指南介绍了让 Rancher 管理下游 Kubernetes 集群的 Rancher Server 运行建议。
### 推荐的架构和基础设施
## 推荐的架构和基础设施
有关在高可用 Kubernetes 集群上设置 Rancher Server 的通用建议,请参见[本指南](tips-for-running-rancher.md)。
### 部署策略
## 部署策略
[本指南](rancher-deployment-strategy.md)旨在帮助你选择部署策略(区域部署/中心辐射型部署),来让 Rancher Server 更好地管理下游 Kubernetes 集群。
### 在 vSphere 环境中安装 Rancher
## 在 vSphere 环境中安装 Rancher
[本指南](on-premises-rancher-in-vsphere.md)介绍了在 vSphere 环境中安装 Rancher 的参考架构,以及 VMware 记录的标准 vSphere 最佳实践。
@@ -10,22 +10,28 @@ title: Rancher 运行技巧
在设置高可用 Rancher 安装时,请考虑以下事项。
### 在单独的集群上运行 Rancher
## 在单独的集群上运行 Rancher
不要在安装了 Rancher 的 Kubernetes 集群上运行其他工作负载或微服务。
### 确保 Kubernetes 节点配置正确
## 确保 Kubernetes 节点配置正确
在部署节点时,请遵循 K8s 和 etcd 的最佳实践,其中包括禁用 swap,检查集群中的所有主机之间是否有良好的网络连接,为每个节点使用唯一的主机名、MAC 地址和 `product_uuids`,检查所需端口是否已经打开,并使用配置 SSD 的 etcd 进行部署。详情请参见 [kubernetes 官方文档](https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin)和 [etcd 性能操作指南](https://etcd.io/docs/v3.5/op-guide/performance/)。
### 使用 RKE 时:备份状态文件(Statefile
## 使用 RKE 时:备份状态文件(Statefile
RKE 将集群状态记录在一个名为 `cluster.rkestate` 的文件中,该文件对集群的恢复和/或通过 RKE 维护集群非常重要。由于这个文件包含证书材料,我们强烈建议在备份前对该文件进行加密。请在每次运行 `rke up` 后备份状态文件。
### 在同一个数据中心运行集群中的所有节点
## 在同一个数据中心运行集群中的所有节点
为达到最佳性能,请在同一地理数据中心运行所有三个节点。如果你在云(如 AWS)上运行节点,请在不同的可用区(AZ)中运行这三个节点。例如,在 us-west-2a 中运行节点 1,在 us-west-2b 中运行节点 2,在 us-west-2c 中运行节点 3。
### 保证开发和生产环境的相似性
## 保证开发和生产环境的相似性
强烈建议为运行 Rancher 的 Kubernetes 集群配备 “staging” 或 “pre-production” 环境。这个环境的软件和硬件配置应该尽可能接近你的生产环境。
### 监控集群以规划容量
## 监控集群以规划容量
Rancher Server 的 Kubernetes 集群应该尽可能满足[系统和硬件要求](../../../pages-for-subheaders/installation-requirements.md)。越偏离系统和硬件要求,你可能面临的风险就越大。
但是,已发布的要求已经考虑了各种工作负载类型,因此,基于指标来规划容量应该是扩展 Rancher 的最佳实践。
@@ -33,4 +39,3 @@ Rancher Server 的 Kubernetes 集群应该尽可能满足[系统和硬件要求]
你可以将 Rancher 集成业界领先的开源监控解决方案 Prometheus 以及能可视化 Prometheus 指标的 Grafana,来监控集群节点、Kubernetes 组件和软件部署的状态和过程。
在集群中[启用监控](../../../pages-for-subheaders/monitoring-and-alerting.md)后,你可以通过设置告警通知,来了解集群容量的使用情况。你还可以使用 Prometheus 和 Grafana 监控框架,在你扩容时建立关键指标的基线。
@@ -5,7 +5,7 @@ description: Rancher CLI 是一个命令行工具,用于在工作站中与 Ran
Rancher CLI(命令行界面)是一个命令行工具,可用于与 Rancher 进行交互。使用此工具,你可以使用命令行而不用通过 GUI 来操作 Rancher。
### 下载 Rancher CLI
## 下载 Rancher CLI
你可以直接 UI 下载二进制文件。
@@ -13,14 +13,14 @@ Rancher CLI(命令行界面)是一个命令行工具,可用于与 Rancher
1. 在导航侧边栏菜单底部,单击**简介**。
1. 在 **CLI 下载**中,有 Windows、Mac 和 Linux 的二进制文件下载链接。你还可以访问我们的 CLI [发布页面](https://github.com/rancher/cli/releases)直接下载二进制文件。
### 要求
## 要求
下载 Rancher CLI 后,你需要进行一些配置。Rancher CLI 需要:
- 你的 Rancher Server URL,用于连接到 Rancher Server。
- API 持有者令牌(Bearer Token),用于向 Rancher 进行身份验证。有关获取持有者令牌的更多信息,请参阅[创建 API 密钥](../user-settings/api-keys.md)。
### CLI 身份验证
## CLI 身份验证
在使用 Rancher CLI 控制你的 Rancher Server 之前,你必须使用 API 持有者令牌进行身份验证。运行以下命令进行登录(将 `<BEARER_TOKEN>``<SERVER_URL>` 替换为你的实际信息):
@@ -30,7 +30,7 @@ $ ./rancher login https://<SERVER_URL> --token <BEARER_TOKEN>
如果 Rancher Server 使用自签名证书,Rancher CLI 会提示你继续连接。
### 项目选择
## 项目选择
在执行命令之前,你必须先选择一个 Rancher 项目来执行这些命令。要选择[项目](../../how-to-guides/new-user-guides/manage-clusters/projects-and-namespaces.md),请运行 `./rancher context switch` 命令。输入此命令后,会显示可用项目的列表。输入一个数字以选择项目。
@@ -54,7 +54,7 @@ INFO[0005] Saving config to /Users/markbishop/.ranchcli2.json
请确保你可以成功运行 `rancher kubectl get pods`
### 命令
## 命令
以下命令可用于 Rancher CLI
@@ -76,12 +76,12 @@ INFO[0005] Saving config to /Users/markbishop/.ranchcli2.json
| `help, [h]` | 显示命令列表或某个命令的帮助。 |
### Rancher CLI 帮助
## Rancher CLI 帮助
使用 CLI 登录 Rancher Server 后,输入 `./rancher --help` 以获取命令列表。
所有命令都支持 `--help` 标志,该标志解释了每个命令的用法。
### 限制
## 限制
Rancher CLI **不能**用于安装[仪表板应用程序或 Rancher 功能 Chart](../../pages-for-subheaders/helm-charts-in-rancher.md)。
@@ -10,7 +10,7 @@ title: 集群配置
有关编辑集群成员资格的信息,请转至[此页面](../../how-to-guides/new-user-guides/manage-clusters/access-clusters/add-users-to-clusters.md)。
### 集群配置参考
## 集群配置参考
集群配置选项取决于 Kubernetes 集群的类型:
@@ -21,7 +21,7 @@ title: 集群配置
- [GKE 集群配置](gke-cluster-configuration.md)
- [AKS 集群配置](rancher-server-configuration/aks-cluster-configuration.md)
### 不同类型集群的管理功能
## 不同类型集群的管理功能
对于已有集群而言,可提供的选项和设置取决于你配置集群的方法。
@@ -4,6 +4,8 @@ title: EC2 主机配置参考
有关 EC2 和节点的更多详细信息,请参阅 [EC2 管理控制台](https://aws.amazon.com/ec2)的官方文档。
## Machine Pools
### 区域
构建集群的地理[区域](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html)。
@@ -4,6 +4,8 @@ title: Azure 主机配置
有关 Azure 的更多信息,请参阅官方 [Azure 文档](https://docs.microsoft.com/en-us/azure/?product=featured)。
## Machine Pools
### 环境
Microsoft 提供了多个[](https://docs.microsoft.com/en-us/cli/azure/cloud?view=azure-cli-latest)来满足地区法律的要求:
@@ -4,6 +4,8 @@ title: DigitalOcean 主机配置
有关 DigitalOcean、Droplet 的更多详细信息,请参阅[官方文档](https://docs.digitalocean.com/products/compute/)。
## Machine Pools
### 区域
配置创建 Droplet 的[区域](https://docs.digitalocean.com/glossary/region/)。
@@ -4,11 +4,11 @@ title: EC2 节点模板配置
有关 EC2 和节点的更多详细信息,请参阅 [EC2 管理控制台](https://aws.amazon.com/ec2)的官方文档。
### 区域
## 区域
在**区域**字段中,选择创建云凭证时使用的同一区域。
### 云凭证
## 云凭证
你的 AWS 账户访问信息,存储在[云凭证](../../../user-settings/manage-cloud-credentials.md)中。
@@ -24,11 +24,11 @@ title: EC2 节点模板配置
- [带有 PassRole 的 IAM 策略示例](../../../../how-to-guides/new-user-guides/launch-kubernetes-with-rancher/use-new-nodes-in-an-infra-provider/create-an-amazon-ec2-cluster.md#带有-passrole-的-iam-策略示例)(如果要使用 [Kubernetes 云提供商](../../../../pages-for-subheaders/set-up-cloud-providers.md),或将 IAM 配置文件传递给实例,则需要)
- [允许用户加密 EBS 卷的 IAM 策略示例](../../../../how-to-guides/new-user-guides/launch-kubernetes-with-rancher/use-new-nodes-in-an-infra-provider/create-an-amazon-ec2-cluster.md#允许加密-ebs-卷的-iam-策略示例)
### 验证和配置节点
## 验证和配置节点
为集群选择可用区和网络设置。
### 安全组
## 安全组
选择默认安全组或配置安全组。
@@ -36,12 +36,12 @@ title: EC2 节点模板配置
如果你自行为 EC2 实例提供安全组,Rancher 不会对其进行修改。因此,你需要让你的安全组允许 [Rancher 配置实例所需的端口](../../../../getting-started/installation-and-upgrade/installation-requirements/port-requirements.md#rke-上-rancher-server-节点的端口)。有关使用安全组控制 EC2 实例的入站和出站流量的更多信息,请参阅[这里](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#WorkingWithSecurityGroups)。
### 实例选项
## 实例选项
配置要创建的实例。确保为 AMI 配置正确的 **SSH 用户**。所选的区域可能不支持默认实例类型。在这种情况下,你必须选择一个确实存在的实例类型。否则将出现错误,表示请求的配置不受支持。
如果需要传递 **IAM 示例配置名称**(不是 ARN),例如要使用 [Kubernetes 云提供商](../../../../pages-for-subheaders/set-up-cloud-providers.md)时,策略则需要其他权限。有关示例策略,请参阅[带有 PassRole 的 IAM 策略示例](../../../../how-to-guides/new-user-guides/launch-kubernetes-with-rancher/use-new-nodes-in-an-infra-provider/create-an-amazon-ec2-cluster.md#带有-passrole-的-iam-策略示例)。
### 引擎选项
## 引擎选项
在节点模板的**引擎选项**中,你可以配置容器 daemon。你可能需要指定容器版本或容器镜像仓库 Mirror。
@@ -4,11 +4,11 @@ title: DigitalOcean 节点模板配置
账户访问信息存储在云凭证中。云凭证存储在 Kubernetes 密文中。多个节点模板可以使用相同的云凭证。你可以使用现有的云凭证或创建新的凭证。
### Droplet 选项
## Droplet 选项
**Droplet 选项**用于配置集群的地理区域和规范。
### Docker Daemon
## Docker Daemon
如果你使用 Docker[Docker daemon](https://docs.docker.com/engine/docker-overview/#the-docker-daemon) 配置选项包括:
@@ -2,7 +2,7 @@
title: EKS 集群配置参考
---
### 账号访问
## 账号访问
使用获取的信息为 IAM 策略填写每个下拉列表和字段:
@@ -11,7 +11,7 @@ title: EKS 集群配置参考
| 区域 | 从下拉列表中选择构建集群的地理区域。 |
| 云凭证 | 选择为 IAM 策略创建的云凭证。有关在 Rancher 中创建云凭证的更多信息,请参阅[此页面](../../user-settings/manage-cloud-credentials.md)。 |
### 服务角色
## 服务角色
选择一个[服务角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html)。
@@ -20,15 +20,15 @@ title: EKS 集群配置参考
| StandardRancher 生成的服务角色 | 如果选择此角色,Rancher 会自动添加一个服务角色以供集群使用。 |
| 自定义:从现有的服务角色中选择 | 如果选择此角色,Rancher 将允许你从已在 AWS 中创建的服务角色中进行选择。有关在 AWS 中创建自定义服务角色的更多信息,请参阅 [Amazon 文档](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role)。 |
### 密文加密
## 密文加密
可选:要加密密文,请选择或输入在 [AWS 密钥管理服务 (KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) 中创建的密钥。
### API Server 端点访问
## API Server 端点访问
配置公共/私有 API 访问是一个高级用例。有关详细信息,请参阅 [EKS 集群端点访问控制文档](https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html)。
### 专用 API 端点
## 专用 API 端点
如果你在创建集群时启用了私有 API 端点访问,并禁用了公共 API 端点访问,那么你必须进行额外的步骤才能使 Rancher 成功连接到集群。在这种情况下,一个弹窗将会显示,其中包含需要在要注册到 Rancher 的集群上运行的命令。配置集群后,你可以在任何能连接到集群的 Kubernetes API 的地方运行显示的命令。
@@ -36,7 +36,7 @@ title: EKS 集群配置参考
- 在创建集群时,创建具有私有和公共 API 端点访问权限的集群。在集群创建并处于 active 状态后,你可以禁用公共访问,Rancher 将能继续与 EKS 集群通信。
- 确保 Rancher 与 EKS 集群共享同一个子网。然后,你可以使用安全组使 Rancher 能够与集群的 API 端点进行通信。在这种情况下,你不需要运行注册集群的命令,Rancher 就能够与你的集群通信。有关配置安全组的更多信息,请参阅[安全组文档](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)。
### 公共访问端点
## 公共访问端点
你也可以选择通过显式 CIDR 块来限制对公共端点的访问。
@@ -48,7 +48,7 @@ title: EKS 集群配置参考
有关对集群端点的公共和私有访问的更多信息,请参阅 [Amazon EKS 文档](https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html)。
### 子网
## 子网
| 选项 | 描述 |
| ------- | ------------ |
@@ -60,7 +60,7 @@ title: EKS 集群配置参考
- [什么是 Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)
- [VPC 和子网](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)
### 安全组
## 安全组
Amazon 文档:
@@ -68,7 +68,7 @@ Amazon 文档:
- [VPC 的安全组](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)
- [创建安全组](https://docs.aws.amazon.com/vpc/latest/userguide/getting-started-ipv4.html#getting-started-create-security-group)
### Logging
## Logging
将 controlplane 日志配置为发送到 Amazon CloudWatch。如果你将集群日志发送到 CloudWatch Logs,你需要按照 standard CloudWatch Logs 支付数据引入和存储费用。
@@ -76,13 +76,13 @@ Amazon 文档:
有关 EKS controlplane 日志管理的更多信息,请参阅[官方文档](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html)。
### 托管节点组
## 托管节点组
Amazon EKS 托管的节点组自动为 Amazon EKS Kubernetes 集群的节点(Amazon EC2 实例)进行预置和生命周期管理。
有关节点组如何工作以及如何配置的更多信息,请参阅 [EKS 文档](https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html)。
#### 使用你自己的启动模板
### 使用你自己的启动模板
你可以提供启动模板 ID 和版本,以便轻松配置节点组中的 EC2 实例。如果你提供了启动模板,则以下设置都无法在 Rancher 中进行配置。因此,如果你使用启动模板,则需要在启动模板中指定以下列表中的所有必须和所需的设置。另请注意,如果提供了启动模板 ID 和版本,则只能更新模板版本。如果要使用新模板 ID,则需要创建新的托管节点组。
@@ -95,11 +95,11 @@ Amazon EKS 托管的节点组自动为 Amazon EKS Kubernetes 集群的节点(A
| 用户数据 | [MIME 多部分格式](https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html#launch-template-user-data)的 Cloud init 脚本。 | 选填 |
| 实例资源标签 | 标记节点组中的每个 EC2 实例。 | 选填 |
#### Rancher 管理的启动模板
### Rancher 管理的启动模板
如果你不指定启动模板,你将能够在 Rancher UI 中配置上述选项,并且可以在创建后更新所有这些选项。为了利用所有这些选项,Rancher 将为你创建和管理启动模板。Rancher 中的所有集群都将有一个 Rancher 管理的启动模板。此外,每个没有指定启动模板的托管节点组都将具有一个管理的启动模板版本。此启动模板的名称将具有 “rancher-managed-lt-” 前缀,后面是集群的显示名称。此外,Rancher 管理的启动模板将使用 “rancher-managed-template” 键和 “do-not-modify-or-delete” 值来进行标记,以将其识别为 Rancher 管理的启动模板。请注意,不要修改或删除此启动模板,或将此启动模板与其他集群或托管节点组一起使用。因为这可能会使你的节点组“降级”并需要销毁和重新创建。
#### 自定义 AMI
### 自定义 AMI
如果你在启动模板或 Rancher 中指定了自定义 AMI,则必须[正确配置](https://aws.amazon.com/premiumsupport/knowledge-center/eks-custom-linux-ami/)镜像,并且必须提供用户数据以[引导节点](https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html#launch-template-custom-ami)。这是一个高级用例,因此你必须要了解其要求。
@@ -111,7 +111,7 @@ Amazon EKS 托管的节点组自动为 Amazon EKS Kubernetes 集群的节点(A
:::
#### Spot 实例
### Spot 实例
Spot 实例现在[受 EKS 支持](https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types-spot)。如果你指定了启动模板,Amazon 建议不要在模板中提供实例类型。相反,Amazon 建议提供多种实例类型。如果你为节点组启用了“请求 Spot 实例”复选框,那么你将有机会提供多种实例类型。
@@ -121,7 +121,7 @@ Spot 实例现在[受 EKS 支持](https://docs.aws.amazon.com/eks/latest/usergui
:::
#### 节点组设置
### 节点组设置
以下设置也是可配置的。在创建节点组后,除“节点组名称”外的所有选项都是可编辑的。
@@ -135,7 +135,7 @@ Spot 实例现在[受 EKS 支持](https://docs.aws.amazon.com/eks/latest/usergui
| Tags | 管理的节点组的标签,这些标签不会传播到任何相关资源。 |
### 配置刷新间隔
## 配置刷新间隔
`eks-refresh-cron` 设置已弃用。它已迁移到 `eks-refresh` 设置,这是一个表示秒的整数。
@@ -4,11 +4,11 @@ title: 私有集群
在 GKE 中,[私有集群](https://cloud.google.com/kubernetes-engine/docs/concepts/private-cluster-concept)是一种集群,其节点仅通过分配内部 IP 地址与入站和出站流量相隔离。GKE 中的私有集群可以选择将 controlplane 端点作为公开访问的地址或作为私有地址。这与其他 Kubernetes 提供商不同,后者可能将具有私有 controlplane 端点的集群称为“私有集群”,但仍允许进出节点的流量。基于你的组织的网络和安全要求,你可能想创建一个有私有节点的集群,其中有或没有公共 controlplane 端点。从 Rancher 配置的 GKE 集群可以通过在**集群选项**中选择**私有集群**(在**显示高级选项**下)来使用隔离的节点。通过选择**启用私有端点**,可以选择将 controlplane 端点设为私有。
### 私有节点
## 私有节点
由于私有集群中的节点只有内部 IP 地址,它们将无法安装 cluster agentRancher 将无法完全管理集群。这可以通过几种方式来处理。
#### Cloud NAT
### Cloud NAT
:::caution
@@ -18,7 +18,7 @@ Cloud NAT 将[产生费用](https://cloud.google.com/nat/pricing)。
如果限制外出的互联网访问对你的组织来说不是一个问题,可以使用 Google 的 [Cloud NAT](https://cloud.google.com/nat/docs/using-nat) 服务来允许私有网络中的节点访问互联网,使它们能够从 Dockerhub 下载所需的镜像并与 Rancher management server 通信。这是最简单的解决方案。
#### 私有镜像仓库
### 私有镜像仓库
:::caution
@@ -28,11 +28,11 @@ Cloud NAT 将[产生费用](https://cloud.google.com/nat/pricing)。
如果要求限制节点的传入和传出流量,请按照离线安装说明,在集群所在的 VPC 上设置一个私有容器[镜像仓库](../../../../pages-for-subheaders/air-gapped-helm-cli-install.md),从而允许集群节点访问和下载运行 cluster agent 所需的镜像。如果 controlplane 端点也是私有的,Rancher 将需要[直接访问](#直接访问)它。
### 私有 controlplane 端点
## 私有 controlplane 端点
如果集群暴露了公共端点,Rancher 将能够访问集群,且无需执行额外的步骤。但是,如果集群没有公共端点,则必须确保 Rancher 可以访问集群。
#### Cloud NAT
### Cloud NAT
:::caution
@@ -42,7 +42,7 @@ Cloud NAT 将[产生费用](https://cloud.google.com/nat/pricing)。
如上所述,如果不考虑限制对节点的传出互联网访问,则可以使用 Google 的 [Cloud NAT](https://cloud.google.com/nat/docs/using-nat) 服务来允许节点访问互联网。当集群进行配置时,Rancher 将提供一个在集群上运行的注册命令。下载新集群的 [kubeconfig](https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl) 并在集群上运行提供的 kubectl 命令。如果要通过获取集群访问权来运行此命令,你可以创建临时节点或使用 VPC 中的现有节点,或者登录到某个集群节点或使用某个集群节点创建 SSH 隧道。
#### 直接访问
### 直接访问
如果 Rancher server 与集群的 controlplane 运行在同一 VPC 上,它将直接访问 controlplane 的私有端点。集群节点将需要访问[私有镜像仓库](#私有镜像仓库)以下载上述的镜像。
@@ -8,7 +8,7 @@ title: 同步
如果你同时处理来自另一个来源的更新,你可能会不小心覆盖一个来源的状态。如果你在完成一个来源的更新后 5 分钟内处理另一个来源的更新,也可能会发生这种情况。
:::
### 工作原理
## 工作原理
要理解同步是如何工作的,则必须理解 Rancher Cluster 对象上的两个字段:
@@ -2,15 +2,15 @@
title: 示例
---
### ServiceMonitor
## ServiceMonitor
你可以在[此处](https://github.com/prometheus-operator/prometheus-operator/blob/master/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml)找到 ServiceMonitor 自定义资源的示例。
### PodMonitor
## PodMonitor
你可以在[此处](https://github.com/prometheus-operator/prometheus-operator/blob/master/example/user-guides/getting-started/example-app-pod-monitor.yaml)找到 PodMonitor 示例,还可以在[此处](https://github.com/prometheus-operator/prometheus-operator/blob/master/example/user-guides/getting-started/prometheus-pod-monitor.yaml)找到引用它的 Prometheus 资源示例。
### PrometheusRule
## PrometheusRule
PrometheusRule 包含你通常放置在 [Prometheus 规则文件](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/)中的告警和记录规则。
@@ -18,6 +18,6 @@ PrometheusRule 包含你通常放置在 [Prometheus 规则文件](https://promet
你可以在[此页面](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/alerting.md)找到 PrometheusRule 示例。
### Alertmanager 配置
## Alertmanager 配置
有关示例配置,请参阅[本节](./receivers.md#alertmanager-配置示例)。
@@ -14,7 +14,7 @@ ServiceMonitor 比 PodMonitor 更常用,推荐用于大多数用例。
:::
### ServiceMonitor
## ServiceMonitor
这个伪 CRD 映射到 Prometheus 自定义资源配置的一部分。它以声明方式指定应如何监控 Kubernetes 服务组。
@@ -24,7 +24,7 @@ ServiceMonitor 比 PodMonitor 更常用,推荐用于大多数用例。
有关 ServiceMonitor 工作原理的更多信息,请参阅 [Prometheus Operator 文档](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/running-exporters.md)。
### PodMonitor
## PodMonitor
这个伪 CRD 映射到 Prometheus 自定义资源配置的一部分。它以声明方式指定应如何监控 Pod 组。
@@ -17,6 +17,8 @@ title: 与下游集群通信
3. [Node Agents](#3-node-agents)
4. [授权集群端点](#4-授权集群端点)
## Components
### 1. 认证代理
在此图中,名为 Bob 的用户希望查看在名为 User Cluster 1 的下游集群上运行的所有 Pod。在 Rancher 中,他可以运行 `kubectl` 命令来查看
@@ -2,7 +2,7 @@
title: Kubernetes 安全最佳实践
---
### 限制云元数据 API 访问
## 限制云元数据 API 访问
AWS、Azure、DigitalOcean 或 GCP 等云提供商通常会在本地向实例公开元数据服务。默认情况下,此端点可被运行在云实例上的 pod 访问,包括在托管的 Kubernetes(如 EKS、AKS、DigitalOcean Kubernetes 或 GKE)中的 pod,并且可以包含该节点的云凭证、配置数据(如 kubelet 凭证)以及其他敏感数据。为了降低在云平台上运行的这种风险,请遵循 [Kubernetes 安全建议](https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/#restricting-cloud-metadata-api-access),即限制授予实例凭证的权限,使用网络策略限制 pod 对元数据 API 的访问,并避免使用配置数据来传递密文。
@@ -6,7 +6,7 @@ title: Rancher 安全最佳实践
<link rel="canonical" href="https://ranchermanager.docs.rancher.com/zh/reference-guides/rancher-security/rancher-security-best-practices"/>
</head>
### 限制对 /version 和 /rancherversion 的公共访问
## 限制对 /version 和 /rancherversion 的公共访问
上游(本地) Rancher 实例提供正在运行的 Rancher 版本和用于构建它的 Go 版本信息。这些信息可以通过 `/version` 路径访问,该路径用于诸如自动化版本升级或确认部署成功等任务。上游实例还提供了可通过 `/rancherversion` 路径访问的 Rancher 版本信息。
@@ -14,7 +14,7 @@ title: Rancher 安全最佳实践
更多关于保护服务器的详细信息,请参阅 [OWASP Web Application Security Testing - Enumerate Infrastructure and Application Admin Interfaces](https://owasp.org/www-project-web-security-testing-guide/stable/4-Web_Application_Security_Testing/02-Configuration_and_Deployment_Management_Testing/05-Enumerate_Infrastructure_and_Application_Admin_Interfaces.html)。
### 会话管理
## 会话管理
某些环境可能需要额外的安全控制来管理会话。例如,你可能希望限制用户的并发活动会话或限制可以从哪些地理位置发起这些会话。Rancher 默认情况下不支持这些功能。
@@ -27,11 +27,11 @@ title: 安全
本文介绍了安全相关的文档以及资源,让你的 Rancher 安装和下游 Kubernetes 集群更加安全。
### NeuVector 与 Rancher 的集成
## NeuVector 与 Rancher 的集成
NeuVector 是一个开源的、以容器为中心的安全应用程序,现已集成到 Rancher 中。NeuVector 提供生产安全、DevOps 漏洞保护和容器防火墙等功能。请参阅 [Rancher 文档](../../integrations-in-rancher/neuvector/neuvector.md) 和 [NeuVector 文档](https://open-docs.neuvector.com/)了解更多信息。
### 在 Kubernetes 集群上运行 CIS 安全扫描
## 在 Kubernetes 集群上运行 CIS 安全扫描
Rancher 使用 [kube-bench](https://github.com/aquasecurity/kube-bench) 来运行安全扫描,从而检查 Kubernetes 是否按照 [CIS](https://www.cisecurity.org/cis-benchmarks/)Center for Internet Security,互联网安全中心)Kubernetes Benchmark 中定义的安全最佳实践进行部署。
@@ -47,13 +47,13 @@ Rancher 在集群上运行 CIS 安全扫描时会生成一份报告,该报告
有关详细信息,请参阅[安全扫描](../../how-to-guides/advanced-user-guides/cis-scan-guides/cis-scan-guides.md)。
### SELinux RPM
## SELinux RPM
[安全增强型 Linux (SELinux)](https://en.wikipedia.org/wiki/Security-Enhanced_Linux) 是对 Linux 的安全增强。被政府机构使用之后,SELinux 已成为行业标准,并在 CentOS 7 和 8 上默认启用。
我们提供了 `rancher-selinux``rke2-selinux` 两个 RPMRed Hat 软件包),让 Rancher 产品能够在 SELinux 主机上正常运行。有关详细信息,请参阅[此页面](selinux-rpm/selinux-rpm.md)。
### Rancher 加固指南
## Rancher 加固指南
Rancher 加固指南基于 <a href="https://www.cisecurity.org/benchmark/kubernetes/" target="_blank">CIS Kubernetes Benchmark</a>。
@@ -63,7 +63,7 @@ Rancher 加固指南基于 <a href="https://www.cisecurity.org/benchmark/kuberne
每个加固指南版本都针对特定的 CIS Kubernetes Benchmark、Kubernetes 和 Rancher 版本。
### CIS Benchmark 和自我评估
## CIS Benchmark 和自我评估
Benchmark 自我评估是 Rancher 安全加固指南的辅助。加固指南展示了如何加固集群,而 Benchmark 指南旨在帮助你评估加固集群的安全级别。
@@ -71,7 +71,7 @@ Benchmark 自我评估是 Rancher 安全加固指南的辅助。加固指南展
Rancher 自我评估指南的每个版本都对应于强化指南、Rancher、Kubernetes 和 CIS Benchmark 的特定版本。
### 第三方渗透测试报告
## 第三方渗透测试报告
Rancher 会定期聘请第三方对 Rancher 软件栈进行安全审计和渗透测试。被测环境遵循 Rancher 在测试时提供的强化指南。以前的渗透测试报告如下。
@@ -82,14 +82,14 @@ Rancher 会定期聘请第三方对 Rancher 软件栈进行安全审计和渗透
请注意,新报告不再共享或公开发布。
### Rancher 安全公告和 CVE
## Rancher 安全公告和 CVE
Rancher 致力于向社区通报我们产品中的安全问题。有关我们已解决的问题的 CVE(常见漏洞和暴露)列表,请参阅[此页](security-advisories-and-cves.md)。
### Kubernetes 安全最佳实践
## Kubernetes 安全最佳实践
有关保护 Kubernetes 集群的建议,请参阅 [Kubernetes 安全最佳实践](kubernetes-security-best-practices.md)指南。
### Rancher 安全最佳实践
## Rancher 安全最佳实践
有关保护 Rancher Manager 部署的建议,请参阅 [Rancher 安全最佳实践](rancher-security-best-practices.md)指南。
@@ -2,7 +2,7 @@
title: Docker 安装高级选项
---
### 自定义 CA 证书
## 自定义 CA 证书
如需 Rancher 在验证服务时使用 CA 根证书,请在启动 Rancher 容器时共享包含 CA 根证书的目录。
@@ -26,7 +26,7 @@ docker run -d --restart=unless-stopped \
rancher/rancher:latest
```
### API 审计日志
## API 审计日志
API 审计日志记录了通过 Rancher Server 进行的所有用户和系统事务。
@@ -45,7 +45,7 @@ docker run -d --restart=unless-stopped \
rancher/rancher:latest
```
### TLS 设置
## TLS 设置
如需使用不同的 TLS 配置,你可使用 `CATTLE_TLS_MIN_VERSION``CATTLE_TLS_CIPHERS` 环境变量。例如,将 TLS 1.0 设为可接受的最低 TLS 版本,如下:
@@ -61,7 +61,7 @@ docker run -d --restart=unless-stopped \
参见 [TLS 设置](../../getting-started/installation-and-upgrade/installation-references/tls-settings.md)了解更多信息和选项。
### 离线环境
## 离线环境
如果要访问此页面以完成离线安装,在运行安装命令时,你必须把私有镜像仓库的 URL 添加到 Server 标志前面。例如,将带有私有镜像仓库 URL 的 `<REGISTRY.DOMAIN.COM:PORT>` 添加到 `rancher/rancher:latest` 前面。
@@ -69,7 +69,7 @@ docker run -d --restart=unless-stopped \
<REGISTRY.DOMAIN.COM:PORT>/rancher/rancher:latest
### 持久化数据
## 持久化数据
Rancher 使用 etcd 作为数据存储。如果 Rancher 是使用 Docker 安装的,Rancher 会使用嵌入式 etcd。持久化数据位于容器的 `/var/lib/rancher` 路径中。
@@ -85,7 +85,7 @@ docker run -d --restart=unless-stopped \
特权访问是[必须](../../pages-for-subheaders/rancher-on-a-single-node-with-docker.md#rancher-特权访问)的。
### 在同一个节点中运行 `rancher/rancher` 和 `rancher/rancher-agent`
## 在同一个节点中运行 `rancher/rancher` 和 `rancher/rancher-agent`
如需使用单个节点运行 Rancher 并将同一个节点添加到集群,你必须调整映射给 `rancher/rancher` 容器的主机端口。