版本说明 - v2.5.10

Rancher 2.5.10 版本于 2021 年 10 月 15 日发布。单击这里查看英文版版本说明。

功能和增强

  • 在加固的集群上进行部署: 当 Rancher 管理服务器集群被 CIS 加固时,增加了对部署 EKS、AKS 和 GKE 集群的支持。参见#33172

安全性增强

  • 修复了 Rancher v2.5 Cluster Explorer 中的 RBAC 项目角色问题。现在可以正确跟踪与 RoleBinding 资源相关的 ClusterRoles 的角色修订情况。这允许为用户返回最新的模式,而不是从陈旧的访问状态评估用户的访问。参见#31982

主要 BUG 修复

  • 当使用 Calico CNI 与 IPIP 或 VXLAN 路由时,项目网络隔离的入口 NetworkPolicy 资源现在可以正确配置。参见 #34084
  • 在组件状态不可用的集群上,仪表盘上的 Controller Mananger 和 Scheduler 的健康状态将显示为不适用。参见#32905
  • EKS、AKS 和 GKE 供应者现在可以正确使用传递给 Rancher 的任何其他 CA,如果提供的话。请参阅 #32903
  • 当在托管的 Rancher 上部署 EKS 或 GKE 集群时,集群配置现在可以成功。请参阅 #33053

安装/升级注意事项

如果你是第一次安装 Rancher,你的环境必须满足安装要求。

升级要求

  • 创建备份: 我们强烈建议在升级 Rancher 之前创建一个备份。要在升级后回滚 Rancher,你必须将 Rancher 备份并恢复到以前的 Rancher 版本。因为 Rancher 将被恢复到创建备份时的状态,升级后的任何变化在恢复后都不会被包括在内。欲了解更多信息,请参阅备份 Rancher 的文档。

  • Helm 版本: Rancher 安装或升级必须使用 Helm 3.2.x+,因为最新的 cert-manager 版本有变化。参见#29213

  • Kubernetes 版本:

    • 在安装 Rancher 2.5+之前,Rancher Server 的 Local Kubernetes 集群应升级到 Kubernetes 1.17+。
  • CNI 要求:

    • 对于 K8s 1.19 和更新版本,我们建议禁用 firewalld,因为已经发现它与各种 CNI 插件不兼容。参见#28840
    • 如果升级或安装到使用 nf_tables 作为后端数据包过滤器的 Linux 发行版,如 SLES 15, RHEL 8, Ubuntu 20.10, Debian 10,或更新的版本,用户应该升级到 RKE1 v1.19.2 或更高版本,以获得支持 nf_tables 的 Flannel v0.13.0 版本。参见 Flannel #1317
    • 对于从>=v2.4.4升级到v2.5.x并启用了 ACI CNI 的集群的用户,请注意升级 Rancher 将导致自动集群和解。这适用于 Kubernetes 版本v1.17.16-rancher1-1v1.17.17-rancher1-1v1.17.17-rancher2-1v1.18.14-rancher1-1v1.18.15-rancher1-1v1.18.16-rancher1-1v1.17-rancher1-1。在升级到v2.5.x之前,请参考workaround。参见#32002
  • 离线环境的要求:

    • 对于在离线的环境中安装或升级 Rancher,请在 helm template 命令中添加标志 --no-hooks 以跳过为 Helm 的 hooks 渲染文件。参见#3226
    • 如果在离线的 Rancher 前面使用代理,你必须向NO_PROXY传递额外的参数。参见 文档#2725
  • Cert-manager 的版本要求: 如果你有一个使用自签名证书的 Rancher 的高可用性安装,那么 cert-manager 的最新变化需要升级。如果你使用的是比 v0.9.1 更早的 cert-manager,请看关于如何升级 cert-manager 的文档。参见文档

  • 对 Docker 安装的要求:

    • 在启动 Rancher Docker 容器时,必须使用特权标志。见文档。
    • 当在离线环境中安装时,你必须向 docker run 命令提供一个自定义的 registries.yaml 文件,如 K3s 文档所示。如果注册表有证书,那么你也需要提供这些证书。参见#28969
    • 当升级 Docker 安装时,容器中可能会发生 panic,这导致它重新启动。重启后,容器就会出现,并按预期工作。参见#33685
  • RKE 要求: 对于从<=v2.4.8 (<= RKE v1.1.6)升级到v2.4.12+ (RKE v1.1.13+)/v2.5.0+ (RKE v1.2. 0+),请注意编辑和保存集群(即使没有变化或像集群名称这样的微不足道的变化)将导致集群在所有节点上升级kube-proxy因为kube-proxy绑定的变化。这只发生在第一次编辑时,以后的编辑应该不会影响集群。参见#32216

  • EKS 要求: 在 2.5.8 之前的 Rancher 版本中,有一个设置允许用户以 cron 格式配置刷新时间的长度:eks-refresh-cron。该设置现在已被废弃,并被迁移到新设置中的标准格式:eks-refresh。如果以前设置过,迁移将自动发生。参见 #31789

  • Fleet-agent: 当升级<=v2.5.7>=v2.5.8时,你可能会注意到在 app & marketplace 中,有一个 fleet-agent 的发布卡在卸载。这是由于迁移了 fleet-agent 版本名称造成的。删除 fleet-agent release 是安全的,因为它不再被使用,也不应该删除真正的 fleet-agent deployment,因为它已经被迁移了。参见 #362

