基础组件升级

添加Choerodon Chart仓库

  1. helm repo add c7n https://openchart.choerodon.com.cn/choerodon/c7n/
  2. helm repo update

升级 chartmuseum

  • 若需了解项目详情及各项参数含义,请移步 helm/chartmuseum
  • 编写参数配置文件 chartmuseum.yaml

    1. env:
    2. open:
    3. STORAGE: local
    4. AUTH_ANONYMOUS_GET: "true"
    5. DISABLE_API: "false"
    6. DEPTH: 2
    7. secret:
    8. BASIC_AUTH_PASS: password
    9. BASIC_AUTH_USER: choerodon
    10. persistence:
    11. enabled: true
    12. storageClass: nfs-provisioner
    13. ingress:
    14. enabled: true
    15. hosts:
    16. - name: chart.example.choerodon.io
    17. path: /
  • 执行部署

    1. helm upgrade --install chartmuseum c7n/chartmuseum \
    2. -f chartmuseum.yaml \
    3. --version 2.15.0 \
    4. --namespace c7n-system

微服务开发框架升级

开始进行升级部署前请先备份好配置和数据库!
请按以下顺序依次进行升级部署,请不要随意调整升级顺序。升级后可能数据库结构会发生改变,故不能进行版本回退。文档升级命令中的RELEASE NAME是在基于分步安装文档之上编写的,若你在安装时指定了其他RELEASE NAME,请以你安装时指定的RELEASE NAME为准。一键部署安装的请执行helm list命令查看RELEASE NAME。

升级 choerodon register

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-register

  • 升级服务

    1. helm upgrade --install choerodon-register c7n/choerodon-register \
    2. -f <(helm get values -n c7n-system choerodon-register) \
    3. --version 0.24.2 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get svc choerodon-register -o jsonpath="{.spec.clusterIP}" -n c7n-system):8001/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon platform

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-platform

  • 升级服务

    1. helm upgrade --install choerodon-platform c7n/choerodon-platform \
    2. -f <(helm get values -n c7n-system choerodon-platform) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-platform -o jsonpath="{.items[0].status.podIP}"):8101/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon admin

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-admin

  • 升级服务

    1. helm upgrade --install choerodon-admin c7n/choerodon-admin \
    2. -f <(helm get values -n c7n-system choerodon-admin) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-admin -o jsonpath="{.items[0].status.podIP}"):8063/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon iam

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-iam

  • 升级服务

    1. helm upgrade --install choerodon-iam c7n/choerodon-iam \
    2. -f <(helm get values -n c7n-system choerodon-iam) \
    3. --version 0.24.4 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-iam -o jsonpath="{.items[0].status.podIP}"):8031/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon asgard

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-asgard

  • 升级服务

    1. helm upgrade --install choerodon-asgard c7n/choerodon-asgard \
    2. -f <(helm get values -n c7n-system choerodon-asgard) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证升级

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-asgard -o jsonpath="{.items[0].status.podIP}"):8041/actuator/health | jq -r .status
    • 出现以下类似信息即为成功升级
    1. UP

升级 choerodon message

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-message

  • 升级服务

    1. helm upgrade --install choerodon-message c7n/choerodon-message \
    2. -f <(helm get values -n c7n-system choerodon-message) \
    3. --version 0.24.4 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-message -o jsonpath="{.items[0].status.podIP}"):8121/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

部署 choerodon swagger

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-swagger

  • 编写参数配置文件 choerodon-swagger.yaml

  • 升级服务

    1. helm upgrade --install choerodon-swagger c7n/choerodon-swagger \
    2. -f <(helm get values -n c7n-system choerodon-swagger) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-swagger -o jsonpath="{.items[0].status.podIP}"):8051/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon gateway

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-gateway

  • 升级服务

    1. helm upgrade --install choerodon-gateway c7n/choerodon-gateway \
    2. -f <(helm get values -n c7n-system choerodon-gateway) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-gateway -o jsonpath="{.items[0].status.podIP}"):8081/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon oauth

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-oauth

  • 升级服务

    1. helm upgrade --install choerodon-oauth c7n/choerodon-oauth \
    2. -f <(helm get values -n c7n-system choerodon-oauth) \
    3. --set env.open.HZERO_OAUTH_BASE_URL="http://api.example.choerodon.io/oauth" \
    4. --version 0.24.2 \
    5. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-oauth -o jsonpath="{.items[0].status.podIP}"):8021/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon monitor

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-monitor

  • 升级服务

    1. helm upgrade --install choerodon-monitor c7n/choerodon-monitor \
    2. -f <(helm get values -n c7n-system choerodon-monitor) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-monitor -o jsonpath="{.items[0].status.podIP}"):8261/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 choerodon file

  • 若需了解项目详情及各项参数含义,请移步 open-hand/choerodon-file

  • 升级服务

    1. helm upgrade --install choerodon-file c7n/choerodon-file \
    2. -f <(helm get values -n c7n-system choerodon-file) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=choerodon-file -o jsonpath="{.items[0].status.podIP}"):8111/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

