Skip to content

k8s 部署版本升级

  1. 获取升级版本的 k8s yaml 部署文件,配置文件可参考 部署前准备 获取。
  2. 获取新版本服务镜像,导入 k8s 集群或者添加到内部私服等,确保 k8s 集群可以获取镜像信息。
  3. 无自动备份,需升级前手工备份数据! k8s 环境备份与恢复
  4. 对比已安装版本中的组件依赖,与待升级版本中的组件依赖。
    • 组件依赖相同,更新 hengshi.yaml 配置文件中的镜像版本信息。
    shell
       containers:
         - name: hengshi-sense-ins
           imagePullPolicy: IfNotPresent
           image: registry.hengshi.org/hengshi-sense:xxxxx  # 更新为新版本镜像tag
    
    ## 执行以下部署命令,完成升级操作
    kubectl -n hengshi apply -f hengshi.yaml
    • 组件依赖不同,以4.0升级到4.2为例,新增 redis组件,需要更新 hengshi.yaml redis.yaml 镜像以及 pvc 相关配置信息。
    shell
    ## 执行以下部署命令,完成升级操作
    kubectl -n hengshi apply -f configmap.yaml
    kubectl -n hengshi apply -f service.yaml
    kubectl -n hengshi apply -f redis.yaml
    kubectl -n hengshi apply -f hengshi.yaml
    • 组件依赖相同,如已知升级版本内存在组件功能优化,请联系技术人员确定需要更新的组件信息。以 metadb 组件功能优化为例,更新 hengshi.yaml metadb.yaml 配置文件镜像信息。
    shell
    ## 执行以下部署命令,完成升级操作
    kubectl -n hengshi apply -f metadb.yaml
    kubectl -n hengshi apply -f hengshi.yaml
  5. 检查所有组件 pod 启动状态,STATUS 均为 Running 表示服务启动成功。
  6. 升级完成,通过浏览器访问服务地址使用 HENGSHI SENSE 服务。
  7. 注意事项:
    1. 5.1.x 版本 flink 已被移除,无需运行。升级后可考虑停止并清理 flink 的容器。

k8s 部署回滚

  1. 回滚程序
  2. 回滚数据 使用 k8s 恢复 的操作过程

helm 部署版本升级

  1. 获取新版本服务镜像,导入 k8s 集群或者添加到内部私服等,确保 k8s 集群可以获取镜像信息。
  2. 对比helm部署中的自定义配置完整示例,确认新版本是否有增加或删除的配置。
  3. helm环境中,升级过程中默认未进行数据备份操作,可根据需要自行进行数据备份操作k8s 环境备份与恢复
  4. 无自动备份,需升级前手工备份数据! k8s 环境备份与恢复

非跨大版本升级, 通常都是做好数据备份,然后--version 指定版本号升级即可

example-config 配置参考

集群示例配置

shell
hsImage:
hengshi:
  address: "registry.hengshi.org/hengshi-sense:6.0-xxxxx"  # 替换为新版本镜像
gpdb:
  address: "registry.hengshi.org/gpdb:6.25.4.0"  # 替换为新版本镜像
hsContainer:
gpdb:
  segment_replicas: 3
  gpdb_segments:
    - segment-0
    - segment-1
    - segment-2
# 如需更改存储卷大小,可以开启下列参数
hsVolume:
storage_class_name: "longhorn" # 替换成你正在使用的StorageClass
# 公有云磁盘可能会有最小限制,例如阿里云最小为20G
#  gpdb:
#    master_size: "50Gi"
#    segment_size: "50Gi"
#  metadb:
#    hengshi_db_size: "50Gi"
#  minio:
#    hengshi_minio_size: "50Gi"
#  redis:
#    hengshi_redis_size: "10Gi"

单机示例配置

shell
hsImage:
  hengshi:
    address: "registry.hengshi.org/hengshi-sense:6.0-xxxxxx"  # 替换为新版本镜像
  gpdb:
    address: "registry.hengshi.org/gpdb:6.25.4.0"  # 替换为新版本镜像
# 如果你需要更改存储卷大小,可以开启下列参数
hsVolume:
  storage_class_name: "longhorn" # 替换成你正在使用的StorageClass
# 公有云磁盘可能会有最小限制,例如阿里云最小为20G
#  gpdb:
#    master_size: "50Gi"
#    segment_size: "50Gi"
#  metadb:
#    hengshi_db_size: "50Gi"
#  minio:
#    hengshi_minio_size: "50Gi"
#  redis:
#    hengshi_redis_size: "10Gi"
shell
helm upgrade -f example-config.yaml HENGSHI-SENSE hengshi-charts/hengshi-sense --version [chart_version] -n [namespace] #

helm 部署回滚

  1. 回滚程序
  2. 回滚数据 使用 k8s 恢复 恢复 metadb 的操作过程

衡石分析平台使用手册