Rancher 的变化

  • 升级和回滚: Rancher 支持升级和回滚。请注意你想升级或回滚的版本。
    • 请注意,在升级到 v2.3.0+ 后,对 Rancher 启动的 Kubernetes 集群的任何编辑都将导致所有系统组件重新启动,因为 Kubernetes 系统组件的容忍度增加。请做好相应的计划。
    • 如果你有一个使用自签名证书的 Rancher 的 HA 安装,那么最近对 cert-manager 的改变需要升级。如果你使用的是比 v0.9.1 更早的 cert-manager,请参考文档中关于如何升级 cert-manager。
    • 现有的 GKE 集群和导入的集群将继续按原样运行。只有新创建和注册的集群将使用新的全生命周期管理。
    • 对于 v2.5.0 及以上版本,回滚 Rancher 的过程已经更新。请参考文档中的新说明。
  • 重要: 当回滚时,我们希望你能回滚到升级时的状态。任何升级后的变化都不会被反映出来。
  • 在较早的 Rancher 版本中,可以隐藏 Local 集群以限制管理员对 Rancher Server Local Kubernetes 集群的访问,但该功能已被废弃。 Local Kubernetes 集群不能再被隐藏,所有管理员都可以访问 Local 集群。如果你想限制 Local 集群的权限,有一个新的restricted-admin 角色。现在可以通过在 v3/settings API 中设置 hide_local_clustertrue 来禁用对 Local 集群的访问。参见文档#29325。关于从 Rancher 升级到隐藏 Local 的更多信息,请参见文档。

版本

请参考README了解最新和稳定的版本。

请查阅我们的版本文档以了解更多关于版本和标签惯例的细节。

镜像

  • rancher/rancher:v2.5.10
  • rancher/rancher-agent:v2.5.10

工具

Kubernetes 版本

  • 1.20.8 (默认)
  • 1.19.12
  • 1.18.20
  • 1.17.17

其他说明

功能描述
Cluster Manager - Rancher 监控Cluster Manager UI 中的监控已被新的监控图所取代,该监控图可在 Cluster Explorer 中的 Apps & Marketplace 中使用。
Cluster Manager - Rancher 告警和通知告警和通知功能现在直接与集群资源管理器中的应用程序和市场中可用的新监控图集成。
Cluster Manager - Rancher 日志使用集群资源管理器中的应用程序和市场中可用的新的日志,用新的日志解决方案替换功能。
Cluster Manager - 多集群应用部署现在建议使用 Cluster Explorer 中可用的由 Fleet 支持的 Rancher 持续交付处理部署到多个集群。
Cluster Manager - Kubernetes CIS 1.4扫描 Kubernetes CIS 1.5+基准扫描现在被一个新的扫描工具所取代,该工具部署在 Cluster Explorer 中的应用程序和市场中的 cis 基准图。
luster Manager - Rancher 流水线基于 Git 的部署管道现在推荐使用 Cluster Explorer 中可用的由 Fleet 支持的 Rancher 持续交付来处理。
Cluster Manager - Istio v1.5Istio 项目已经结束对 Istio 1.5 的支持,并建议所有用户升级。Istio 1.7 现在可以在 Cluster Explorer 的 Apps & Marketplace 中作为 Istio Chart 使用。
Cluster Manager - 配置 Kubernetes v1.16 集群我们已终止对 Kubernetes v1.16 的支持。 Cluster Manager 不再提供新的 v1.16 集群。如果您已有 v1.16 集群,则不受影响。

实验性功能

RancherD 是在 2.5 版本中作为一个易于使用的安装二进制文件引入的。随着 RKE2 配置的引入,这个项目正在被重新编写,并将在以后的时间里提供。参见#33423