敏捷管理升级

- 开始进行升级部署前请先备份好数据库。

- 由于要修数据,务必停掉前端、后端访问入口,防止修数据过程中访问接口导致的脏数据
- 一次性修数据任务job,考虑多pod的修数据情况,建议最好只启动一个pod修数据

升级 agile service

- 开始进行升级部署前请先备份好数据库。

  • 升级服务

    1. helm upgrade agile-service c7n/agile-service \
    2. -f <(helm get values -n c7n-system agile-service) \
    3. --version 0.24.5 \
    4. --namespace c7n-system
  • 注意: 请务必跟踪 agile service pod 的日志,直至出现以下日志后,数据迁移修复成功

    1. ==============================>>>>>>>> AGILE Data Fixed Finished <<<<<<<<=================================
  • 验证升级

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=agile-service -o jsonpath="{.items[0].status.podIP}"):8379/actuator/health | jq -r .status
    • 出现以下类似信息即为成功升级
    1. UP

升级 test manager service

- 开始进行升级部署前请先备份好数据库。

  • 升级服务

    1. helm upgrade test-manager-service c7n/test-manager-service \
    2. -f <(helm get values -n c7n-system test-manager-service) \
    3. --version 0.24.1 \
    4. --namespace c7n-system
  • 注意: 请务必跟踪 test manager service pod 的日志,直至出现以下日志后,数据迁移修复成功

    1. ==============================>>>>>>>> test case priority fix finished <<<<<<<<=================================
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=test-manager-service -o jsonpath="{.items[0].status.podIP}"):8094/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

升级 knowledgebase service

  • 升级 elasticsearch

    1. helm upgrade --install elasticsearch-kb c7n/elasticsearch-kb \
    2. -f <(helm get values -n c7n-system elasticsearch-kb) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 升级服务

    1. helm upgrade knowledgebase-service c7n/knowledgebase-service \
    2. -f <(helm get values -n c7n-system knowledgebase-service) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=knowledgebase-service -o jsonpath="{.items[0].status.podIP}"):8281/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

DevOps服务升级

升级gitlab service

  • 升级gitlab-service

    1. helm upgrade gitlab-service c7n/gitlab-service \
    2. -f <(helm get values -n c7n-system gitlab-service) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证升级

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=gitlab-service -o jsonpath="{.items[0].status.podIP}"):8071/actuator/health | jq -r .status
    • 出现以下类似信息即为成功升级
    1. UP

升级workflow service

  • 升级workflow-service

    1. helm upgrade workflow-service c7n/workflow-service \
    2. -f <(helm get values -n c7n-system workflow-service) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证升级

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=workflow-service -o jsonpath="{.items[0].status.podIP}"):8066/actuator/health | jq -r .status
    • 出现以下类似信息即为成功升级
    1. UP

升级devops service

  • 升级devops-service:

    1. helm upgrade devops-service c7n/devops-service \
    2. -f <(helm get values -n c7n-system devops-service) \
    3. --set env.open.AGENT_VERSION="0.24.3" \
    4. --set env.open.SERVICES_HELM_USERNAME=choerodon \
    5. --set env.open.SERVICES_HELM_PASSWORD=password \
    6. --set env.open.DEVOPS_ANSIBLE_IMAGE=registry.cn-shanghai.aliyuncs.com/c7n/kubeadm-ha:0.1.3 \
    7. --version 0.24.10 \
    8. --namespace c7n-system
    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=devops-service -o jsonpath="{.items[0].status.podIP}"):8061/actuator/health | jq -r .status
    • 出现以下类似信息即为成功升级
    1. UP

