Rancher 2.3.3 版本于 2019 年 11 月 28 日发布。本文介绍了 Rancher 2.3.3 相较上一版本(2.3.2)的重大改动、新增的实验性功能、已修复的问题和已知问题。点击这里查看英文版版本说明。

重要说明

  • 如果您打算从 v2.2 版本升级到该版本,请务必查看v2.3.0 版本说明中的重要更新和重大改动的说明。

  • 如果您在 Rancher 启动的集群中使用了canal网络,在您更新 Kubernetes 版本或者编辑集群时,canal 的 Pod 将被重建。

下面的版本为当前的最新版和稳定版:

类型Rancher 版本Docker 标签Helm 仓库Helm Chart 版本
最新版v2.3.3rancher/rancher:latestserver-charts/latestv2.3.3
稳定版v2.3.3rancher/rancher:stableserver-charts/stablev2.3.3

您可以通过如何选择版本的文档,了解更多关于不同版本和标签的区别。

功能和优化

  • 默认 Kubernetes 版本为 1.16

    • Kubernetes 1.16 被设置为了默认版本。在任何时候,如果您要升级 Kubernetes 版本,请务必查看 Kubernetes 官方到版本说明,从而了解 Kubernetes 版本中的重大变化。Kubernetes 1.16 中移除了一些被弃用的 API,具体请查看 Kubernetes 1.16 的版本说明。
  • 更新了 vmware vSphere 的主机驱动 - 在创建 vmware vSphere 集群时,我们针对创建虚拟机做了若干优化:

    • 创建虚拟机时支持 Ubuntu 等 OS [#21605]
    • 支持从 Datacenter template,vSphere content library 和克隆现有主机创建 vSphere 节点模版 [#21483]
    • 支持给 vSphere 节点模版设置标签和 CustomAttributes [#22660]
    • Ability to use Datastore clusters as the Datastore [#19706]
    • 配置节点模版时,UI 将会从 vCenter 获取字段相应的可用选项 [#23002]
  • Admin 管理员可以管理全部的节点模版 [#12186] - Admin 管理员现在可以管理全部的节点模版。例如,当一个用户在创建了节点模版后,这个用户便不再使用 Rancher 了。在这种情况下,管理员可以继续更新维护这个节点模版。

  • 支持从现有 RKE 集群导出 RKE 集群模板 [#22992] - 如果之前您已经通过 RKE 创建了一个集群,现在您可以把这个集群导出为集群模板。然后,您可以开始通过这个 RKE 模板来更新这个集群。

实验性功能

我们提供了一种启停 Rancher 中实验性功能模块的能力。在这个版本里,您可以通过 UI 来控制“功能开关”。详情请查阅在 Rancher 中如何开启某些功能的文档。

自 v2.3.2 以来修复的主要问题

  • 修复了一个 kube-proxy 无法支持 IPVS 模式的问题 [#13769]
  • 修复了一个在 RKE 集群中不能给 nginx ingress controller 设置extra_envsextra_volumesextra_volume_mounts参数的问题 [#16868]
  • 修复了一个 openldap 认证的自定义架构部分的搜索过滤器字段无法工作的问题 [#18630]
  • 修复了一个 Rancher 创建的镜像仓库密文缺失 auth 字段的问题 [#19032]
  • 修复了一个在修改应用商店应用时,answers.yaml 和编辑 YAML 中的数据不同步的问题 [#20087]
  • 修复了一个导入的 RKE 集群不能在项目中使用 PSP 的问题 [#21039]
  • 修复了一个 UI 允许用户在一个并没有激活 PSP 的集群的项目里启用 PSP 的问题 [#21548]
  • 修复了一个创建主机时, 环境变量 NO_PROXY 不生效的问题 [#21674]
  • 修复了一个在启用 AWS 的 cloud provider 时,agent 和 hostname 错误的问题 [#22849]
  • 允许用户隐藏掉永远都不会变为 NodeReady 状态的节点。这是因为在集成某些软件时,可能需用创建一个并不会运行 kubelet 的假的节点。[#23394]

其他说明

离线安装和升级

在 v2.3.0+的版本里,离线安装将不在需要手动同步 system charts 的源代码仓库了。具体操作请参阅有关安装 Rancher 时,如何使用内嵌的 system charts

主要的已知问题

  • k8s 1.16 在 RHEL 7.7 启用 selinux 后无法正常工作 [#23662]

  • NGINX ingress controller 0.25.0 版本仅支持有 SSE4.2 指令集的 CPU [#23307]

  • Windows 集群限制 - 由于其他上游依赖的原因,Windows 集群有一些已知的限制:

    • 在使用 Flannel VXLAN (Overlay) 模式时, Windows Pods 无法访问 Kubernetes API。临时解决方案是使用 Flannel Host Gateway (L2bridge)模式。该问题将在 k8s 1.18 版本中修复。[#20968]

    • Windows 集群的日志功能仅在 Flannel Host Gateway (L2bridge)模式下可以使用。该问题将在 k8s 1.18 版本中修复。[#20510]

  • Istio 限制 - Istio 无法在使用受限的 Pod 安全策略的集群中激活 [#22469]

  • HPA 限制 - 因为 GKE 不支持v2beta2.autoscaling版本的 API。所以在 Rancher UI 中无法通过 UI 管理 GKE 集群的 HPA 资源。[#22292]

  • 安全加固限制 - 如果您按照 Rancher 的安全加固手册进行了配置,那么您将会遇到一些已知的问题。

    • Rancher UI 中的 kubectl 将无法工作 [#19439]
    • 流水线将无法工作 [#22844]
  • 如果您是从 v2.2 升级上来的环境,在向已有节点模版中添加的 Taints 后,并使用这个节点模版来扩容 Worker 节点,那么这些新的 Worker 节点可能无法正常工作。您必须在对管理节点或 etcd 节点进行扩缩容后,或是对集群进行编辑后,这些带有 Taints 的新 Worker 节点才能正常工作。因为只有在集群 Reconcile 被触发后,系统组件才会自动添加 Tolerations [#22672]

  • 在升级 Rancher 版本后,集群告警组件或集群日志组件有可能会卡在Updating状态。临时解决方案可以在这个 issue 中找到。[#21480]

  • 如果您的 Rancher Server 所在的集群配置了 OpenStack cloud provider 并设置了 LoadBalancer,并且这个 Rancher Server 所在的集群是在 v2.2.3 或者更早的版本创建的,那么直接升级到 Rancher v2.2.4 或之后的版本将会失败。您可以在这个 issue 的评论中找到这种情况下的迁移方法 [#20699]

  • 如果集群配置了 cloud provider,且以主机名或 FQDN 注册的 agents(并且通过 IP 地址注册),kube-proxy 将无法启动。您可以通过节点的 API 的返回值来进行确认。[RKE#1725]

  • 由于更新了 Fluentd Kubernetes metadata 插件的原因,Rancher 日志采集的格式发送了变化。json 格式的日志将不能被处理,所以在采集到的日志里将无法把 json 格式日志合并作为顶层键。[#23646]

版本信息

镜像

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

工具

Kubernetes 版本

注:在 v2.3.0+版本中,在有新的 Kubernetes 版本可用时,即使不升级 Rancher 版本,我们也会自动向您推送这些版本。所以您在 Rancher UI 中看到的可用版本,可能会高于如下版本。

升级和回滚

Rancher 支持升级回滚操作。在修改 Rancher 版本时,请先确认您要升级到或者回滚到的 Rancher 版本。

请注意,在升级到 v2.3.0 或者以上版本时,第一次修改通过 Rancher v2.3.0 之前版本部署的 RKE 集群时,由于要向系统组件中加入 Tolerations,该集群全部的系统组件将会自动重启。请事先规划好。

如果您的 Rancher HA 在使用 低于 v0.9.1 的 cert-manager,并且是自签名证书,由于 cert-manager 最新的变化,您需要升级 cert-manager 的版本。具体操作请参阅有关如何升级 cert-manager的文档。

:::important 重要 在回滚的时候,您将会被回滚到升级之前的状态。任何在升级后进行的改动将无法被保留。 :::

Assets

请在这里获取该版本的 Assets。