Cluster Manager 和 Cluster Explorer 中的重复功能

  • 由于可能存在冲突的 CRD,只能安装一个版本的功能。
  • 每个功能只能由它所部署的 UI 来管理。
  • 如果你已经在 Cluster Manager 中安装了该功能,你必须在 Cluster Manager 中卸载它,然后再尝试在 Cluster Explorer 仪表盘中安装新版本。

Cluster Explorer 功能的注意事项和升级

  • General
    • 目前并非所有的新功能都可以安装在加固的集群上。
    • 预计新功能将使用 Helm 3 CLI 而不是 Rancher CLI 来部署。
  • Rancher 备份
    • 当迁移到具有 Rancher 备份功能的集群时,server-url 不能被改变到不同的位置,必须继续使用相同的 URL。
  • 监控
    • 监控有时在安装时出错,因为它无法识别 CRD。#29171
  • Istio
    • 在与 v1.9.3 和 v1.8.5 捆绑的 Kiali 仪表盘中访问某个服务的追踪信息时,试图改变显示选项可能会导致该服务的追踪信息出现持久性错误。在这个问题解决之前,如果你想了解某个服务追踪的不同细节,我们建议使用 Jaeger 仪表盘。这个问题的解决方案可以在#32330中找到。
    • 请注意,当从 Istio 1.7.4 或更早的版本升级到任何后来的版本时,可能会出现连接问题。升级说明 #31811
    • 从 v1.8.x 版本开始,DNS 被原生支持。这意味着额外的附加组件 “istioCoreDNS “在 v1.8.x 版本中被弃用,在 v1.9x 版本中不被支持。如果您从 v1.8.x 版本升级到 v1.9.x 版本,并且您正在使用 “istioCoreDNS “附加组件,我们建议您在升级前禁用它并切换到本机支持的 DNS。如果您在升级时没有禁用它,您将需要手动清理您的安装,因为它不会被自动删除。#31761 #31265

群集管理器功能注意事项和升级

  • GKE
    • 在 Rancher 中把 GKE 集群升级到 1.19 以上之前,必须在 GCP 中明确取消基本认证。#32312
    • 在 Terraform 中创建 GKE 集群时,labels 字段不能为空,必须至少设置一个标签 #32553
  • EKS 和 GKE
    • 在 Terraform 中创建 EKS 和 GKE 集群时,字符串字段不能被设置为空。#32440

已知的主要问题

  • Kubernetes 集群分布
    • RKE
      • 不支持使用自定义加密提供程序轮换加密密钥。#30539
  • 集群工具
    • 加固的集群: 目前不是所有的集群工具都可以安装在加固的集群上。
    • 监控
    • 在设置了 win_prefix_path 的 Windows 集群上部署 Monitoring V2,需要用户部署 Rancher Wins Upgrader,在主机上重新启动 wins,以便开始在 Prometheus 中收集指标。参见#32535
    • 如果工作节点使用的安全组阻止对 10254 端口的传入请求,则监控 V2 无法在任何节点上刮取 ingress-nginx pods,除了部署在 Prometheus 上的节点。这个问题的解决方法是在所有主机上开放 10254 端口。参见 #32563
    • 日志记录
      • 日志(群集资源管理器)。在 Windows 集群上禁用 Windows 日志后执行舵手升级时,不会删除 Windows nodeAgents。参见#32325
    • Istio 版本:
      • 2021 年 10 月 8 日,Istio 1.9 支持结束
      • Istio 1.5 不支持离线环境。请注意,Istio 项目已经结束对 Istio 1.5 的支持。
    • Legacy Monitoring
      • 在离线设置中,生成的rancher-images.txt用于在私有注册表上的镜像,不包含运行 Legacy Monitoring 所需的镜像,也称为 Monitoring V1,与 Kubernetes 1.15 集群兼容。如果你在离线环境中运行 Kubernetes 1.15 集群,并且你想安装 Monitoring V1 或将 Monitoring V1 升级到 Rancher 为 Kubernetes 1.15 集群提供的最新版本,你将需要采取以下行动之一:
        • 升级 Kubernetes 版本,以便你可以使用监控应用程序 Helm 的 0.2.x 版本。
        • 手动导入必要的镜像到你的私有注册表,以便监控应用使用
    • 安装要求
      • 导入 Kubernetes v1.21 集群可能无法正常工作。我们正计划在未来增加对 Kubernetes v1.21 的支持。
    • 备份和恢复
      • 在同一集群上重新安装 Rancher 2.5.x 可能会失败,原因是之前安装的rancher.cattle.io. MutatingWebhookConfiguration 对象依然存在。手动删除它可以解决这个问题。
    • Docker 安装: 在启动时存在 UI 问题。参见#28800#28798