注意: 如果之前使用RKE Add-on安装的Rancher,请根据从RKE HA迁移到Helm HA进行迁移。

从版本v2.0.8开始,Rancher采用Helm chart安装和升级。如果要将升级方法从RKE更改为Helm,请按照此过程操作。

一、先决条件

  1. 备份Rancher集群

    如果在升级期间出现问题,可使用数据备份进行恢复

  2. kubectl

    安装配置kubectl,升级将使用kubectl操作。

  3. 安装或者升级Helm Server和Helm 客户端

    如果之前是通过RKE部署的rancher,那首先需要安装Helm Server和Helm 客户端,安装方法参考安装Helm Server和Helm 客户端安装最新版本Helm Server和Helm 客户端

二、升级文件准备

  1. 更新本地helm repo缓存;

    helm repo update
  2. 查看本地helm repo

    helm repo list
    
    NAME                  URL
    stable                https://kubernetes-charts.storage.googleapis.com
    rancher-<CHART_REPO>    https://releases.rancher.com/server-charts/<CHART_REPO>

三、更新 Rancher

  1. 使用权威认证证书安装升级

    注意 升级参数应该以安装时设置的参数为准,将安装参数以--set key=value的形式附加到升级命令中。

    kubeconfig=xxx.yaml
    
    helm --kubeconfig=$kubeconfig upgrade \
        rancher rancher-stable/rancher \
        --version v2.2.3 \
        --set hostname=<修改为自己的域名> \
        --set ingress.tls.source=secret \
        --set service.type=ClusterIP \
        --set rancherImage=<离线镜像仓库地址>/rancher/rancher \
        --set busyboxImage=<离线镜像仓库地址>/rancher/busybox

    通过--version指定升级版本,镜像tag不需要指定,会自动根据chart版本获取。

  2. 使用自签名证书安装升级

    注意 升级参数应该以安装时设置的参数为准,将安装参数以--set key=value的形式附加到升级命令中。

    kubeconfig=xxx.yaml
    
    helm --kubeconfig=$kubeconfig upgrade \
        rancher rancher-stable/rancher \
        --version v2.2.3 \
        --set hostname=<修改为自己的域名> \
        --set ingress.tls.source=secret \
        --set service.type=ClusterIP \
        --set privateCA=true \
        --set rancherImage=<离线镜像仓库地址>/rancher/rancher \
        --set busyboxImage=<离线镜像仓库地址>/rancher/busybox

    通过--version指定升级版本,镜像tag不需要指定,会自动根据chart版本获取。

更多配置参考rancher高级设置.