制品库升级

在此之前,应该准备好Mysql、Harbor、Gitlab、Minio,Chartmuseum、Nexus这些组件的信息。按以下搭建顺序进行搭建,请不要随意调整搭建顺序。

部署 code repo service

  • 若需了解项目详情及各项参数含义,请移步 open-hand/code-repo-service

  • 部署服务

    1. helm upgrade --install code-repo-service c7n/code-repo-service \
    2. -f <(helm get values -n c7n-system code-repo-service) \
    3. --version 0.24.2 \
    4. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=code-repo-service -o jsonpath="{.items[0].status.podIP}"):7141/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

部署 prod-repo-service

  • 若需了解项目详情及各项参数含义,请移步 open-hand/prod-repo-service

  • 部署服务

    1. helm upgrade --install prod-repo-service c7n/prod-repo-service \
    2. -f <(helm get values -n c7n-system prod-repo-service) \
    3. --set env.open.NEXUS_PROXY_URIPREFIX="/v1/nexus/proxy" \
    4. --set env.open.NEXUS_PROXY_SERVLETURI="/v1/nexus/proxy/*" \
    5. --set env.open.SERVICES_GATEWAY_URL="http://api.example.choerodon.io" \
    6. --set env.open.SERVICE_ROUTE="/rdupm" \
    7. --version 0.24.4 \
    8. --namespace c7n-system
  • 验证部署

    • 验证命令
    1. curl -s $(kubectl get po -n c7n-system -l choerodon.io/release=prod-repo-service -o jsonpath="{.items[0].status.podIP}"):7145/actuator/health | jq -r .status
    • 出现以下类似信息即为成功部署
    1. UP

整合前端升级

安装choerodon-front-hzero

  • 编写参数配置文件 choerodon-front-hzero.yaml

    1. env:
    2. open:
    3. BUILD_CLIENT_ID: choerodon
    4. BUILD_API_HOST: http://api.example.choerodon.io
    5. BUILD_WEBSOCKET_HOST: http://api.example.choerodon.io/hpfm/sock-js
    6. ingress:
    7. enabled: true
    8. host: hzero.example.choerodon.io
  • 部署服务

  1. helm upgrade --install choerodon-front-hzero c7n/choerodon-front-hzero \
  2. -f choerodon-front-hzero.yaml \
  3. --version 0.24.0 \
  4. --namespace c7n-system
  • 验证部署

    • 验证命令

      1. curl $(kubectl get svc choerodon-front-hzero -o jsonpath="{.spec.clusterIP}" -n c7n-system):80
    • 出现以下类似信息即为成功部署

      1. !doctype html><html lang="zh"><head><meta charset="utf-8"/><title>HZERO</title><link rel="shortcut icon" href="/manifest.json"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"/><meta name="theme-color" content="#000000"/><meta name="format-detection" content="telephone=no"/>...

升级choerodon-front

  • 升级服务

    1. helm upgrade choerodon-front c7n/choerodon-front \
    2. -f <(helm get values -n c7n-system choerodon-front) \
    3. --version 0.24.0 \
    4. --namespace c7n-system
  • 验证升级

    • 验证命令
    1. curl $(kubectl get svc choerodon-front -o jsonpath="{.spec.clusterIP}" -n c7n-system):8080
    • 出现以下类似信息即为成功升级
    1. <!DOCTYPE html><html><head><meta http-equiv="Content-type"content="text/html; charset=utf-8"><title>Choerodon</title><link rel="shortcut icon"href="favicon.ico"></head><body><div id="app"></div><script type="text/javascript"src="app/vendor_19e4b950.js"></script><script type="text/javascript"src="app/main_19e4b950.js"></script></body></html>

默认登录用户

升级完成后,默认的管理员用户名密码为 [admin/Admin@123!],可使用此用户密码登陆系统。安装完成后建议立即在个人中心修改默认密码。

刷新组织角色权限

使用admin用户token,调用https://api.example.com./iam/choerodon/v1/permission/role_permission_async,PUT方式。

更改Minio Bucket权限

如果0.22升级时已经更改,可忽略该操作。

对于之前0.22版本之前创建的文件夹,需要手动在minio界面更改权限为( * Read and Write)。 iamge