mirror of
https://github.com/rancher/rancher-docs.git
synced 2026-09-25 04:28:15 +00:00
Restructure Chinese docs
This commit is contained in:
-260
@@ -1,260 +0,0 @@
|
||||
---
|
||||
title: 7 层 NGINX 负载均衡器上的 TLS 终止(Docker 安装)
|
||||
---
|
||||
|
||||
如果你的开发或测试环境要求在负载均衡器上终止 TLS/SSL,而不是在 Rancher Server 上,请部署 Rancher 并配置负载均衡器。
|
||||
|
||||
如果要在基础设施中对 TLS 集中进行终止,请使用 7 层负载均衡器。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。
|
||||
|
||||
本文中的安装步骤将引导你使用单个容器部署 Rancher,并提供 7 层 NGINX 负载均衡器的示例配置。
|
||||
|
||||
## 操作系统,Docker,硬件和网络要求
|
||||
|
||||
请确保你的节点满足常规的[安装要求](../../../../pages-for-subheaders/installation-requirements.md)。
|
||||
|
||||
## 安装概要
|
||||
|
||||
|
||||
## 1. 配置 Linux 主机
|
||||
|
||||
根据我们的[要求](../../../../pages-for-subheaders/installation-requirements.md)配置一个 Linux 主机来启动 Rancher Server。
|
||||
|
||||
## 2. 选择一个 SSL 选项并安装 Rancher
|
||||
|
||||
出于安全考虑,使用 Rancher 时请使用 SSL(Secure Sockets Layer)。SSL 保护所有 Rancher 网络通信(如登录和与集群交互)的安全。
|
||||
|
||||
:::note 你是否需要:
|
||||
|
||||
- 完成离线安装。
|
||||
- 记录所有 Rancher API 的事务。
|
||||
|
||||
继续之前,请参见[高级选项](#高级选项)。
|
||||
|
||||
:::
|
||||
|
||||
选择以下的选项之一:
|
||||
|
||||
<details id="option-a">
|
||||
<summary>选项 A:使用你自己的证书 - 自签名</summary>
|
||||
|
||||
如果要使用自签名证书来加密通信,你必须在负载均衡器(后续步骤)和 Rancher 容器上安装证书。运行 Docker 命令部署 Rancher,将 Docker 指向你的证书。
|
||||
|
||||
:::note 先决条件:
|
||||
|
||||
创建自签名证书。
|
||||
|
||||
- 证书文件的格式必须是 PEM。
|
||||
|
||||
:::
|
||||
|
||||
**使用自签名证书安装 Rancher**:
|
||||
|
||||
1. 在运行 Docker 命令部署 Rancher 时,将 Docker 指向你的 CA 证书文件。
|
||||
|
||||
```
|
||||
docker run -d --restart=unless-stopped \
|
||||
-p 80:80 -p 443:443 \
|
||||
-v /etc/your_certificate_directory/cacerts.pem:/etc/rancher/ssl/cacerts.pem \
|
||||
rancher/rancher:latest
|
||||
```
|
||||
|
||||
</details>
|
||||
<details id="option-b">
|
||||
<summary>选项 B:使用你自己的证书 - 可信 CA 签名的证书</summary>
|
||||
|
||||
如果你的集群面向公众,则最好使用由公认 CA 签署的证书。
|
||||
|
||||
:::note 先决条件:
|
||||
|
||||
- 证书文件的格式必须是 PEM。
|
||||
|
||||
:::
|
||||
|
||||
**使用授信 CA 签发的证书安装 Rancher**:
|
||||
|
||||
如果你使用授信 CA 签发的证书,你无需在 Rancher 容器中安装证书。但是,请确保不要生成和存储默认的 CA 证书(你可以通过将 `--no-cacerts` 参数传递给容器来实现)。
|
||||
|
||||
1. 输入以下命令:
|
||||
|
||||
```
|
||||
docker run -d --restart=unless-stopped \
|
||||
-p 80:80 -p 443:443 \
|
||||
rancher/rancher:latest --no-cacerts
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
## 3. 配置负载均衡器
|
||||
|
||||
在 Rancher 容器前使用负载均衡器时,容器无需从端口 80 或端口 443 重定向端口通信。你可以通过传递 `X-Forwarded-Proto: https` 标头禁用此重定向。
|
||||
|
||||
负载均衡器或代理必须支持以下内容:
|
||||
|
||||
- **WebSocket** 连接
|
||||
- **SPDY** / **HTTP/2** 协议
|
||||
- 传递/设置以下标头:
|
||||
|
||||
| 标头 | 值 | 描述 |
|
||||
|--------|-------|-------------|
|
||||
| `Host` | 用于访问 Rancher 的主机名。 | 识别客户端所请求的服务器。 |
|
||||
| `X-Forwarded-Proto` | `https` | 识别客户端连接负载均衡器或代理时所用的协议。<br /><br/>**注意**:如果此标头存在,`rancher/rancher` 不会将 HTTP 重定向到 HTTPS。 |
|
||||
| `X-Forwarded-Port` | 用于访问 Rancher 的端口。 | 识别客户端连接到负载均衡器或代理时所用的端口。 |
|
||||
| `X-Forwarded-For` | 客户端 IP 地址 | 识别客户端的原始 IP 地址。 |
|
||||
### 示例 NGINX 配置
|
||||
|
||||
此 NGINX 配置已在 NGINX 1.14 上进行了测试。
|
||||
|
||||
:::note
|
||||
|
||||
此 NGINX 配置只是一个示例,可能不适合你的环境。如需查阅完整文档,请参见 [NGINX 负载均衡 - HTTP 负载均衡](https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/)。
|
||||
|
||||
:::
|
||||
|
||||
- 将 `rancher-server` 替换为运行 Rancher 容器的节点的 IP 或主机名。
|
||||
- 将两处的 `FQDN` 均替换为 Rancher 的 DNS 名称。
|
||||
- 把 `/certs/fullchain.pem` 和 `/certs/privkey.pem` 分别替换为服务器证书和服务器证书密钥的位置。
|
||||
|
||||
```
|
||||
worker_processes 4;
|
||||
worker_rlimit_nofile 40000;
|
||||
|
||||
events {
|
||||
worker_connections 8192;
|
||||
}
|
||||
|
||||
http {
|
||||
upstream rancher {
|
||||
server rancher-server:80;
|
||||
}
|
||||
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default Upgrade;
|
||||
'' close;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
server_name FQDN;
|
||||
ssl_certificate /certs/fullchain.pem;
|
||||
ssl_certificate_key /certs/privkey.pem;
|
||||
|
||||
location / {
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Port $server_port;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_pass http://rancher;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
# 此项允许执行的 shell 窗口保持开启,最长可达15分钟。不使用此参数的话,默认1分钟后自动关闭。
|
||||
proxy_read_timeout 900s;
|
||||
proxy_buffering off;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name FQDN;
|
||||
return 301 https://$server_name$request_uri;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<br/>
|
||||
|
||||
## 后续操作
|
||||
|
||||
- **推荐**:检查单节点[备份](../../../../how-to-guides/new-user-guides/backup-restore-and-disaster-recovery/back-up-docker-installed-rancher.md)和[恢复](../../../../how-to-guides/new-user-guides/backup-restore-and-disaster-recovery/restore-docker-installed-rancher.md)。你可能暂时没有需要备份的数据,但是我们建议你在常规使用 Rancher 后创建备份。
|
||||
- 创建 Kubernetes 集群:[配置 Kubernetes 集群](../../../../pages-for-subheaders/kubernetes-clusters-in-rancher-setup.md)。
|
||||
|
||||
<br/>
|
||||
|
||||
## 常见问题和故障排除
|
||||
|
||||
如果你需要对证书进行故障排除,请参见[此章节](../../other-installation-methods/rancher-on-a-single-node-with-docker/certificate-troubleshooting.md)。
|
||||
|
||||
## 高级选项
|
||||
|
||||
### API 审计
|
||||
|
||||
如果你需要记录所有 Rancher API 事务,请将以下标志添加到安装命令中,从而启用 [API 审计](enable-api-audit-log.md)功能。
|
||||
|
||||
-e AUDIT_LEVEL=1 \
|
||||
-e AUDIT_LOG_PATH=/var/log/auditlog/rancher-api-audit.log \
|
||||
-e AUDIT_LOG_MAXAGE=20 \
|
||||
-e AUDIT_LOG_MAXBACKUP=20 \
|
||||
-e AUDIT_LOG_MAXSIZE=100 \
|
||||
|
||||
### 离线环境
|
||||
|
||||
如果你访问此页面是为了完成[离线安装](../../../../pages-for-subheaders/air-gapped-helm-cli-install.md),则在运行安装命令时,先将你的私有镜像仓库 URL 附加到 Server 标志中。也就是说,在 `rancher/rancher:latest` 前面添加 `<REGISTRY.DOMAIN.COM:PORT>` 和私有镜像仓库 URL。
|
||||
|
||||
**示例**:
|
||||
|
||||
<REGISTRY.DOMAIN.COM:PORT>/rancher/rancher:latest
|
||||
|
||||
### 持久化数据
|
||||
|
||||
Rancher 使用 etcd 作为数据存储。如果 Rancher 是使用 Docker 安装的,Rancher 会使用嵌入式 etcd。持久化数据位于容器的 `/var/lib/rancher` 路径中。
|
||||
|
||||
你可以将主机卷挂载到该位置,来将数据保留在运行它的主机上:
|
||||
|
||||
```
|
||||
docker run -d --restart=unless-stopped \
|
||||
-p 80:80 -p 443:443 \
|
||||
-v /opt/rancher:/var/lib/rancher \
|
||||
--privileged \
|
||||
rancher/rancher:latest
|
||||
```
|
||||
|
||||
Rancher 2.5 开始需要[特权访问](../../../../pages-for-subheaders/rancher-on-a-single-node-with-docker.md#rancher-特权访问)。
|
||||
|
||||
这个 7 层 NGINX 配置已经在 NGINX 1.13(Mainline)和 1.14(Stable)版本上进行了测试。
|
||||
|
||||
:::note
|
||||
|
||||
此 NGINX 配置只是一个示例,可能不适合你的环境。如果需要查阅完整文档,请参见 [NGINX 负载均衡 - TCP 和 UDP 负载均衡器](https://docs.nginx.com/nginx/admin-guide/load-balancer/tcp-udp-load-balancer/)。
|
||||
|
||||
:::
|
||||
|
||||
```
|
||||
upstream rancher {
|
||||
server rancher-server:80;
|
||||
}
|
||||
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default Upgrade;
|
||||
'' close;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
server_name rancher.yourdomain.com;
|
||||
ssl_certificate /etc/your_certificate_directory/fullchain.pem;
|
||||
ssl_certificate_key /etc/your_certificate_directory/privkey.pem;
|
||||
|
||||
location / {
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Port $server_port;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_pass http://rancher;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
# 此项允许执行的 shell 窗口保持开启,最长可达15分钟。不使用此参数的话,默认1分钟后自动关闭。
|
||||
proxy_read_timeout 900s;
|
||||
proxy_buffering off;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name rancher.yourdomain.com;
|
||||
return 301 https://$server_name$request_uri;
|
||||
}
|
||||
```
|
||||
|
||||
<br/>
|
||||
|
||||
-558
@@ -1,558 +0,0 @@
|
||||
---
|
||||
title: 启用 API 审计日志以记录系统事件
|
||||
---
|
||||
|
||||
你可以启用 API 审计日志来记录各个用户发起的系统事件的顺序。通过查看日志,你可以了解发生了什么事件、事件发生的时间,事件发起人,以及事件影响的集群。启用此功能后,所有 Rancher API 的请求和响应都会写入日志中。
|
||||
|
||||
API 审计可以在 Rancher 安装或升级期间启用。
|
||||
|
||||
## 启用 API 审计日志
|
||||
|
||||
你可以将环境变量传递给 Rancher Server 容器,从而启用和配置审计日志。请参见以下文档,在安装时启用该功能:
|
||||
|
||||
- [Docker 安装](../../../../reference-guides/single-node-rancher-in-docker/advanced-options.md#api-审计日志)
|
||||
|
||||
- [Kubernetes 安装](../../../../reference-guides/installation-references/helm-chart-options.md#api-审计日志)
|
||||
|
||||
## API 审计日志选项
|
||||
|
||||
以下参数定义了审计日志的记录规则,其中包括应该记录什么内容以及包括什么数据:
|
||||
|
||||
| 参数 | 描述 |
|
||||
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| <a id="audit-level"></a>`AUDIT_LEVEL` | `0` - 禁用审计日志(默认)<br /> `1` - 日志事件元数据<br /> `2` - 日志事件元数据和请求体<br /> `3` - 日志事件元数据,请求体和响应体。请求/响应对的每个日志事务都使用同一个的 `auditID`。<br /> 如需了解每个设置记录的日志内容,请参见[审计日志级别](#审核日志级别)。 |
|
||||
| `AUDIT_LOG_PATH` | Rancher Server API 的日志路径。默认路径:`/var/log/auditlog/rancher-api-audit.log`。你可以将日志目录挂载到主机。<br/><br/>示例:`AUDIT_LOG_PATH=/my/custom/path/`<br/> |
|
||||
| `AUDIT_LOG_MAXAGE` | 旧审计日志文件可保留的最大天数。默认为 10 天。 |
|
||||
| `AUDIT_LOG_MAXBACKUP` | 保留的审计日志最大文件个数。默认值为 10。 |
|
||||
| `AUDIT_LOG_MAXSIZE` | 在审计日志文件被轮换前的最大容量,单位是 MB。默认大小为 100MB。 |
|
||||
|
||||
<br/>
|
||||
|
||||
### 审核日志级别
|
||||
|
||||
下表介绍了每个 [`AUDIT_LEVEL`](#audit-level) 记录的 API 事务:
|
||||
|
||||
| `AUDIT_LEVEL` 设置 | 请求元数据 | 请求体 | 响应元数据 | 响应体 |
|
||||
| --------------------- | ---------------- | ------------ | ----------------- | ------------- |
|
||||
| `0` | | | | |
|
||||
| `1` | ✓ | | | |
|
||||
| `2` | ✓ | ✓ | | |
|
||||
| `3` | ✓ | ✓ | ✓ | ✓ |
|
||||
|
||||
## 查看 API 审计日志
|
||||
|
||||
### Docker 安装
|
||||
|
||||
与主机系统共享 `AUDIT_LOG_PATH` 目录(默认目录:`/var/log/auditlog`)。日志可以通过标准 CLI 工具进行解析,也可以转发到 Fluentd、Filebeat、Logstash 等日志收集工具。
|
||||
|
||||
### Kubernetes 安装
|
||||
|
||||
使用 Helm Chart 安装 Rancher 时启动 API 审计日志,会在 Rancher Pod 中创建一个 `rancher-audit-log` Sidecar 容器。该容器会将日志发送到标准输出 (stdout)。你可以像查看其他容器的日志一样查看 API 审计日志。
|
||||
|
||||
`rancher-audit-log` 容器位于 `cattle-system` 命名空间中的 `rancher` Pod 中。
|
||||
|
||||
#### CLI
|
||||
|
||||
```bash
|
||||
kubectl -n cattle-system logs -f rancher-84d886bdbb-s4s69 rancher-audit-log
|
||||
```
|
||||
|
||||
#### 发送审计日志
|
||||
|
||||
你可以为集群启用 Rancher 的内置日志收集和传送功能,将审计日志和其他服务日志发送到支持的 endpoint。详情请参见 [Rancher 工具 - Logging](../../../../pages-for-subheaders/logging.md)。
|
||||
|
||||
## 审计日志示例
|
||||
|
||||
启用审计日志后,Rancher 会以 JSON 格式记录每个 API 的请求和响应。下文的代码示例展示了如何查看 API 事务。
|
||||
|
||||
### 元数据日志级别
|
||||
|
||||
如果你将 `AUDIT_LEVEL` 设置为 `1`,Rancher 只会记录每个 API 请求的元数据标头,而不会记录请求体。标头记录了 API 事务的基本信息,包括 ID、发起人、发起时间等。代码示例如下:
|
||||
|
||||
```json
|
||||
{
|
||||
"auditID": "30022177-9e2e-43d1-b0d0-06ef9d3db183",
|
||||
"requestURI": "/v3/schemas",
|
||||
"sourceIPs": ["::1"],
|
||||
"user": {
|
||||
"name": "user-f4tt2",
|
||||
"group": ["system:authenticated"]
|
||||
},
|
||||
"verb": "GET",
|
||||
"stage": "RequestReceived",
|
||||
"stageTimestamp": "2018-07-20 10:22:43 +0800"
|
||||
}
|
||||
```
|
||||
|
||||
### 元数据和请求体日志级别
|
||||
|
||||
如果你将 `AUDIT_LEVEL` 设置为 `2`,Rancher 会记录每个 API 请求的元数据标头和请求体。
|
||||
|
||||
下面的代码示例描述了一个 API 请求,包括它的元数据标头和正文:
|
||||
|
||||
```json
|
||||
{
|
||||
"auditID": "ef1d249e-bfac-4fd0-a61f-cbdcad53b9bb",
|
||||
"requestURI": "/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx",
|
||||
"sourceIPs": ["::1"],
|
||||
"user": {
|
||||
"name": "user-f4tt2",
|
||||
"group": ["system:authenticated"]
|
||||
},
|
||||
"verb": "PUT",
|
||||
"stage": "RequestReceived",
|
||||
"stageTimestamp": "2018-07-20 10:28:08 +0800",
|
||||
"requestBody": {
|
||||
"hostIPC": false,
|
||||
"hostNetwork": false,
|
||||
"hostPID": false,
|
||||
"paused": false,
|
||||
"annotations": {},
|
||||
"baseType": "workload",
|
||||
"containers": [
|
||||
{
|
||||
"allowPrivilegeEscalation": false,
|
||||
"image": "nginx",
|
||||
"imagePullPolicy": "Always",
|
||||
"initContainer": false,
|
||||
"name": "nginx",
|
||||
"ports": [
|
||||
{
|
||||
"containerPort": 80,
|
||||
"dnsName": "nginx-nodeport",
|
||||
"kind": "NodePort",
|
||||
"name": "80tcp01",
|
||||
"protocol": "TCP",
|
||||
"sourcePort": 0,
|
||||
"type": "/v3/project/schemas/containerPort"
|
||||
}
|
||||
],
|
||||
"privileged": false,
|
||||
"readOnly": false,
|
||||
"resources": {
|
||||
"type": "/v3/project/schemas/resourceRequirements",
|
||||
"requests": {},
|
||||
"limits": {}
|
||||
},
|
||||
"restartCount": 0,
|
||||
"runAsNonRoot": false,
|
||||
"stdin": true,
|
||||
"stdinOnce": false,
|
||||
"terminationMessagePath": "/dev/termination-log",
|
||||
"terminationMessagePolicy": "File",
|
||||
"tty": true,
|
||||
"type": "/v3/project/schemas/container",
|
||||
"environmentFrom": [],
|
||||
"capAdd": [],
|
||||
"capDrop": [],
|
||||
"livenessProbe": null,
|
||||
"volumeMounts": []
|
||||
}
|
||||
],
|
||||
"created": "2018-07-18T07:34:16Z",
|
||||
"createdTS": 1531899256000,
|
||||
"creatorId": null,
|
||||
"deploymentConfig": {
|
||||
"maxSurge": 1,
|
||||
"maxUnavailable": 0,
|
||||
"minReadySeconds": 0,
|
||||
"progressDeadlineSeconds": 600,
|
||||
"revisionHistoryLimit": 10,
|
||||
"strategy": "RollingUpdate"
|
||||
},
|
||||
"deploymentStatus": {
|
||||
"availableReplicas": 1,
|
||||
"conditions": [
|
||||
{
|
||||
"lastTransitionTime": "2018-07-18T07:34:38Z",
|
||||
"lastTransitionTimeTS": 1531899278000,
|
||||
"lastUpdateTime": "2018-07-18T07:34:38Z",
|
||||
"lastUpdateTimeTS": 1531899278000,
|
||||
"message": "Deployment has minimum availability.",
|
||||
"reason": "MinimumReplicasAvailable",
|
||||
"status": "True",
|
||||
"type": "Available"
|
||||
},
|
||||
{
|
||||
"lastTransitionTime": "2018-07-18T07:34:16Z",
|
||||
"lastTransitionTimeTS": 1531899256000,
|
||||
"lastUpdateTime": "2018-07-18T07:34:38Z",
|
||||
"lastUpdateTimeTS": 1531899278000,
|
||||
"message": "ReplicaSet \"nginx-64d85666f9\" has successfully progressed.",
|
||||
"reason": "NewReplicaSetAvailable",
|
||||
"status": "True",
|
||||
"type": "Progressing"
|
||||
}
|
||||
],
|
||||
"observedGeneration": 2,
|
||||
"readyReplicas": 1,
|
||||
"replicas": 1,
|
||||
"type": "/v3/project/schemas/deploymentStatus",
|
||||
"unavailableReplicas": 0,
|
||||
"updatedReplicas": 1
|
||||
},
|
||||
"dnsPolicy": "ClusterFirst",
|
||||
"id": "deployment:default:nginx",
|
||||
"labels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"name": "nginx",
|
||||
"namespaceId": "default",
|
||||
"projectId": "c-bcz5t:p-fdr4s",
|
||||
"publicEndpoints": [
|
||||
{
|
||||
"addresses": ["10.64.3.58"],
|
||||
"allNodes": true,
|
||||
"ingressId": null,
|
||||
"nodeId": null,
|
||||
"podId": null,
|
||||
"port": 30917,
|
||||
"protocol": "TCP",
|
||||
"serviceId": "default:nginx-nodeport",
|
||||
"type": "publicEndpoint"
|
||||
}
|
||||
],
|
||||
"restartPolicy": "Always",
|
||||
"scale": 1,
|
||||
"schedulerName": "default-scheduler",
|
||||
"selector": {
|
||||
"matchLabels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"type": "/v3/project/schemas/labelSelector"
|
||||
},
|
||||
"state": "active",
|
||||
"terminationGracePeriodSeconds": 30,
|
||||
"transitioning": "no",
|
||||
"transitioningMessage": "",
|
||||
"type": "deployment",
|
||||
"uuid": "f998037d-8a5c-11e8-a4cf-0245a7ebb0fd",
|
||||
"workloadAnnotations": {
|
||||
"deployment.kubernetes.io/revision": "1",
|
||||
"field.cattle.io/creatorId": "user-f4tt2"
|
||||
},
|
||||
"workloadLabels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"scheduling": {
|
||||
"node": {}
|
||||
},
|
||||
"description": "my description",
|
||||
"volumes": []
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 元数据、请求体和响应体日志级别
|
||||
|
||||
如果你将 `AUDIT_LEVEL` 设置为 `3`,Rancher 会记录:
|
||||
|
||||
- 每个 API 请求的元数据标头和请求体。
|
||||
- 每个 API 响应的元数据标头和响应体。
|
||||
|
||||
#### 请求
|
||||
|
||||
下面的代码示例描述了一个 API 请求,包括它的元数据标头和正文:
|
||||
|
||||
```json
|
||||
{
|
||||
"auditID": "a886fd9f-5d6b-4ae3-9a10-5bff8f3d68af",
|
||||
"requestURI": "/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx",
|
||||
"sourceIPs": ["::1"],
|
||||
"user": {
|
||||
"name": "user-f4tt2",
|
||||
"group": ["system:authenticated"]
|
||||
},
|
||||
"verb": "PUT",
|
||||
"stage": "RequestReceived",
|
||||
"stageTimestamp": "2018-07-20 10:33:06 +0800",
|
||||
"requestBody": {
|
||||
"hostIPC": false,
|
||||
"hostNetwork": false,
|
||||
"hostPID": false,
|
||||
"paused": false,
|
||||
"annotations": {},
|
||||
"baseType": "workload",
|
||||
"containers": [
|
||||
{
|
||||
"allowPrivilegeEscalation": false,
|
||||
"image": "nginx",
|
||||
"imagePullPolicy": "Always",
|
||||
"initContainer": false,
|
||||
"name": "nginx",
|
||||
"ports": [
|
||||
{
|
||||
"containerPort": 80,
|
||||
"dnsName": "nginx-nodeport",
|
||||
"kind": "NodePort",
|
||||
"name": "80tcp01",
|
||||
"protocol": "TCP",
|
||||
"sourcePort": 0,
|
||||
"type": "/v3/project/schemas/containerPort"
|
||||
}
|
||||
],
|
||||
"privileged": false,
|
||||
"readOnly": false,
|
||||
"resources": {
|
||||
"type": "/v3/project/schemas/resourceRequirements",
|
||||
"requests": {},
|
||||
"limits": {}
|
||||
},
|
||||
"restartCount": 0,
|
||||
"runAsNonRoot": false,
|
||||
"stdin": true,
|
||||
"stdinOnce": false,
|
||||
"terminationMessagePath": "/dev/termination-log",
|
||||
"terminationMessagePolicy": "File",
|
||||
"tty": true,
|
||||
"type": "/v3/project/schemas/container",
|
||||
"environmentFrom": [],
|
||||
"capAdd": [],
|
||||
"capDrop": [],
|
||||
"livenessProbe": null,
|
||||
"volumeMounts": []
|
||||
}
|
||||
],
|
||||
"created": "2018-07-18T07:34:16Z",
|
||||
"createdTS": 1531899256000,
|
||||
"creatorId": null,
|
||||
"deploymentConfig": {
|
||||
"maxSurge": 1,
|
||||
"maxUnavailable": 0,
|
||||
"minReadySeconds": 0,
|
||||
"progressDeadlineSeconds": 600,
|
||||
"revisionHistoryLimit": 10,
|
||||
"strategy": "RollingUpdate"
|
||||
},
|
||||
"deploymentStatus": {
|
||||
"availableReplicas": 1,
|
||||
"conditions": [
|
||||
{
|
||||
"lastTransitionTime": "2018-07-18T07:34:38Z",
|
||||
"lastTransitionTimeTS": 1531899278000,
|
||||
"lastUpdateTime": "2018-07-18T07:34:38Z",
|
||||
"lastUpdateTimeTS": 1531899278000,
|
||||
"message": "Deployment has minimum availability.",
|
||||
"reason": "MinimumReplicasAvailable",
|
||||
"status": "True",
|
||||
"type": "Available"
|
||||
},
|
||||
{
|
||||
"lastTransitionTime": "2018-07-18T07:34:16Z",
|
||||
"lastTransitionTimeTS": 1531899256000,
|
||||
"lastUpdateTime": "2018-07-18T07:34:38Z",
|
||||
"lastUpdateTimeTS": 1531899278000,
|
||||
"message": "ReplicaSet \"nginx-64d85666f9\" has successfully progressed.",
|
||||
"reason": "NewReplicaSetAvailable",
|
||||
"status": "True",
|
||||
"type": "Progressing"
|
||||
}
|
||||
],
|
||||
"observedGeneration": 2,
|
||||
"readyReplicas": 1,
|
||||
"replicas": 1,
|
||||
"type": "/v3/project/schemas/deploymentStatus",
|
||||
"unavailableReplicas": 0,
|
||||
"updatedReplicas": 1
|
||||
},
|
||||
"dnsPolicy": "ClusterFirst",
|
||||
"id": "deployment:default:nginx",
|
||||
"labels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"name": "nginx",
|
||||
"namespaceId": "default",
|
||||
"projectId": "c-bcz5t:p-fdr4s",
|
||||
"publicEndpoints": [
|
||||
{
|
||||
"addresses": ["10.64.3.58"],
|
||||
"allNodes": true,
|
||||
"ingressId": null,
|
||||
"nodeId": null,
|
||||
"podId": null,
|
||||
"port": 30917,
|
||||
"protocol": "TCP",
|
||||
"serviceId": "default:nginx-nodeport",
|
||||
"type": "publicEndpoint"
|
||||
}
|
||||
],
|
||||
"restartPolicy": "Always",
|
||||
"scale": 1,
|
||||
"schedulerName": "default-scheduler",
|
||||
"selector": {
|
||||
"matchLabels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"type": "/v3/project/schemas/labelSelector"
|
||||
},
|
||||
"state": "active",
|
||||
"terminationGracePeriodSeconds": 30,
|
||||
"transitioning": "no",
|
||||
"transitioningMessage": "",
|
||||
"type": "deployment",
|
||||
"uuid": "f998037d-8a5c-11e8-a4cf-0245a7ebb0fd",
|
||||
"workloadAnnotations": {
|
||||
"deployment.kubernetes.io/revision": "1",
|
||||
"field.cattle.io/creatorId": "user-f4tt2"
|
||||
},
|
||||
"workloadLabels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"scheduling": {
|
||||
"node": {}
|
||||
},
|
||||
"description": "my decript",
|
||||
"volumes": []
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### 响应
|
||||
|
||||
下面的代码示例描述了一个 API 响应,包括它的元数据标头和正文:
|
||||
|
||||
```json
|
||||
{
|
||||
"auditID": "a886fd9f-5d6b-4ae3-9a10-5bff8f3d68af",
|
||||
"responseStatus": "200",
|
||||
"stage": "ResponseComplete",
|
||||
"stageTimestamp": "2018-07-20 10:33:06 +0800",
|
||||
"responseBody": {
|
||||
"actionLinks": {
|
||||
"pause": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx?action=pause",
|
||||
"resume": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx?action=resume",
|
||||
"rollback": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx?action=rollback"
|
||||
},
|
||||
"annotations": {},
|
||||
"baseType": "workload",
|
||||
"containers": [
|
||||
{
|
||||
"allowPrivilegeEscalation": false,
|
||||
"image": "nginx",
|
||||
"imagePullPolicy": "Always",
|
||||
"initContainer": false,
|
||||
"name": "nginx",
|
||||
"ports": [
|
||||
{
|
||||
"containerPort": 80,
|
||||
"dnsName": "nginx-nodeport",
|
||||
"kind": "NodePort",
|
||||
"name": "80tcp01",
|
||||
"protocol": "TCP",
|
||||
"sourcePort": 0,
|
||||
"type": "/v3/project/schemas/containerPort"
|
||||
}
|
||||
],
|
||||
"privileged": false,
|
||||
"readOnly": false,
|
||||
"resources": {
|
||||
"type": "/v3/project/schemas/resourceRequirements"
|
||||
},
|
||||
"restartCount": 0,
|
||||
"runAsNonRoot": false,
|
||||
"stdin": true,
|
||||
"stdinOnce": false,
|
||||
"terminationMessagePath": "/dev/termination-log",
|
||||
"terminationMessagePolicy": "File",
|
||||
"tty": true,
|
||||
"type": "/v3/project/schemas/container"
|
||||
}
|
||||
],
|
||||
"created": "2018-07-18T07:34:16Z",
|
||||
"createdTS": 1531899256000,
|
||||
"creatorId": null,
|
||||
"deploymentConfig": {
|
||||
"maxSurge": 1,
|
||||
"maxUnavailable": 0,
|
||||
"minReadySeconds": 0,
|
||||
"progressDeadlineSeconds": 600,
|
||||
"revisionHistoryLimit": 10,
|
||||
"strategy": "RollingUpdate"
|
||||
},
|
||||
"deploymentStatus": {
|
||||
"availableReplicas": 1,
|
||||
"conditions": [
|
||||
{
|
||||
"lastTransitionTime": "2018-07-18T07:34:38Z",
|
||||
"lastTransitionTimeTS": 1531899278000,
|
||||
"lastUpdateTime": "2018-07-18T07:34:38Z",
|
||||
"lastUpdateTimeTS": 1531899278000,
|
||||
"message": "Deployment has minimum availability.",
|
||||
"reason": "MinimumReplicasAvailable",
|
||||
"status": "True",
|
||||
"type": "Available"
|
||||
},
|
||||
{
|
||||
"lastTransitionTime": "2018-07-18T07:34:16Z",
|
||||
"lastTransitionTimeTS": 1531899256000,
|
||||
"lastUpdateTime": "2018-07-18T07:34:38Z",
|
||||
"lastUpdateTimeTS": 1531899278000,
|
||||
"message": "ReplicaSet \"nginx-64d85666f9\" has successfully progressed.",
|
||||
"reason": "NewReplicaSetAvailable",
|
||||
"status": "True",
|
||||
"type": "Progressing"
|
||||
}
|
||||
],
|
||||
"observedGeneration": 2,
|
||||
"readyReplicas": 1,
|
||||
"replicas": 1,
|
||||
"type": "/v3/project/schemas/deploymentStatus",
|
||||
"unavailableReplicas": 0,
|
||||
"updatedReplicas": 1
|
||||
},
|
||||
"dnsPolicy": "ClusterFirst",
|
||||
"hostIPC": false,
|
||||
"hostNetwork": false,
|
||||
"hostPID": false,
|
||||
"id": "deployment:default:nginx",
|
||||
"labels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"links": {
|
||||
"remove": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx",
|
||||
"revisions": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx/revisions",
|
||||
"self": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx",
|
||||
"update": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx",
|
||||
"yaml": "https://localhost:8443/v3/project/c-bcz5t:p-fdr4s/workloads/deployment:default:nginx/yaml"
|
||||
},
|
||||
"name": "nginx",
|
||||
"namespaceId": "default",
|
||||
"paused": false,
|
||||
"projectId": "c-bcz5t:p-fdr4s",
|
||||
"publicEndpoints": [
|
||||
{
|
||||
"addresses": ["10.64.3.58"],
|
||||
"allNodes": true,
|
||||
"ingressId": null,
|
||||
"nodeId": null,
|
||||
"podId": null,
|
||||
"port": 30917,
|
||||
"protocol": "TCP",
|
||||
"serviceId": "default:nginx-nodeport"
|
||||
}
|
||||
],
|
||||
"restartPolicy": "Always",
|
||||
"scale": 1,
|
||||
"schedulerName": "default-scheduler",
|
||||
"selector": {
|
||||
"matchLabels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
},
|
||||
"type": "/v3/project/schemas/labelSelector"
|
||||
},
|
||||
"state": "active",
|
||||
"terminationGracePeriodSeconds": 30,
|
||||
"transitioning": "no",
|
||||
"transitioningMessage": "",
|
||||
"type": "deployment",
|
||||
"uuid": "f998037d-8a5c-11e8-a4cf-0245a7ebb0fd",
|
||||
"workloadAnnotations": {
|
||||
"deployment.kubernetes.io/revision": "1",
|
||||
"field.cattle.io/creatorId": "user-f4tt2"
|
||||
},
|
||||
"workloadLabels": {
|
||||
"workload.user.cattle.io/workloadselector": "deployment-default-nginx"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
-107
@@ -1,107 +0,0 @@
|
||||
---
|
||||
title: 使用 firewalld 打开端口
|
||||
---
|
||||
|
||||
> 我们建议禁用 firewalld。如果你使用的是 Kubernetes 1.19 或更高版本,则必须关闭 firewalld。
|
||||
|
||||
某些 [源自 RHEL](https://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux#Rebuilds) 的 Linux 发行版(包括 Oracle Linux)的默认防火墙规则可能会阻止与 Helm 的通信。
|
||||
|
||||
例如,AWS 中的一个 Oracle Linux 镜像具有 REJECT 规则,这些规则会阻止 Helm 与 Tiller 通信:
|
||||
|
||||
```
|
||||
Chain INPUT (policy ACCEPT)
|
||||
target prot opt source destination
|
||||
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
|
||||
ACCEPT icmp -- anywhere anywhere
|
||||
ACCEPT all -- anywhere anywhere
|
||||
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
|
||||
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
|
||||
|
||||
Chain FORWARD (policy ACCEPT)
|
||||
target prot opt source destination
|
||||
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
|
||||
|
||||
Chain OUTPUT (policy ACCEPT)
|
||||
target prot opt source destination
|
||||
```
|
||||
|
||||
你可运行以下命令检查默认防火墙规则:
|
||||
|
||||
```
|
||||
sudo iptables --list
|
||||
```
|
||||
|
||||
下文介绍如何使用 `firewalld`,将[防火墙端口规则](../../installation-requirements/port-requirements.md)应用到高可用 Rancher Server 集群中的节点。
|
||||
|
||||
## 先决条件
|
||||
|
||||
安装 v7.x 或更高版本的 `firewalld`:
|
||||
|
||||
```
|
||||
yum install firewalld
|
||||
systemctl start firewalld
|
||||
systemctl enable firewalld
|
||||
```
|
||||
|
||||
## 应用防火墙端口规则
|
||||
|
||||
在 Rancher 高可用安装中,Rancher Server 设置在三个节点上,三个节点均具有 Kubernetes 的所有三个角色(etcd、controlplane 和 worker)。如果你的 Rancher Server 节点同时具有这三个角色,请在每个节点上运行以下命令:
|
||||
|
||||
```
|
||||
firewall-cmd --permanent --add-port=22/tcp
|
||||
firewall-cmd --permanent --add-port=80/tcp
|
||||
firewall-cmd --permanent --add-port=443/tcp
|
||||
firewall-cmd --permanent --add-port=2376/tcp
|
||||
firewall-cmd --permanent --add-port=2379/tcp
|
||||
firewall-cmd --permanent --add-port=2380/tcp
|
||||
firewall-cmd --permanent --add-port=6443/tcp
|
||||
firewall-cmd --permanent --add-port=8472/udp
|
||||
firewall-cmd --permanent --add-port=9099/tcp
|
||||
firewall-cmd --permanent --add-port=10250/tcp
|
||||
firewall-cmd --permanent --add-port=10254/tcp
|
||||
firewall-cmd --permanent --add-port=30000-32767/tcp
|
||||
firewall-cmd --permanent --add-port=30000-32767/udp
|
||||
```
|
||||
如果你的 Rancher Server 节点配置了单独的角色,请根据节点角色运行以下命令:
|
||||
|
||||
```
|
||||
# 在 etcd 节点上运行以下命令:
|
||||
firewall-cmd --permanent --add-port=2376/tcp
|
||||
firewall-cmd --permanent --add-port=2379/tcp
|
||||
firewall-cmd --permanent --add-port=2380/tcp
|
||||
firewall-cmd --permanent --add-port=8472/udp
|
||||
firewall-cmd --permanent --add-port=9099/tcp
|
||||
firewall-cmd --permanent --add-port=10250/tcp
|
||||
|
||||
# 在 controlplane 节点上运行以下命令:
|
||||
firewall-cmd --permanent --add-port=80/tcp
|
||||
firewall-cmd --permanent --add-port=443/tcp
|
||||
firewall-cmd --permanent --add-port=2376/tcp
|
||||
firewall-cmd --permanent --add-port=6443/tcp
|
||||
firewall-cmd --permanent --add-port=8472/udp
|
||||
firewall-cmd --permanent --add-port=9099/tcp
|
||||
firewall-cmd --permanent --add-port=10250/tcp
|
||||
firewall-cmd --permanent --add-port=10254/tcp
|
||||
firewall-cmd --permanent --add-port=30000-32767/tcp
|
||||
firewall-cmd --permanent --add-port=30000-32767/udp
|
||||
|
||||
# 在 worker 节点上运行以下命令:
|
||||
firewall-cmd --permanent --add-port=22/tcp
|
||||
firewall-cmd --permanent --add-port=80/tcp
|
||||
firewall-cmd --permanent --add-port=443/tcp
|
||||
firewall-cmd --permanent --add-port=2376/tcp
|
||||
firewall-cmd --permanent --add-port=8472/udp
|
||||
firewall-cmd --permanent --add-port=9099/tcp
|
||||
firewall-cmd --permanent --add-port=10250/tcp
|
||||
firewall-cmd --permanent --add-port=10254/tcp
|
||||
firewall-cmd --permanent --add-port=30000-32767/tcp
|
||||
firewall-cmd --permanent --add-port=30000-32767/udp
|
||||
```
|
||||
|
||||
在节点上运行 `firewall-cmd` 命令后,使用以下命令启用防火墙规则:
|
||||
|
||||
```
|
||||
firewall-cmd --reload
|
||||
```
|
||||
|
||||
**结果**:防火墙已更新,因此 Helm 可以与 Rancher Server 节点通信了。
|
||||
-39
@@ -1,39 +0,0 @@
|
||||
---
|
||||
title: 为大型安装进行 etcd 调优
|
||||
---
|
||||
|
||||
当你运行具有 15 个或更多集群的大型 Rancher 安装时,我们建议你扩大 etcd 的默认 keyspace(默认为 2GB)。你最大可以将它设置为 8GB。此外,请确保主机有足够的 RAM 来保存整个数据集。如果需要增加这个值,你还需要同步增加主机的大小。如果你预计在垃圾回收间隔期间 Pod 的变化率很高,你也可以在较小的安装中调整 Keyspace 大小。
|
||||
|
||||
Kubernetes 每隔五分钟会自动清理 etcd 数据集。在某些情况下(例如发生部署抖动),在垃圾回收发生并进行清理之前会有大量事件写入 etcd 并删除,从而导致 Keyspace 填满。如果你在 etcd 日志或 Kubernetes API Server 日志中看到 `mvcc: database space exceeded` 错误,你可以在 etcd 服务器上设置 [quota-backend-bytes](https://etcd.io/docs/v3.4.0/op-guide/maintenance/#space-quota) 来增加 Keyspace 的大小。
|
||||
|
||||
### 示例:此 RKE cluster.yml 文件的代码片段将 Keyspace 的大小增加到 5GB
|
||||
|
||||
```yaml
|
||||
# RKE cluster.yml
|
||||
---
|
||||
services:
|
||||
etcd:
|
||||
extra_args:
|
||||
quota-backend-bytes: 5368709120
|
||||
```
|
||||
|
||||
## 扩展 etcd 磁盘性能
|
||||
|
||||
你可以参见 [etcd 文档](https://etcd.io/docs/v3.4.0/tuning/#disk)中的建议,了解如何调整主机上的磁盘优先级。
|
||||
|
||||
此外,为了减少 etcd 磁盘上的 IO 争用,你可以为 data 和 wal 目录使用专用设备。etcd 最佳实践不建议配置 Mirror RAID(因为 etcd 在集群中的节点之间复制数据)。你可以使用 striping RAID 配置来增加可用的 IOPS。
|
||||
|
||||
要在 RKE 集群中实现此解决方案,你需要在底层主机上为 `/var/lib/etcd/data` 和 `/var/lib/etcd/wal` 目录挂载并格式化磁盘。`etcd` 服务的 `extra_args` 指令中必须包含 `wal_dir` 目录。如果不指定 `wal_dir`,etcd 进程会尝试在权限不足的情况下操作底层的 `wal` 挂载。
|
||||
|
||||
```yaml
|
||||
# RKE cluster.yml
|
||||
---
|
||||
services:
|
||||
etcd:
|
||||
extra_args:
|
||||
data-dir: '/var/lib/rancher/etcd/data/'
|
||||
wal-dir: '/var/lib/rancher/etcd/wal/wal_dir'
|
||||
extra_binds:
|
||||
- '/var/lib/etcd/data:/var/lib/rancher/etcd/data'
|
||||
- '/var/lib/etcd/wal:/var/lib/rancher/etcd/wal'
|
||||
```
|
||||
-13
@@ -1,13 +0,0 @@
|
||||
---
|
||||
title: 持续交付
|
||||
---
|
||||
|
||||
从 Rancher 2.5 开始,[Fleet](../../../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md) 已经预装在 Rancher 中,且从 Rancher 2.6 开始,Fleet 不能再完全禁用。但是,你可以使用 `continuous-delivery` 功能开关来禁用 GitOps 持续交付的 Fleet 功能。
|
||||
|
||||
如需启用或禁用此功能,请参见[启用实验功能主页](../../../../pages-for-subheaders/enable-experimental-features.md)中的说明。
|
||||
|
||||
| 环境变量键 | 默认值 | 描述 |
|
||||
---|---|---
|
||||
| `continuous-delivery` | `true` | 此开关禁用 Fleet 的 GitOps 持续交付功能。 |
|
||||
|
||||
如果你在 Rancher 2.5.x 中禁用了 Fleet,然后将 Rancher 升级到 v2.6.x,Fleet 将启用。只有 Fleet 的持续交付功能可以被禁用。当 `continuous-delivery` 被禁用时,`gitjob` deployment 不再部署到 Rancher Server 的本地集群中,且 `continuous-delivery` 不会在 Rancher UI 中显示。
|
||||
-32
@@ -1,32 +0,0 @@
|
||||
---
|
||||
title: UI 管理 Istio 虚拟服务和目标规则
|
||||
---
|
||||
|
||||
此功能可启动一个 UI,用于管理 Istio 的流量,其中包括创建、读取、更新和删除虚拟服务(Virtual Service)和目标规则(Destination Rule)。
|
||||
|
||||
> **注意**:启用此功能并不会启用 Istio。集群管理员需要[为集群启用 Istio](../../../../pages-for-subheaders/istio-setup-guide.md) 才能使用该功能。
|
||||
|
||||
如需启用或禁用此功能,请参见[启用实验功能主页](../../../../pages-for-subheaders/enable-experimental-features.md)中的说明。
|
||||
|
||||
| 环境变量键 | 默认值 | 状态 | 可用于 |
|
||||
---|---|---|---
|
||||
| `istio-virtual-service-ui` | `false` | 实验功能 | v2.3.0 |
|
||||
| `istio-virtual-service-ui` | `true` | GA | v2.3.2 |
|
||||
|
||||
## 功能介绍
|
||||
|
||||
Istio 流量管理功能的主要优势时允许动态请求路由,这对于金丝雀发布,蓝/绿发布或 A/B 测试都非常有用。
|
||||
|
||||
启用此功能后,一个页面会打开,让你通过 Rancher UI 配置 Istio 的某些流量管理功能。如果不使用此功能,你可以通过 `kubectl` 来使用 Istio 管理流量。
|
||||
|
||||
此功能会启用两个选项卡,一个用于**虚拟服务**,另一个用于**目标规则**。
|
||||
|
||||
- **虚拟服务**:拦截并将流量重定向到你的 Kubernetes Service 上。这样,你可以将部分请求流量定向到不同的服务上。你可以使用这些服务来定义一组路由规则,用于主机寻址。详情请参见 [Istio 官方文档](https://istio.io/docs/reference/config/networking/v1alpha3/virtual-service/)。
|
||||
- **目标规则**:作为唯一可信来源,表明哪些服务版本可用于接收虚拟服务的流量。你可以使用这些资源来定义策略,这些策略适用于路由发生后用于服务的流量。详情请参见 [Istio 官方文档](https://istio.io/docs/reference/config/networking/v1alpha3/destination-rule)。
|
||||
|
||||
如需查看选项卡:
|
||||
|
||||
1. 点击 **☰ > 集群管理**。
|
||||
1. 转到安装了 Istio 的集群,然后单击 **Explore**。
|
||||
1. 在左侧导航栏中,单击 **Istio**。
|
||||
1. 你将看到 **Kiali** 和 **Jaeger** 的选项卡。在左侧导航栏中,你可查看和配置**虚拟服务**和**目标规则**。
|
||||
-44
@@ -1,44 +0,0 @@
|
||||
---
|
||||
title: "在 ARM64 上运行 Rancher(实验性)"
|
||||
---
|
||||
|
||||
:::caution
|
||||
|
||||
在使用 ARM64 架构的节点上运行 Rancher 目前还处在实验阶段,Rancher 尚未正式支持该功能。因此,我们不建议你在生产环境中使用 ARM64 架构的节点。
|
||||
|
||||
:::
|
||||
|
||||
如果你的节点使用 ARM64 架构,你可以使用以下选项:
|
||||
|
||||
- 在 ARM64 架构的节点上运行 Rancher
|
||||
- 此选项仅适用于 Docker 安装。请知悉,以下安装命令取代了 [Docker 安装](/versioned_docs/version-2.0-2.4/pages-for-subheaders/rancher-on-a-single-node-with-docker.md)链接中的示例:
|
||||
|
||||
```
|
||||
# 在最后一行 `rancher/rancher:vX.Y.Z` 中,请务必将 "X.Y.Z" 替换为包含 ARM64 版本的发布版本。例如,如果你的匹配版本是 v2.5.8,请在此行填写 `rancher/rancher:v2.5.8`。
|
||||
docker run -d --restart=unless-stopped \
|
||||
-p 80:80 -p 443:443 \
|
||||
--privileged \
|
||||
rancher/rancher:vX.Y.Z
|
||||
```
|
||||
|
||||
:::note
|
||||
|
||||
要检查你的发行版本是否与 ARM64 架构兼容,你可以使用以下两种方式找到对应版本的发行说明:
|
||||
|
||||
- 访问 [Rancher 发行版本](https://github.com/rancher/rancher/releases)自行查询。
|
||||
- 根据标签和版本号直接找到你的版本。例如,你使用的版本为 2.5.8,你可以访问 [Rancher 发行版本 - 2.5.8](https://github.com/rancher/rancher/releases/tag/v2.5.8)。
|
||||
|
||||
:::
|
||||
|
||||
- 创建自定义集群并添加使用 ARM64 架构的节点
|
||||
- Kubernetes 集群必须为 1.12 或更高版本
|
||||
- CNI 网络插件必须是 [Flannel](../../../../faq/container-network-interface-providers.md#flannel)
|
||||
- 导入包含使用 ARM64 架构的节点的集群
|
||||
- Kubernetes 集群必须为 1.12 或更高版本
|
||||
|
||||
如需了解如何配置集群选项,请参见[集群选项](cluster-provisioning/rke-clusters/options/)。
|
||||
|
||||
以下是未经测试的功能:
|
||||
|
||||
- Monitoring、告警、Notifiers、流水线和 Logging
|
||||
- 通过应用商店发布应用
|
||||
-39
@@ -1,39 +0,0 @@
|
||||
---
|
||||
title: 使用非默认支持的存储驱动
|
||||
---
|
||||
|
||||
此功能允许你使用不是默认启用的存储提供商和卷插件。
|
||||
|
||||
如需启用或禁用此功能,请参见[启用实验功能主页](../../../../pages-for-subheaders/enable-experimental-features.md)中的说明。
|
||||
|
||||
| 环境变量键 | 默认值 | 描述 |
|
||||
---|---|---
|
||||
| `unsupported-storage-drivers` | `false` | 启用非默认启用的存储提供商和卷插件。 |
|
||||
|
||||
### 默认启用的持久卷插件
|
||||
下表描述了默认启用的存储类型对应的持久卷插件。启用此功能开关时,不在此列表中的任何持久卷插件均被视为实验功能,且不受支持:
|
||||
|
||||
| 名称 | 插件 |
|
||||
--------|----------
|
||||
| Amazon EBS Disk | `aws-ebs` |
|
||||
| AzureFile | `azure-file` |
|
||||
| AzureDisk | `azure-disk` |
|
||||
| Google Persistent Disk | `gce-pd` |
|
||||
| Longhorn | `flex-volume-longhorn` |
|
||||
| VMware vSphere Volume | `vsphere-volume` |
|
||||
| 本地 | `local` |
|
||||
| 网络文件系统 | `nfs` |
|
||||
| hostPath | `host-path` |
|
||||
|
||||
### 默认启用的 StorageClass
|
||||
下表描述了默认启用的 StorageClass 对应的持久卷插件。启用此功能开关时,不在此列表中的任何持久卷插件均被视为实验功能,且不受支持:
|
||||
|
||||
| 名称 | 插件 |
|
||||
--------|--------
|
||||
| Amazon EBS Disk | `aws-ebs` |
|
||||
| AzureFile | `azure-file` |
|
||||
| AzureDisk | `azure-disk` |
|
||||
| Google Persistent Disk | `gce-pd` |
|
||||
| Longhorn | `flex-volume-longhorn` |
|
||||
| VMware vSphere Volume | `vsphere-volume` |
|
||||
| 本地 | `local` |
|
||||
+5
-6
@@ -22,8 +22,7 @@ kubeconfig 也可以通过 `--kubeconfig` 标签(详情请参见 https://helm.
|
||||
|
||||
如需查看每个 Rancher 版本的已知问题,请参见 [GitHub](https://github.com/rancher/rancher/releases) 中的发行说明,或查看 [Rancher 论坛](https://forums.rancher.com/c/announcements/12)。
|
||||
|
||||
不支持 _升级_ 或 _升级到_ [rancher-alpha 仓库](../../../reference-guides/installation-references/helm-chart-options.md#helm-chart-仓库)中的任何 Chart。
|
||||
|
||||
不支持 _升级_ 或 _升级到_ [rancher-alpha 仓库](../../../getting-started/installation-and-upgrade/installation-references/helm-chart-options.md#helm-chart-仓库)中的任何 Chart。
|
||||
### Helm 版本
|
||||
|
||||
本安装指南假定你使用的是 Helm 3。
|
||||
@@ -36,7 +35,7 @@ kubeconfig 也可以通过 `--kubeconfig` 标签(详情请参见 https://helm.
|
||||
|
||||
### 升级 Rancher Server 并使用隐藏的本地集群
|
||||
|
||||
如果你从使用 Helm Chart 选项 `--add-local=false` 启动的 Rancher Server 升级到 Rancher 2.5,你需要在升级时取消该标志。否则,Rancher Server 将无法启动。`restricted-admin` 角色可以继续用来限制对本地集群的访问。详情请参见[本章节](../../../how-to-guides/advanced-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md#在-rancher-中使用隐藏的-local-集群进行升级)。
|
||||
如果你从使用 Helm Chart 选项 `--add-local=false` 启动的 Rancher Server 升级到 Rancher 2.5,你需要在升级时取消该标志。否则,Rancher Server 将无法启动。`restricted-admin` 角色可以继续用来限制对本地集群的访问。详情请参见[本章节](../../../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md#在-rancher-中使用隐藏的-local-集群进行升级)。
|
||||
|
||||
### 使用 cert-manager 0.8.0 之前的版本升级
|
||||
|
||||
@@ -63,7 +62,7 @@ kubeconfig 也可以通过 `--kubeconfig` 标签(详情请参见 https://helm.
|
||||
|
||||
1. 获取你用来安装 Rancher 的仓库名称。
|
||||
|
||||
关于仓库及其区别,请参见 [Helm Chart Repositories](../../../reference-guides/installation-references/helm-chart-options.md#helm-chart-仓库)。
|
||||
关于仓库及其区别,请参见 [Helm Chart Repositories](../installation-references/helm-chart-options.md#helm-chart-仓库)。
|
||||
|
||||
- Latest:建议用于试用最新功能
|
||||
```
|
||||
@@ -103,7 +102,7 @@ kubeconfig 也可以通过 `--kubeconfig` 标签(详情请参见 https://helm.
|
||||
你可以通过 `--version=` 标记,来指定要升级的目标 Chart 版本。例如:
|
||||
|
||||
```plain
|
||||
helm fetch rancher-<CHART_REPO>/rancher --version=v2.4.11
|
||||
helm fetch rancher-<CHART_REPO>/rancher --version=2.6.8
|
||||
```
|
||||
|
||||
### 3. 升级 Rancher
|
||||
@@ -160,7 +159,7 @@ helm get values rancher -n cattle-system -o yaml > values.yaml
|
||||
helm upgrade rancher rancher-<CHART_REPO>/rancher \
|
||||
--namespace cattle-system \
|
||||
-f values.yaml \
|
||||
--version=2.4.5
|
||||
--version=2.6.8
|
||||
```
|
||||
|
||||
### 4. 验证升级
|
||||
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
---
|
||||
title: 功能开关
|
||||
---
|
||||
|
||||
为了让你试用默认关闭的实验功能,我们引入了功能开关(feature flag)。
|
||||
|
||||
如需了解功能的值以及如何启用功能,请参阅[此处](../../../pages-for-subheaders/enable-experimental-features.md)。
|
||||
|
||||
:::note
|
||||
|
||||
某些功能需要重启 Rancher Server 容器才能生效。我们在文档的表格和 UI 中对这些功能进行了标记。
|
||||
|
||||
:::
|
||||
|
||||
以下是 Rancher 中可用的功能开关列表:
|
||||
|
||||
- `harvester`:从 2.6.1 开始可用。Harvester 用于管理 Virtualization Management 页面的访问。用户可以在该页面直接导航到 Harvester 集群并访问 Harvester UI。详情请参见[本页](../../../integrations-in-rancher/harvester.md#功能开关)。
|
||||
- `rke2`:用于启用配置 RKE2 集群的功能。这个功能开关默认开启,即允许用户尝试配置此类集群。
|
||||
- `fleet`:由于 Fleet 功能已应用到新的配置框架中,因此我们需要启用先前的 `fleet` 功能开关。如果你在早期版本中禁用了此功能开关,升级到 Rancher 2.6 后,该功能开关会自动启用。详情请参见[此页](../../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md)。
|
||||
- `continuous-delivery`:在 Rancher v2.5.x 中,Fleet 带有 GitOps 功能,该功能不能与 Fleet 分开禁用。在 Rancher 2.6 中,我们引入了 `continuous-delivery` 功能开关,让你可以单独禁用 Fleet 的 GitOps 功能。如需更多信息,请参阅[此页面](../../../how-to-guides/advanced-user-guides/enable-experimental-features/continuous-delivery.md)。
|
||||
- `legacy`:Rancher 会逐渐淘汰之前版本中的某些功能,以实现功能迭代。此处包括已弃用,以及之后会转移到其他地方的功能。默认情况下,新安装会禁用此功能开关。如果你从先前的版本升级,此功能开关会启用。
|
||||
- `token-hashing`:用于启动新的 token-hashing 功能。启用后,会使用 SHA256 算法对现有 Token 和所有新 Token 进行哈希处理。一旦对 Token 进行哈希处理,就无法撤消操作。该功能开关启用后无法被禁用。详情请参见[哈西处理 Token](../../../reference-guides/about-the-api/api-tokens.md)。
|
||||
- `unsupported-storage-drivers`:该功能[允许使用不支持的存储驱动](../../../how-to-guides/advanced-user-guides/enable-experimental-features/unsupported-storage-drivers.md)。换言之,此功能允许你使用默认情况下未启用的存储提供商和卷插件。
|
||||
- `istio-virtual-service-ui`:此功能让你[启动用于管理 Istio 流量的 UI,其中包括创建、读取、更新和删除 Istio 虚拟服务(Virtual Service)和目标规则(Destination Rule)](../../../how-to-guides/advanced-user-guides/enable-experimental-features/istio-traffic-management-features.md)。
|
||||
- `multi-cluster-management`:用于配置和管理多个 Kubernetes 集群。此功能开关只能在安装时设置,之后不能更改。
|
||||
|
||||
下表介绍了 Rancher 中功能开关的可用版本和默认值:
|
||||
|
||||
| 功能开关名称 | 默认值 | 状态 | 可用于 | 是否需要重启 Rancher |
|
||||
| ----------------------------- | ------------- | ------------ | --------------- |---|
|
||||
| `istio-virtual-service-ui` | `false` | 实验功能 | v2.3.0 | |
|
||||
| `istio-virtual-service-ui` | `true` | GA* | v2.3.2 | |
|
||||
| `unsupported-storage-drivers` | `false` | 实验功能 | v2.3.0 | |
|
||||
| `fleet` | `true` | GA* | v2.5.0 | |
|
||||
| `fleet` | `true` | 不能禁用 | v2.6.0 | N/A |
|
||||
| `continuous-delivery` | `true` | GA* | v2.6.0 | |
|
||||
| `token-hashing` | 新安装:`false`;升级:`true` | GA* | v2.6.0 | |
|
||||
| `legacy` | 新安装:`false`;升级:`true` | GA* | v2.6.0 | |
|
||||
| `multi-cluster-management` | `false` | GA* | v2.5.0 | |
|
||||
| `harvester` | `true` | 实验功能 | v2.6.1 | |
|
||||
| `rke2` | `true` | 实验功能 | v2.6.0 | |
|
||||
|
||||
\* 一般情况下可用。此功能包含在 Rancher 中,不是实验功能的。
|
||||
+271
@@ -0,0 +1,271 @@
|
||||
---
|
||||
title: Rancher Helm Chart 选项
|
||||
---
|
||||
|
||||
本文提供了 Rancher Helm Chart 的配置参考。
|
||||
|
||||
如需选择 Helm Chart 版本,请参见[本页](../../../getting-started/installation-and-upgrade/resources/choose-a-rancher-version.md)。
|
||||
|
||||
了解开启实验性功能的详情,请参见[本页](../../../pages-for-subheaders/enable-experimental-features.md)。
|
||||
|
||||
## 常用选项
|
||||
|
||||
| 选项 | 默认值 | 描述 |
|
||||
| ------------------------- | ------------- | ---------------------------------------------------------------------------------- |
|
||||
| `bootstrapPassword` | " " | `string` - 为第一个管理员用户设置[引导密码](#引导密码)。登录后,管理员需要重置密码。如不设置,会使用随机生成的引导密码。 |
|
||||
| `hostname` | " " | `string` - 你的 Rancher Server 的完全限定的域名(FQDN) |
|
||||
| `ingress.tls.source` | "rancher" | `string` - 从哪里获取 Ingress 的证书- "rancher, letsEncrypt, secret" |
|
||||
| `letsEncrypt.email` | " " | `string` - 你的邮箱地址 |
|
||||
| `letsEncrypt.environment` | "production" | `string` - 可选项:"staging, production" |
|
||||
| `privateCA` | false | `bool` - 如果你的证书是由私有 CA 签发的,把这个值设置为 true |
|
||||
|
||||
<br/>
|
||||
|
||||
## 高级选项
|
||||
|
||||
| 选项 | 默认值 | 描述 |
|
||||
| ------------------------------ | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `additionalTrustedCAs` | false | `bool` - 请参见[额外的授信 CA](#额外的授信-ca) |
|
||||
| `addLocal` | "true" | `string` - 让 Rancher 检测并导入 “local” Rancher Server 集群。_注意:此选项在 2.5.0 中已不可用。你可考虑使用 `restrictedAdmin` 选项,来避免用户修改本地集群。_ |
|
||||
| `antiAffinity` | "preferred" | `string` - Rancher Pod 的反亲和性规则 - "preferred, required" |
|
||||
| `auditLog.destination` | "sidecar" | `string` - 发送审计日志到 Sidecar 容器的控制台或 hostPath 卷 - "sidecar, hostPath" |
|
||||
| `auditLog.hostPath` | "/var/log/rancher/audit" | `string` - 主机上的日志文件目标地址(仅当`auditLog.destination` 的值是 `hostPath` 时生效) |
|
||||
| `auditLog.level` | 0 | `int` - 设置 [API 审计日志](../../../how-to-guides/advanced-user-guides/enable-api-audit-log.md)等级。0 代表关闭。[0-3] |
|
||||
| `auditLog.maxAge` | 1 | `int` - 旧审计日志文件最多可保留的天数(仅当`auditLog.destination` 的值是 `hostPath` 时生效) |
|
||||
| `auditLog.maxBackup` | 1 | `int` - 审计文件最大可保留的个数(仅当 `auditLog.destination` 的值是 `hostPath` 时生效) |
|
||||
| `auditLog.maxSize` | 100 | `int` - 在审计日志被轮换前的最大容量,单位是 MB(仅当 `auditLog.destination` 的值是 `hostPath` 时生效) |
|
||||
| `busyboxImage` | "busybox" | `string` - 用来收集审计日志的 busybox 镜像位置 |
|
||||
| `certmanager.version` | "" | `string` - 设置 cert-manager compatibility |
|
||||
| `debug` | false | `bool` - 在 Rancher Server 设置 debug 参数 |
|
||||
| `extraEnv` | [] | `list` - 为 Rancher 额外设置环境变量 |
|
||||
| `imagePullSecrets` | [] | `list` - 私有镜像仓库凭证的密文名称列表 |
|
||||
| `ingress.configurationSnippet` | "" | `string` - 添加额外的 Nginx 配置。可用于代理配置。 |
|
||||
| `ingress.extraAnnotations` | {} | `map` - 用于自定义 Ingress 的额外注释 |
|
||||
| `ingress.enabled` | true | 如果值为 false,Helm 不会安装 Rancher Ingress。你可把值设为 false 以部署你自己的 Ingress。 |
|
||||
| `letsEncrypt.ingress.class` | "" | `string` - cert-manager acmesolver ingress 的可选 ingress 类,用于响应 Let's Encrypt ACME 质询。选项:traefik,nginx。 | |
|
||||
| `noProxy` | "127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.svc,.cluster.local,cattle-system.svc" | `string` - 不使用代理的主机名或 IP 地址的逗号分隔列表 | |
|
||||
| `proxy` | "" | `string` - 给 Rancher 配置的 HTTP[S] 代理 |
|
||||
| `rancherImage` | "rancher/rancher" | `string` - Rancher 镜像源 |
|
||||
| `rancherImagePullPolicy` | "IfNotPresent" | `string` - 覆盖 Rancher Server 镜像的 imagePullPolicy - "Always", "Never", "IfNotPresent" |
|
||||
| `rancherImageTag` | 和 Chart 版本一致 | `string` - rancher/rancher 镜像标签 |
|
||||
| `replicas` | 3 | `int` - Rancher Server 副本数。如果设为 -1,会根据集群中的可用节点数自动选择 1,2或3。 |
|
||||
| `resources` | {} | `map` - Rancher Pod 资源请求和限制 |
|
||||
| `restrictedAdmin` | `false` | `bool` - 如果值为 true,初始的 Rancher 用户访问本地 Kubernetes 集群会受到限制,以避免权限升级。详情请参见 [restricted-admin 角色](../../../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md#受限管理员)。 |
|
||||
| `systemDefaultRegistry` | "" | `string` - 用于所有系统容器镜像的私有仓库,例如 http://registry.example.com/ |
|
||||
| `tls` | "ingress" | `string` - 详情请参见[外部 TLS 终止](#外部-tls-终止)。- "ingress, external" |
|
||||
| `useBundledSystemChart` | `false` | `bool` - 选择 Rancher Server 打包的 system-charts。此参数用于离线环境安装。 |
|
||||
|
||||
|
||||
|
||||
### 引导密码
|
||||
|
||||
Rancher 首次启动时,会为第一个管理员用户随机生成一个密码。当管理员首次登录 Rancher 时,用于获取引导密码(Bootstrap)的命令会在 UI 上显示。管理员需要运行命令并使用引导密码登录。然后 Rancher 会让管理员重置密码。
|
||||
|
||||
如果你想指定引导密码而不使用随机生成的密码,请参考以下命令设置密码。
|
||||
|
||||
```plain
|
||||
--set bootstrapPassword="rancher"
|
||||
```
|
||||
|
||||
无论你是使用提供的密码还是生成的密码,密码均存储在 Kubernetes 密文中。安装 Rancher 后,如何使用 kubectl 获取密码的说明将会在 UI 中显示:
|
||||
|
||||
```
|
||||
kubectl get secret --namespace cattle-system bootstrap-secret -o go-template='{{ .data.bootstrapPassword|base64decode}}{{ "\n" }}'
|
||||
```
|
||||
|
||||
### API 审计日志
|
||||
|
||||
启用 [API 审计日志](../../../how-to-guides/advanced-user-guides/enable-api-audit-log.md)。
|
||||
|
||||
你可以像收集其他容器日志一样收集此日志。在 Rancher Server 集群上为 `System` 项目启用 [Logging](../../../pages-for-subheaders/logging.md)。
|
||||
|
||||
```plain
|
||||
--set auditLog.level=1
|
||||
```
|
||||
|
||||
默认情况下,启用审计日志会在 Rancher pod 中创建一个 Sidecar 容器。这个容器(`rancher-audit-log`)会把日志流传输到 `stdout`。你可以像收集其他容器日志一样收集此日志。如果你使用 Sidecar 作为审计日志的目标时, `hostPath`,`maxAge`,`maxBackups` 和 `maxSize` 选项不会生效。建议使用你的操作系统或 Docker Daemon 的日志轮换功能来控制磁盘空间的使用。请为 Rancher Server 集群或 System 项目启用 [Logging](../../../pages-for-subheaders/logging.md)。
|
||||
|
||||
将 `auditLog.destination` 的值设为 `hostPath`,可以将日志转发到与主机系统共享的卷,而不是传输到 Sidecar 容器。如果目标设置为 `hostPath`,你可能需要调整其他 auditLog 参数以进行日志轮换。
|
||||
|
||||
### 额外设置环境变量
|
||||
|
||||
你可以使用 `extraEnv` 为 Rancher Server 额外设置环境变量。该列表使用与容器清单定义相同的 `name` 和 `value` 键。记住需要给值加上引号。
|
||||
|
||||
```plain
|
||||
--set 'extraEnv[0].name=CATTLE_TLS_MIN_VERSION'
|
||||
--set 'extraEnv[0].value=1.0'
|
||||
```
|
||||
|
||||
### TLS 设置
|
||||
|
||||
当你在 Kubernetes 集群内安装 Rancher 时,TLS 会在集群的 Ingress Controller 上卸载。支持的 TLS 设置取决于使用的 Ingress Controller。
|
||||
|
||||
参见 [TLS 设置](tls-settings.md)了解更多信息和选项。
|
||||
|
||||
### 导入 `local` 集群
|
||||
|
||||
默认情况下,Rancher Server 会检测并导入其所在的 `local` 集群。有权访问 `local` 集群的用户对 Rancher Server 管理的所有集群具有“root”访问权限。
|
||||
|
||||
:::caution
|
||||
|
||||
如果你关闭 addLocal,大多数 Rancher 2.5 功能都不能使用,包括 EKS Provisioner。
|
||||
|
||||
:::
|
||||
|
||||
如果这在你的环境中是一个问题,你可以在初始安装时将此选项设置为“false”。
|
||||
|
||||
此选项仅在首次安装 Rancher 时有效。详情请参见 [Issue 16522](https://github.com/rancher/rancher/issues/16522)。
|
||||
|
||||
```plain
|
||||
--set addLocal="false"
|
||||
```
|
||||
|
||||
### 自定义 Ingress
|
||||
|
||||
要自定义或使用 Rancher Server 的其他 Ingress,你可以设置自己的 Ingress annotations。
|
||||
|
||||
设置自定义证书颁发者的示例:
|
||||
|
||||
```plain
|
||||
--set ingress.extraAnnotations.'cert-manager\.io/cluster-issuer'=issuer-name
|
||||
```
|
||||
|
||||
以下是使用 `ingress.configurationSnippet`设置静态代理头的实例。该值像模板一样进行解析,因此可以使用变量。
|
||||
|
||||
```plain
|
||||
--set ingress.configurationSnippet='more_set_input_headers X-Forwarded-Host {{ .Values.hostname }};'
|
||||
```
|
||||
|
||||
### HTTP 代理
|
||||
|
||||
Rancher 的一些功能(Helm Chart)需要使用互联网才能使用。使用 `proxy` 来设置你的代理服务器。
|
||||
|
||||
在 `noProxy` 列表中添加例外的 IP。确保你已添加了 Pod 集群 IP 范围(默认:`10.42.0.0/16`),服务集群 IP 范围(默认:`10.43.0.0/16`),内部集群域名(默认:`.svc,.cluster.local`)和所有 worker 集群 `controlplane` 节点。Rancher 支持在此列表中使用 CIDR 表示法范围。
|
||||
|
||||
```plain
|
||||
--set proxy="http://<username>:<password>@<proxy_url>:<proxy_port>/"
|
||||
--set noProxy="127.0.0.0/8\,10.0.0.0/8\,172.16.0.0/12\,192.168.0.0/16\,.svc\,.cluster.local"
|
||||
```
|
||||
|
||||
### 额外的授信 CA
|
||||
|
||||
如果你有私有镜像仓库(registries)、应用商店(catalogs)或拦截证书的代理,则可能需要向 Rancher 添加额外的授信 CA。
|
||||
|
||||
```plain
|
||||
--set additionalTrustedCAs=true
|
||||
```
|
||||
|
||||
创建完 Rancher deployment 后,将 pem 格式的 CA 证书复制到一个名为 `ca-additional.pem` 的文件中,并使用 `kubectl` 在 `cattle-system` 命名空间中创建 `tls-ca-additional` 密文。
|
||||
|
||||
```plain
|
||||
kubectl -n cattle-system create secret generic tls-ca-additional --from-file=ca-additional.pem=./ca-additional.pem
|
||||
```
|
||||
|
||||
### 私有仓库和离线安装
|
||||
|
||||
有关使用私有仓库安装 Rancher 的详情,请参见[离线安装](../../../pages-for-subheaders/air-gapped-helm-cli-install.md)。
|
||||
|
||||
# 外部 TLS 终止
|
||||
|
||||
我们建议将负载均衡器配置为 4 层均衡,将普通 80/tcp 和 443/tcp 转发到 Rancher Management 集群节点。集群上的 Ingress Controller 会将端口 80 上的 HTTP 流量重定向到端口 443 上的 HTTPS。
|
||||
|
||||
你可以在 Rancher 集群(Ingress)外部的 L7 负载均衡器上终止 SSL/TLS。使用 `--set tls=external` 选项,将负载均衡器指向所有 Rancher 集群节点上的端口 HTTP 80。这将在 HTTP 端口 80 上暴露 Rancher 接口。请注意,允许直接连接到 Rancher 集群的客户端不会被加密。如果你选择这样做,我们建议你将网络级别的直接访问限制为仅你的负载均衡器。
|
||||
|
||||
:::note
|
||||
|
||||
如果你使用的是私有 CA 签名的证书,请添加 `--set privateCA=true` 并参见[添加 TLS 密文 - 使用私有 CA 签名证书](../../../getting-started/installation-and-upgrade/resources/add-tls-secrets.md),为 Rancher 添加 CA 证书。
|
||||
|
||||
:::
|
||||
|
||||
你的负载均衡器必须支持长期存在的 Websocket 连接,并且需要插入代理头,以便 Rancher 可以正确传送链接。
|
||||
|
||||
### 使用 NGINX v0.25 为外部 TLS 配置 Ingress
|
||||
|
||||
在 NGINX 0.25 中,NGINX 关于转发头和外部 TLS 终止的行为[已更改](https://github.com/kubernetes/ingress-nginx/blob/master/Changelog.md#0220)。因此,如果你同时使用 NGINX 0.25 和外部 TLS 终止配置,你必须编辑 `cluster.yml` 来为 Ingress 启用 `use-forwarded-headers` 选项。
|
||||
|
||||
```yaml
|
||||
ingress:
|
||||
provider: nginx
|
||||
options:
|
||||
use-forwarded-headers: 'true'
|
||||
```
|
||||
|
||||
### 必须的 Header
|
||||
|
||||
- `Host`
|
||||
- `X-Forwarded-Proto`
|
||||
- `X-Forwarded-Port`
|
||||
- `X-Forwarded-For`
|
||||
|
||||
### 建议的超时时间
|
||||
|
||||
- 读超时:`1800 seconds`
|
||||
- 写超时:`1800 seconds`
|
||||
- 连接超时:`30 seconds`
|
||||
|
||||
### 健康检查
|
||||
|
||||
Rancher 将对 `/healthz` 端点的健康检查响应`200`。
|
||||
|
||||
### 示例 NGINX 配置
|
||||
|
||||
此 NGINX 配置已在 NGINX 1.14 上进行了测试。
|
||||
|
||||
:::caution
|
||||
|
||||
此 NGINX 配置只是一个示例,可能不适合你的环境。如需查阅完整文档,请参见 [NGINX 负载均衡 - HTTP 负载均衡](https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/)。
|
||||
|
||||
:::
|
||||
|
||||
- 将 `IP_NODE1`,`IP_NODE2` 和 `IP_NODE3` 替换为你集群中节点的 IP 地址。
|
||||
- 将两处的 `FQDN` 均替换为 Rancher 的 DNS 名称。
|
||||
- 把 `/certs/fullchain.pem` 和 `/certs/privkey.pem` 分别替换为服务器证书和服务器证书密钥的位置。
|
||||
|
||||
```
|
||||
worker_processes 4;
|
||||
worker_rlimit_nofile 40000;
|
||||
|
||||
events {
|
||||
worker_connections 8192;
|
||||
}
|
||||
|
||||
http {
|
||||
upstream rancher {
|
||||
server IP_NODE_1:80;
|
||||
server IP_NODE_2:80;
|
||||
server IP_NODE_3:80;
|
||||
}
|
||||
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default Upgrade;
|
||||
'' close;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
server_name FQDN;
|
||||
ssl_certificate /certs/fullchain.pem;
|
||||
ssl_certificate_key /certs/privkey.pem;
|
||||
|
||||
location / {
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Port $server_port;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_pass http://rancher;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
# 此项允许执行的 shell 窗口保持开启,最长可达15分钟。不使用此参数的话,默认1分钟后自动关闭。
|
||||
proxy_read_timeout 900s;
|
||||
proxy_buffering off;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name FQDN;
|
||||
return 301 https://$server_name$request_uri;
|
||||
}
|
||||
}
|
||||
```
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: TLS 设置
|
||||
---
|
||||
|
||||
更改默认 TLS 设置的方法取决于它的安装方式。
|
||||
|
||||
# 在高可用 Kubernetes 集群中运行 Rancher
|
||||
|
||||
当你在 Kubernetes 集群内安装 Rancher 时,TLS 会在集群的 Ingress Controller 上卸载。可用的 TLS 设置取决于使用的 Ingress Controller:
|
||||
|
||||
* nginx-ingress-controller(RKE1 和 RKE2 默认):[默认的 TLS 版本和密码](https://kubernetes.github.io/ingress-nginx/user-guide/tls/#default-tls-version-and-ciphers)。
|
||||
* traefik(K3s 默认):[TLS 选项](https://doc.traefik.io/traefik/https/tls/#tls-options)。
|
||||
|
||||
# 在单个 Docker 容器中运行 Rancher
|
||||
|
||||
默认 TLS 配置仅支持 TLS 1.2 和安全的 TLS 密码套件。你可以通过设置以下环境变量来更改此配置:
|
||||
|
||||
| 参数 | 描述 | 默认 | 可用选项 |
|
||||
|-----|-----|-----|-----|
|
||||
| `CATTLE_TLS_MIN_VERSION` | 最小 TLS 版本 | `1.2` | `1.0`, `1.1`, `1.2`, `1.3` |
|
||||
| `CATTLE_TLS_CIPHERS` | 支持的 TLS 密码套件 | `TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256`,<br/>`TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384`,<br/>`TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305`,<br/>`TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256`,<br/>`TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384`,<br/>`TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305` | 详情请参见 [Golang TLS 常量](https://golang.org/pkg/crypto/tls/#pkg-constants)。 |
|
||||
+2
@@ -6,6 +6,8 @@ Dockershim 是 Kubelet 和 Docker Daemon 之间的 CRI 兼容层。Kubernetes 1.
|
||||
|
||||
RKE 集群现在支持外部 Dockershim,来让用户继续使用 Docker 作为 CRI 运行时。现在,我们通过使用 [Mirantis 和 Docker ](https://www.mirantis.com/blog/mirantis-to-take-over-support-of-kubernetes-dockershim-2/) 来确保 RKE 集群可以继续使用 Docker,从而实现上游开源社区的外部 Dockershim。
|
||||
|
||||
RKE2 和 K3s 集群使用嵌入的 containerd 作为容器运行时,因此不受影响。
|
||||
|
||||
要在 1.24 之前的 RKE 版本中启用外部 Dockershim,请配置以下选项:
|
||||
|
||||
```
|
||||
|
||||
+7
-1
@@ -2,7 +2,7 @@
|
||||
title: 安装 Docker
|
||||
---
|
||||
|
||||
在使用 Helm 或 Docker 在节点上安装 Rancher Server 前,你需要先安装 Docker。
|
||||
在使用 Helm 或 Docker 在 RKE 集群节点上安装 Rancher Server 前,你需要先安装 Docker。RKE2 和 K3s 集群不要求使用 Docker。
|
||||
|
||||
Docker 有几个安装方法。一种方法是参见 [Docker 官方文档](https://docs.docker.com/install/)以了解如何在 Linux 上安装 Docker。不同 Linux 发行版的安装步骤可能有所不同。
|
||||
|
||||
@@ -15,3 +15,9 @@ curl https://releases.rancher.com/install-docker/20.10.sh | sh
|
||||
```
|
||||
|
||||
Rancher 提供 Kubernetes 支持的所有上游 Docker 版本的安装脚本。如需了解我们是否提供某个 Docker 版本的安装脚本,请参见包含了 Rancher 所有的 Docker 安装脚本的 [GitHub 仓库](https://github.com/rancher/install-docker)。
|
||||
|
||||
请注意,必须应用以下 sysctl 设置:
|
||||
|
||||
```
|
||||
net.bridge.bridge-nf-call-iptables=1
|
||||
```
|
||||
|
||||
+1
-1
@@ -277,7 +277,7 @@ import CommonPortsTable from '../../../shared-files/_common-ports-table.md';
|
||||
|
||||
### Rancher AWS EC2 安全组
|
||||
|
||||
当你使用 [AWS EC2 Node Driver](../../../how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/launch-kubernetes-with-rancher/use-new-nodes-in-an-infra-provider/create-an-amazon-ec2-cluster.md) 在 Rancher 中配置集群节点时,你可以让 Rancher 创建一个名为 `rancher-nodes` 的安全组。以下规则会自动添加到该安全组中。
|
||||
当你使用 [AWS EC2 Node Driver](../../../how-to-guides/new-user-guides/launch-kubernetes-with-rancher/use-new-nodes-in-an-infra-provider/create-an-amazon-ec2-cluster.md) 在 Rancher 中配置集群节点时,你可以让 Rancher 创建一个名为 `rancher-nodes` 的安全组。以下规则会自动添加到该安全组中。
|
||||
|
||||
| 类型 | 协议 | 端口范围 | 源/目标 | 规则类型 |
|
||||
|-----------------|:--------:|:-----------:|------------------------|:---------:|
|
||||
|
||||
+3
-3
@@ -36,7 +36,7 @@ Docker 安装适用于想要测试 Rancher 的用户。
|
||||
| 占位符 | 描述 |
|
||||
| -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `<REGISTRY.YOURDOMAIN.COM:PORT>` | 私有镜像仓库的 URL 和端口。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要安装的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要安装的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
特权访问是[必须](#rancher-特权访问)的。
|
||||
|
||||
@@ -76,7 +76,7 @@ docker run -d --restart=unless-stopped \
|
||||
| `<PRIVATE_KEY.pem>` | 证书私钥的路径。 |
|
||||
| `<CA_CERTS.pem>` | CA 证书的路径。 |
|
||||
| `<REGISTRY.YOURDOMAIN.COM:PORT>` | 私有镜像仓库的 URL 和端口。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要安装的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要安装的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
特权访问是[必须](#rancher-特权访问)的。
|
||||
|
||||
@@ -115,7 +115,7 @@ docker run -d --restart=unless-stopped \
|
||||
| `<FULL_CHAIN.pem>` | 完整证书链的路径。 |
|
||||
| `<PRIVATE_KEY.pem>` | 证书私钥的路径。 |
|
||||
| `<REGISTRY.YOURDOMAIN.COM:PORT>` | 私有镜像仓库的 URL 和端口。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要安装的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要安装的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
:::note
|
||||
|
||||
|
||||
+2
-2
@@ -59,7 +59,7 @@ K3s 与其他 Kubernetes 发行版不同,在于其支持使用 etcd 以外的
|
||||
在你的实现中,你可以考虑是否需要使用 4 层或 7 层的负载均衡器:
|
||||
|
||||
- **4 层负载均衡器**:两种选择中较为简单的一种,它将 TCP 流量转发到你的节点中。我们建议使用 4 层负载均衡器,将流量从 TCP/80 端口和 TCP/443 端口转发到 Rancher Management 集群节点上。集群上的 Ingress Controller 会将 HTTP 流量重定向到 HTTPS,并在 TCP/443 端口上终止 SSL/TLS。Ingress Controller 会将流量转发到 Rancher deployment 中 Ingress Pod 的 TCP/80 端口。
|
||||
- **7 层负载均衡器**:相对比较复杂,但功能更全面。例如,与 Rancher 本身进行 TLS 终止相反,7 层负载均衡器能够在负载均衡器处处理 TLS 终止。如果你需要集中在基础设施中进行 TLS 终止,7 层负载均衡可能会很适合你。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。如果你选择在 7 层负载均衡器上终止 SSL/TLS 流量,则在安装 Rancher 时(后续步骤)需要使用 `--set tls=external` 选项。详情请参见 [Rancher Helm Chart 选项](../../../../reference-guides/installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
- **7 层负载均衡器**:相对比较复杂,但功能更全面。例如,与 Rancher 本身进行 TLS 终止相反,7 层负载均衡器能够在负载均衡器处处理 TLS 终止。如果你需要集中在基础设施中进行 TLS 终止,7 层负载均衡可能会很适合你。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。如果你选择在 7 层负载均衡器上终止 SSL/TLS 流量,则在安装 Rancher 时(后续步骤)需要使用 `--set tls=external` 选项。详情请参见 [Rancher Helm Chart 选项](../../installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
|
||||
如需获取配置 NGINX 负载均衡器的示例,请参见[本页](../../../../how-to-guides/new-user-guides/infrastructure-setup/nginx-load-balancer.md)。
|
||||
|
||||
@@ -126,7 +126,7 @@ Rancher 支持使用私有镜像仓库进行离线安装。你必须有自己的
|
||||
在你的实现中,你可以考虑是否需要使用 4 层或 7 层的负载均衡器:
|
||||
|
||||
- **4 层负载均衡器**:两种选择中较为简单的一种,它将 TCP 流量转发到你的节点中。我们建议使用 4 层负载均衡器,将流量从 TCP/80 端口和 TCP/443 端口转发到 Rancher Management 集群节点上。集群上的 Ingress Controller 会将 HTTP 流量重定向到 HTTPS,并在 TCP/443 端口上终止 SSL/TLS。Ingress Controller 会将流量转发到 Rancher deployment 中 Ingress Pod 的 TCP/80 端口。
|
||||
- **7 层负载均衡器**:相对比较复杂,但功能更全面。例如,与 Rancher 本身进行 TLS 终止相反,7 层负载均衡器能够在负载均衡器处处理 TLS 终止。如果你需要集中在基础设施中进行 TLS 终止,7 层负载均衡可能会很适合你。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。如果你选择在 7 层负载均衡器上终止 SSL/TLS 流量,则在安装 Rancher 时(后续步骤)需要使用 `--set tls=external` 选项。详情请参见 [Rancher Helm Chart 选项](../../../../reference-guides/installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
- **7 层负载均衡器**:相对比较复杂,但功能更全面。例如,与 Rancher 本身进行 TLS 终止相反,7 层负载均衡器能够在负载均衡器处处理 TLS 终止。如果你需要集中在基础设施中进行 TLS 终止,7 层负载均衡可能会很适合你。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。如果你选择在 7 层负载均衡器上终止 SSL/TLS 流量,则在安装 Rancher 时(后续步骤)需要使用 `--set tls=external` 选项。详情请参见 [Rancher Helm Chart 选项](../../installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
|
||||
如需获取配置 NGINX 负载均衡器的示例,请参见[本页](../../../../how-to-guides/new-user-guides/infrastructure-setup/nginx-load-balancer.md)。
|
||||
|
||||
|
||||
+6
@@ -295,6 +295,12 @@ kubectl --kubeconfig ~/.kube/config/rke2.yaml get pods --all-namespaces
|
||||
|
||||
参照 [RKE 官方文档](https://rancher.com/docs/rke/latest/en/installation/)的说明安装 RKE。
|
||||
|
||||
:::note
|
||||
|
||||
你可以在 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)中找到基于 Rancher 版本的 RKE 认证版本。
|
||||
|
||||
:::
|
||||
|
||||
### 2. 创建 RKE 配置文件
|
||||
|
||||
在可访问你 Linux 主机节点上的 22/TCP 端口和 6443/TCP 端口的系统上,使用以下示例创建一个名为 `rancher-cluster.yml` 的新文件。
|
||||
|
||||
+3
-3
@@ -22,7 +22,7 @@ title: 4. 安装 Rancher
|
||||
|
||||
1. 如果你还没有安装 `helm`,请在可访问互联网的工作站上进行本地安装。注意:参考 [Helm 版本要求](../../resources/helm-version-requirements.md)选择 Helm 版本来安装 Rancher。
|
||||
|
||||
2. 执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md#helm-chart-仓库)。
|
||||
2. 执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../../installation-references/helm-chart-options.md#helm-chart-仓库)。
|
||||
- Latest:建议用于试用最新功能
|
||||
```
|
||||
helm repo add rancher-latest https://releases.rancher.com/server-charts/latest
|
||||
@@ -55,7 +55,7 @@ Rancher Server 默认设计为安全的,并且需要 SSL/TLS 配置。
|
||||
|
||||
:::note
|
||||
|
||||
如果你想在外部终止 SSL/TLS,请参见[外部负载均衡器的 TLS 终止](../../../../reference-guides/installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
如果你想在外部终止 SSL/TLS,请参见[外部负载均衡器的 TLS 终止](../../installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
|
||||
:::
|
||||
|
||||
@@ -258,6 +258,6 @@ kubectl -n cattle-system apply -R -f ./rancher
|
||||
|
||||
以下资源可能对安装 Rancher 有帮助:
|
||||
|
||||
- [Rancher Helm Chart 选项](../../../../reference-guides/installation-references/helm-chart-options.md)
|
||||
- [Rancher Helm Chart 选项](../../installation-references/helm-chart-options.md)
|
||||
- [添加 TLS 密文](../../resources/add-tls-secrets.md)
|
||||
- [Rancher Kubernetes 安装的故障排除](../../install-upgrade-on-a-kubernetes-cluster/troubleshooting.md)
|
||||
|
||||
+1
-1
@@ -95,6 +95,6 @@ kubectl rollout status deployment -n cattle-system rancher
|
||||
|
||||
以下资源可能对安装 Rancher 有帮助:
|
||||
|
||||
- [Rancher Helm Chart 选项](../../../../reference-guides/installation-references/helm-chart-options.md)
|
||||
- [Rancher Helm Chart 选项](../../installation-references/helm-chart-options.md)
|
||||
- [添加 TLS 密文](../../resources/add-tls-secrets.md)
|
||||
- [Rancher Kubernetes 安装的故障排除](../../install-upgrade-on-a-kubernetes-cluster/troubleshooting.md)
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ title: '1. 配置基础设施'
|
||||
在你的实现中,你可以考虑是否需要使用 4 层或 7 层的负载均衡器:
|
||||
|
||||
- **4 层负载均衡器**:两种选择中较为简单的一种,它将 TCP 流量转发到你的节点中。我们建议使用 4 层负载均衡器,将流量从 TCP/80 端口和 TCP/443 端口转发到 Rancher Management 集群节点上。集群上的 Ingress Controller 会将 HTTP 流量重定向到 HTTPS,并在 TCP/443 端口上终止 SSL/TLS。Ingress Controller 会将流量转发到 Rancher deployment 中 Ingress Pod 的 TCP/80 端口。
|
||||
- **7 层负载均衡器**:相对比较复杂,但功能更全面。例如,与 Rancher 本身进行 TLS 终止相反,7 层负载均衡器能够在负载均衡器处处理 TLS 终止。如果你需要集中在基础设施中进行 TLS 终止,7 层负载均衡可能会很适合你。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。如果你选择在 7 层负载均衡器上终止 SSL/TLS 流量,则在安装 Rancher 时(后续步骤)需要使用 `--set tls=external` 选项。详情请参见 [Rancher Helm Chart 选项](../../../../reference-guides/installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
- **7 层负载均衡器**:相对比较复杂,但功能更全面。例如,与 Rancher 本身进行 TLS 终止相反,7 层负载均衡器能够在负载均衡器处处理 TLS 终止。如果你需要集中在基础设施中进行 TLS 终止,7 层负载均衡可能会很适合你。7 层负载均衡还能让你的负载均衡器基于 HTTP 属性(例如 cookie 等)做出决策,而 4 层负载均衡器则不能。如果你选择在 7 层负载均衡器上终止 SSL/TLS 流量,则在安装 Rancher 时(后续步骤)需要使用 `--set tls=external` 选项。详情请参见 [Rancher Helm Chart 选项](../../installation-references/helm-chart-options.md#外部-tls-终止)。
|
||||
|
||||
如需获取配置 NGINX 负载均衡器的示例,请参见[本页](../../../../how-to-guides/new-user-guides/infrastructure-setup/nginx-load-balancer.md)。
|
||||
|
||||
|
||||
+9
-9
@@ -15,7 +15,7 @@ import TabItem from '@theme/TabItem';
|
||||
|
||||
## 先决条件
|
||||
|
||||
- 在 Rancher 文档中**检查[已知升级问题](../../install-upgrade-on-a-kubernetes-cluster/upgrades.md#已知升级问题)**,了解升级 Rancher 时最需要注意的问题。你可以在 [GitHub](https://github.com/rancher/rancher/releases) 发布说明以及 [Rancher 论坛](https://forums.rancher.com/c/announcements/12)中找到每个 Rancher 版本的已知问题。不支持升级或升级到 [rancher-alpha 仓库](../../../../reference-guides/installation-references/helm-chart-options.md#helm-chart-仓库)中的任何 Chart。
|
||||
- 在 Rancher 文档中**检查[已知升级问题](../../install-upgrade-on-a-kubernetes-cluster/upgrades.md#已知升级问题)**,了解升级 Rancher 时最需要注意的问题。你可以在 [GitHub](https://github.com/rancher/rancher/releases) 发布说明以及 [Rancher 论坛](https://forums.rancher.com/c/announcements/12)中找到每个 Rancher 版本的已知问题。不支持升级或升级到 [rancher-alpha 仓库](../../../../getting-started/installation-and-upgrade/installation-references/helm-chart-options.md#helm-chart-仓库)中的任何 Chart。
|
||||
- **[仅适用于离线安装](../../../../pages-for-subheaders/air-gapped-helm-cli-install.md):为新的 Rancher Server 版本收集和推送镜像**。按照指南为你想要升级的目标 Rancher 版本[推送镜像到私有镜像仓库](../air-gapped-helm-cli-install/publish-images.md)。
|
||||
|
||||
## 占位符
|
||||
@@ -99,7 +99,7 @@ docker ps
|
||||
|
||||
| 占位符 | 描述 |
|
||||
------------|-------------
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
```
|
||||
docker pull rancher/rancher:<RANCHER_VERSION_TAG>
|
||||
@@ -140,7 +140,7 @@ docker pull rancher/rancher:<RANCHER_VERSION_TAG>
|
||||
|
||||
| 占位符 | 描述 |
|
||||
------------|-------------
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
```
|
||||
docker run -d --volumes-from rancher-data \
|
||||
@@ -173,7 +173,7 @@ docker run -d --volumes-from rancher-data \
|
||||
| `<FULL_CHAIN.pem>` | 完整证书链的路径。 |
|
||||
| `<PRIVATE_KEY.pem>` | 证书私钥的路径。 |
|
||||
| `<CA_CERTS.pem>` | CA 证书的路径。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
```
|
||||
docker run -d --volumes-from rancher-data \
|
||||
@@ -208,7 +208,7 @@ docker run -d --volumes-from rancher-data \
|
||||
| `<CERT_DIRECTORY>` | 包含证书文件的目录的路径。 |
|
||||
| `<FULL_CHAIN.pem>` | 完整证书链的路径。 |
|
||||
| `<PRIVATE_KEY.pem>` | 证书私钥的路径。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
```
|
||||
docker run -d --volumes-from rancher-data \
|
||||
@@ -246,7 +246,7 @@ Let's Encrypt 对新证书请求有频率限制。因此,请限制创建或销
|
||||
|
||||
| 占位符 | 描述 |
|
||||
------------|-------------
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<YOUR.DNS.NAME>` | 你最初使用的域名 |
|
||||
|
||||
```
|
||||
@@ -279,7 +279,7 @@ docker run -d --volumes-from rancher-data \
|
||||
| 占位符 | 描述 |
|
||||
------------|-------------
|
||||
| `<REGISTRY.YOURDOMAIN.COM:PORT>` | 私有镜像仓库的 URL 和端口。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
```
|
||||
docker run -d --volumes-from rancher-data \
|
||||
@@ -314,7 +314,7 @@ docker run -d --volumes-from rancher-data \
|
||||
| `<PRIVATE_KEY.pem>` | 证书私钥的路径。 |
|
||||
| `<CA_CERTS.pem>` | CA 证书的路径。 |
|
||||
| `<REGISTRY.YOURDOMAIN.COM:PORT>` | 私有镜像仓库的 URL 和端口。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
```
|
||||
docker run -d --restart=unless-stopped \
|
||||
@@ -349,7 +349,7 @@ docker run -d --restart=unless-stopped \
|
||||
| `<FULL_CHAIN.pem>` | 完整证书链的路径。 |
|
||||
| `<PRIVATE_KEY.pem>` | 证书私钥的路径。 |
|
||||
| `<REGISTRY.YOURDOMAIN.COM:PORT>` | 私有镜像仓库的 URL 和端口。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../../../reference-guides/installation-references/helm-chart-options.md)的版本标签。 |
|
||||
| `<RANCHER_VERSION_TAG>` | 你想要升级到的 [Rancher 版本](../../installation-references/helm-chart-options.md)的版本标签。 |
|
||||
|
||||
:::note
|
||||
|
||||
|
||||
+1
-1
@@ -20,5 +20,5 @@ Rancher 可以访问的服务示例:
|
||||
|
||||
- [Docker 安装的自定义 CA 证书选项](../../../reference-guides/single-node-rancher-in-docker/advanced-options.md#自定义-ca-证书)
|
||||
|
||||
- [Kubernetes 安装的其他受信 CA 选项](../../../reference-guides/installation-references/helm-chart-options.md#额外的授信-ca)
|
||||
- [Kubernetes 安装的其他受信 CA 选项](../installation-references/helm-chart-options.md#额外的授信-ca)
|
||||
|
||||
|
||||
+1
-1
@@ -82,7 +82,7 @@ RKE v1.1.0 改变了集群升级的方式。
|
||||
1. 在**集群**页面中,进入要启用节点清空的集群,然后点击 **⋮ > 编辑配置**。
|
||||
1. 单击 **⋮ > 编辑**。
|
||||
1. 在**升级策略**选项卡中,转到**清空节点**字段并单击**是**。controlplane 和 worker 节点的清空是单独配置的。
|
||||
1. 配置如何删除 pod 的选项。有关每个选项的详细信息,请参阅[本节](../../how-to-guides/advanced-user-guides/manage-clusters/nodes-and-node-pools.md#激进和安全的清空选项)。
|
||||
1. 配置如何删除 pod 的选项。有关每个选项的详细信息,请参阅[本节](../../how-to-guides/new-user-guides/manage-clusters/nodes-and-node-pools.md#激进和安全的清空选项)。
|
||||
1. (可选)配置宽限期。宽限期是给每个 pod 进行清理的超时时间,能让 pod 有机会优雅地退出。Pod 可能需要完成任何未完成的请求、回滚事务或将状态保存到某些外部存储。如果该值为负数,将使用 pod 中指定的默认值。
|
||||
1. (可选)配置超时,这是在清空放弃之前应该继续等待的时间。
|
||||
1. 单击**保存**。
|
||||
|
||||
+1
-1
@@ -34,7 +34,7 @@ Rancher 的 Kubernetes 元数据包含 Rancher 用于配置 [RKE 集群](../../p
|
||||
|
||||
### 刷新 Kubernetes 元数据
|
||||
|
||||
默认情况下,管理员或具有**管理集群驱动**[全局角色](../../how-to-guides/advanced-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md)的用户,可以刷新 Kubernetes 元数据。
|
||||
默认情况下,管理员或具有**管理集群驱动**[全局角色](../../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md)的用户,可以刷新 Kubernetes 元数据。
|
||||
|
||||
要强制 Rancher 刷新 Kubernetes 元数据,可以执行手动刷新操作:
|
||||
|
||||
|
||||
-100
@@ -1,100 +0,0 @@
|
||||
---
|
||||
title: Divio 文档介绍
|
||||
---
|
||||
|
||||
[Divio 文档系统](https://documentation.divio.com/)是一种软件文档范式,它以功能为基础,旨在为用户提供具体、简明而且目的明确的文档。一般来说,Divio 由四个类别组成,分别是教程、操作指南、参考指南和解释。
|
||||
|
||||
我们将文档划分为[开始使用](../../getting-started.md)、[操作指南](../../how-to-guides.md)(包括[新用户指南](../../pages-for-subheaders/new-user-guides.md)和[高级用户指南](../../pages-for-subheaders/advanced-user-guides.md))、[参考指南](../../reference-guides.md)、[说明](../../explanations.md)、[常见问题](../../faq.md)、[故障排除](../../troubleshooting.md),以及[参与 Rancher 社区贡献](../../contribute-to-rancher.md)几个部分。
|
||||
|
||||
|
||||
## 开始使用
|
||||
|
||||
**开始使用**章节能帮助你快速启动和运行 Rancher。
|
||||
|
||||
本章节旨在帮助用户部署 Rancher 和工作负载,并快速有效地安装或升级 Rancher。
|
||||
|
||||
请参阅[简介](../../pages-for-subheaders/introduction.md)、[快速入门指南](../../pages-for-subheaders/quick-start-guides.md)以及[安装和升级](../../pages-for-subheaders/installation-and-upgrade.md)部分了解更多信息。
|
||||
|
||||
## 操作指南
|
||||
|
||||
操作指南描述了用户完成某些任务的实际步骤。在 Rancher 中,我们将操作指南进一步细分为[新用户指南](#新用户指南)和[高级用户指南](#高级用户指南)。
|
||||
|
||||
### 新用户指南
|
||||
|
||||
新用户指南(也称为教程)描述了某些操作的实际步骤。这些文档是“学习导向”的,也就是说用户通过“操作”来学习。
|
||||
|
||||
新用户指南旨在引导初学者或 Rancher 的日常用户通过一系列步骤来学习如何进行某些操作。这些文档旨在帮助用户通过使用易于遵循、有意义且可重复的操作来了解如何完成任务。这些指南将帮助用户完成工作,并能立刻看到效果。
|
||||
|
||||
正常来说,普通 Rancher 用户的技术水平高于“初学者”,但是,我们的新用户指南为初学者以及经验丰富的 Rancher 用户提供相同的指导。我们结合使用了高级语言和技术语言来介绍各个主题,并指导用户完成 Rancher 用户需要了解的通用任务。
|
||||
|
||||
你可以在[此处](../../how-to-guides/new-user-guides/kubernetes-resources-setup/workloads-and-pods/deploy-workloads.md)找到新用户指南的一个示例。
|
||||
|
||||
### 高级用户指南
|
||||
|
||||
高级用户指南是“问题导向”的文档,用户可以从中学习如何解决问题。高级用于指南与新用户指南的主要区别在于,高级用户指南面向更有经验或更高级的用户,这些用户对文档有更多的技术需求,而且已经了解 Rancher 及其功能。他们知道自己需要做什么,只是需要额外的指导来完成更复杂的任务。
|
||||
|
||||
应该注意的是,新用户指南和高级用户指南都没有提供详细的解释或讨论(这些文档不包括在本部分)。操作指南侧重于引导用户通过可重复、有效的步骤来学习新技能、掌握某些操作或解决某些问题。
|
||||
|
||||
你可以在[此处](../../how-to-guides/advanced-user-guides/manage-clusters/create-kubernetes-persistent-storage/manage-persistent-storage/dynamically-provision-new-storage.md)找到高级用户指南的一个示例。
|
||||
|
||||
## 参考指南
|
||||
|
||||
参考指南是用户可以学习的产品或流程描述。参考指南是“信息导向”的,主要用于描述。
|
||||
|
||||
本章节的文档可能包含一些操作步骤,但是描述操作步骤不是本章节的主要目的。
|
||||
|
||||
使用参考指南的用户熟悉且了解如何使用 Rancher。当用户需要参考具体使用细节时,用户可以获取更详细的使用描述。
|
||||
|
||||
Rancher 参考指南示例:
|
||||
1. [Rancher Manager 架构](../../pages-for-subheaders/rancher-manager-architecture.md)
|
||||
2. [集群配置指南](../../pages-for-subheaders/cluster-configuration.md)
|
||||
|
||||
## 说明
|
||||
|
||||
说明文档主要用于为某个任务或主题背后的“原因”提供理论知识。说明文档是“理解导向”的,用于拓宽用户的知识。在本节中,用户可以找到有关主题的上下文和背景、替代方案和意见等,还可能找到历史原因、相关限制以及流程的工作原理。
|
||||
|
||||
说明文档不会像操作指南那样指导用户进行操作,也不会像参考文档那样给出详细的描述。说明文档用于提供简单和复杂主题的实质和背景。
|
||||
|
||||
由于我们以前的大多数文档都不是"以讨论为导向"的,因此我们的新文档会增加这一部分内容。目前,我们以[Rancher 中的集成](../../pages-for-subheaders/integrations-in-rancher.md)来讨论我们的集成产品。
|
||||
|
||||
### Rancher 中的集成
|
||||
|
||||
Rancher 已经积累了多个产品和项目,而且已将它们集成到 Rancher UI 中。为了帮助用户了解这些集成,我们已将此小节添加到**说明**下。
|
||||
|
||||
集成示例:[Harvester](../../explanations/integrations-in-rancher/harvester.md) 和 [NeuVector](../../explanations/integrations-in-rancher/neuvector.md)
|
||||
|
||||
## 其他文档类别
|
||||
|
||||
### 常见问题
|
||||
|
||||
[常见问题](../../faq.md)包含了用户常见的 Rancher v2.x 问题。这些问题可能是技术性的或非技术性的。
|
||||
|
||||
我们会不断补充和优化这一部分,你可以常来浏览更新的内容。
|
||||
|
||||
### 故障排除
|
||||
|
||||
[故障排除](../../troubleshooting.md)旨在帮助新老 Rancher 用户解决他们在使用 Rancher 时可能遇到的已知问题。
|
||||
|
||||
我们会不断补充和优化这一部分,你可以常来浏览更新的内容。
|
||||
|
||||
### 参与 Rancher 社区贡献
|
||||
|
||||
为了提高文档的质量,我们一直在更新、检查和改进 Rancher Manager 文档。同时,我们也呼吁社区用户参与贡献。
|
||||
|
||||
你可以查阅[参与 Rancher 社区贡献](../../contribute-to-rancher.md)章节,了解 Rancher 使用的仓库,以及学习如何构建仓库、提交 issue 或创建 PR。
|
||||
|
||||
我们会经常 review 用户的贡献,并将及时向贡献者提供反馈。
|
||||
|
||||
## 重叠类别
|
||||
|
||||
你可能会发现,各个文档类别(新用户指南、高级用户指南、参考资料)存在一些重叠。这是因为信息流是流动的,因此通常情况下,某些文档在逻辑上可能属于多个类别。虽然我们的文档有一些重叠,但如果我们记住每个类别的主要功能并努力区分它们,那么文档将更加清晰可用。
|
||||
|
||||
## 新结构目标
|
||||
|
||||
旧版 Rancher 文档侧重于单个功能和主题,而新的 Divio 范式则优先考虑功能和及其内在联系。
|
||||
|
||||
我们旧版的文档结构没有采用 Divio 范式(例如,并非每个文档都可以合理地放入用户指南或参考文献中)。某些文档可能包含多个文档功能的内容。
|
||||
|
||||
因此,我们一直在努力把现有的文档转移到基于文档功能的新结构。未来,我们将根据需要创建、重写和重塑我们的文档,使我们的文档更加符合 Divio 结构、目的及其设计概念。
|
||||
|
||||
最终,我们的文档将强调单个主题或功能,从而更加有效地帮助我们的用户。
|
||||
+12
-12
@@ -30,21 +30,21 @@ Rancher API Server 是基于嵌入式 Kubernetes API Server 和 etcd 数据库
|
||||
|
||||
### 授权和基于角色的权限控制(RBAC)
|
||||
|
||||
- **用户管理**:Rancher API Server 除了管理本地用户,还[管理用户用来访问外部服务所需的认证信息](../../pages-for-subheaders/about-authentication.md),如登录 Active Directory 和 GitHub 所需的账号密码。
|
||||
- **授权**:Rancher API Server 可以管理[访问控制策略](../../pages-for-subheaders/manage-role-based-access-control-rbac.md)和[安全策略](../../how-to-guides/advanced-user-guides/authentication-permissions-and-global-configuration/create-pod-security-policies.md)。
|
||||
- **用户管理**:Rancher API Server 除了管理本地用户,还[管理用户用来访问外部服务所需的认证信息](../pages-for-subheaders/authentication-config.md),如登录 Active Directory 和 GitHub 所需的账号密码。
|
||||
- **授权**:Rancher API Server 可以管理[访问控制策略](../pages-for-subheaders/manage-role-based-access-control-rbac.md)和[安全策略](../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/create-pod-security-policies.md)。
|
||||
|
||||
### 使用 Kubernetes 的功能
|
||||
|
||||
- **配置 Kubernetes 集群**:Rancher API Server 可以在已有节点上[配置 Kubernetes](../../pages-for-subheaders/kubernetes-clusters-in-rancher-setup.md),或进行 [Kubernetes 版本升级](../installation-and-upgrade/upgrade-and-roll-back-kubernetes.md)。
|
||||
- **管理应用商店**:Rancher 支持使用 [Helm Chart 应用商店](../../pages-for-subheaders/helm-charts-in-rancher.md)实现轻松重复部署应用。
|
||||
- **管理项目**:项目由集群中多个命名空间和访问控制策略组成,是 Rancher 中的一个概念,Kubernetes 中并没有这个概念。你可以使用项目实现以组为单位,管理多个命名空间,并进行 Kubernetes 相关操作。Rancher UI 提供用于[项目管理](../../pages-for-subheaders/manage-projects.md)和[项目内应用管理](../../pages-for-subheaders/kubernetes-resources-setup.md)的功能。
|
||||
- **Fleet 持续交付**:在 Rancher 中,你可以使用 [Fleet 持续交付](../../pages-for-subheaders/fleet-gitops-at-scale.md)将应用程序从 Git 仓库部署到目标下游 Kubernetes 集群,无需任何手动操作。
|
||||
- **Istio**:[Rancher 与 Istio 集成](../../pages-for-subheaders/istio.md),使得管理员或集群所有者可以将 Istio 交给开发者,然后开发者使用 Istio 执行安全策略,排查问题,或为蓝绿部署,金丝雀部署,和 A/B 测试进行流量管理。
|
||||
- **配置 Kubernetes 集群**:Rancher API Server 可以在已有节点上[配置 Kubernetes](../pages-for-subheaders/kubernetes-clusters-in-rancher-setup.md),或进行 [Kubernetes 版本升级](installation-and-upgrade/upgrade-and-roll-back-kubernetes.md)。
|
||||
- **管理应用商店**:Rancher 支持使用 [Helm Chart 应用商店](../pages-for-subheaders/helm-charts-in-rancher.md)实现轻松重复部署应用。
|
||||
- **管理项目**:项目由集群中多个命名空间和访问控制策略组成,是 Rancher 中的一个概念,Kubernetes 中并没有这个概念。你可以使用项目实现以组为单位,管理多个命名空间,并进行 Kubernetes 相关操作。Rancher UI 提供用于[项目管理](../pages-for-subheaders/manage-projects.md)和[项目内应用管理](../pages-for-subheaders/kubernetes-resources-setup.md)的功能。
|
||||
- **Fleet 持续交付**:在 Rancher 中,你可以使用 [Fleet 持续交付](../pages-for-subheaders/fleet-gitops-at-scale.md)将应用程序从 Git 仓库部署到目标下游 Kubernetes 集群,无需任何手动操作。
|
||||
- **Istio**:[Rancher 与 Istio 集成](../pages-for-subheaders/istio.md),使得管理员或集群所有者可以将 Istio 交给开发者,然后开发者使用 Istio 执行安全策略,排查问题,或为蓝绿部署,金丝雀部署,和 A/B 测试进行流量管理。
|
||||
|
||||
### 配置云基础设施
|
||||
|
||||
- **同步节点信息**:Rancher API Server 可以同步所有集群中全部[节点](../../how-to-guides/advanced-user-guides/manage-clusters/nodes-and-node-pools.md)的信息。
|
||||
- **配置云基础设施**:如果你为 Rancher 配置了云提供商,Rancher 可以在云端动态配置[新节点](../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md)和[持久化存储](../../pages-for-subheaders/create-kubernetes-persistent-storage.md)。
|
||||
- **同步节点信息**:Rancher API Server 可以同步所有集群中全部[节点](../how-to-guides/new-user-guides/manage-clusters/nodes-and-node-pools.md)的信息。
|
||||
- **配置云基础设施**:如果你为 Rancher 配置了云提供商,Rancher 可以在云端动态配置[新节点](../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md)和[持久化存储](../pages-for-subheaders/create-kubernetes-persistent-storage.md)。
|
||||
|
||||
### 查看集群信息
|
||||
|
||||
@@ -54,12 +54,12 @@ Rancher API Server 是基于嵌入式 Kubernetes API Server 和 etcd 数据库
|
||||
|
||||
# 使用 Rancher 编辑下游集群
|
||||
|
||||
对于已有集群而言,可提供的选项和设置取决于你配置集群的方法。例如,只有[通过 RKE 启动](../../pages-for-subheaders/launch-kubernetes-with-rancher.md)的集群才有可编辑的**集群选项**。
|
||||
对于已有集群而言,可提供的选项和设置取决于你配置集群的方法。例如,只有[通过 RKE 启动](../pages-for-subheaders/launch-kubernetes-with-rancher.md)的集群才有可编辑的**集群选项**。
|
||||
|
||||
使用 Rancher 创建集群后,集群管理员可以管理集群成员,开启 Pod 安全策略,管理节点池,以及进行[其他操作](../../pages-for-subheaders/cluster-configuration.md)。
|
||||
使用 Rancher 创建集群后,集群管理员可以管理集群成员,开启 Pod 安全策略,管理节点池,以及进行[其他操作](../pages-for-subheaders/cluster-configuration.md)。
|
||||
|
||||
下表总结了每一种类型的集群和对应的可编辑的选项和设置:
|
||||
|
||||
import ClusterCapabilitiesTable from '../../shared-files/_cluster-capabilities-table.md';
|
||||
import ClusterCapabilitiesTable from '../shared-files/_cluster-capabilities-table.md';
|
||||
|
||||
<ClusterCapabilitiesTable />
|
||||
Reference in New Issue
Block a user