Choerodon猪齿鱼从v0.20升级到v0.21

纵然是瞬间 提交于 2020-03-16 17:25:37

某厂面试归来,发现自己落伍了!>>>

Choerodon 开源多云应用敏捷全链路技术平台,是基于开源技术Kubernetes,Istio,knative,Gitlab,Spring Cloud来实现本地和云端环境的集成,实现企业多云/混合云应用环境的一致性。平台通过提供精益敏捷、持续交付、容器环境、微服务、DevOps等能力来帮助组织团队来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。

微服务开发框架升级

<blockquote class="warning">

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

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

</blockquote>

添加Choerodon Chart仓库


helm repo add c7n [https://openchart.choerodon.com.cn/choerodon/c7n/](https://openchart.choerodon.com.cn/choerodon/c7n/)

helm repo update

升级 register server

  • 升级服务

    
    helm upgrade register-server c7n/go-register-server \
    
        -f <(helm get values register-server) \
    
        --version 0.21.0
    
    
  • 验证升级

    • 验证命令

      
      curl $(kubectl get svc register-server -o jsonpath="{.spec.clusterIP}" -n c7n-system):8000/eureka/apps
      
      
    • 出现以下类似信息即为成功升级

      
      {
      
          "name": "go-register-server",
      
          "instance": [
      
          {
      
          "instanceId": "10.233.64.95:go-register-server:8000",
      
          "hostName": "10.233.64.95",
      
          "app": "go-register-server",
      
          "ipAddr": "10.233.64.95",
      
          "status": "UP",
      
          ...
      
          "metadata": {
      
              "VERSION": "0.21.0"
      
          },
      
          }
      
          ]
      
      }
      
      

升级 base service

  • 升级服务

    
    helm upgrade base-service c7n/base-service \
    
        -f <(helm get values base-service) \
    
        --set preJob.preInitDB.datasource.exclusion='iam_user.hash_password\,oauth_client.web_server_redirect_uri\,oauth_ldap.server_address\,oauth_ldap.object_class\,iam_role.is_enabled\,fd_organization.name' \
    
        --version 0.21.4
    
    
  • 验证部署

    • 验证命令

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

      
      UP
      
      

升级 manager service

  • 升级服务

    
    helm upgrade manager-service c7n/manager-service \
    
        -f <(helm get values manager-service) \
    
        --version 0.21.0
    
    
  • 验证升级

    • 验证命令

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

      
      UP
      
      

升级 asgard service

  • 升级服务

    
    helm upgrade asgard-service c7n/asgard-service \
    
        -f <(helm get values asgard-service) \
    
        --version 0.21.1
    
    
  • 验证升级

    • 验证命令

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

      
      UP
      
      

升级 notify service

  • 升级服务

    
    helm upgrade notify-service c7n/notify-service \
    
        -f <(helm get values notify-service) \
    
        --version 0.21.0
    
    
  • 验证部署

    • 验证命令

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

      
      UP
      
      

升级api gateway

  • 升级服务

    
    helm upgrade api-gateway c7n/api-gateway \
    
        -f <(helm get values api-gateway) \
    
        --set preJob.preConfig.enabled=true \
    
        --set preJob.preConfig.updatePolicy=override \
    
        --version 0.21.0
    
    
  • 验证升级

    • 验证命令

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

      
      UP
      
      

升级oauth server

  • 升级服务

    
    helm upgrade oauth-server c7n/oauth-server \
    
        -f <(helm get values oauth-server) \
    
        --set env.environment.CHOERODON_GATEWAY_URL=http://api.example.choerodon.io \
    
        --set CHOERODON_RESET_PASSWORD_RESETURLEXPIREMINUTES=30 \
    
        --version 0.21.1
    
    
  • 验证升级

    • 验证命令

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

      
      UP
      
      

升级file service

  • 升级服务

    
    helm upgrade file-service c7n/file-service \
    
        -f <(helm get values file-service) \
    
        --version 0.21.0
    
    
  • 验证升级

  • 验证命令

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

    
    UP
    
    

敏捷管理升级

<blockquote class="warning">

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

</blockquote>

升级 agile service

  • 升级服务

    
    helm upgrade agile-service c7n/agile-service \
    
        -f <(helm get values agile-service) \
    
        --version 0.21.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
      
      
    • 出现以下类似信息即为成功升级

      
      UP
      
      

升级 test manager service

  • 升级服务

    
    helm upgrade test-manager-service c7n/test-manager-service \
    
        -f <(helm get values test-manager-service) \
    
        --version 0.21.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
      
      
    • 出现以下类似信息即为成功部署

      
      UP
      
      

升级 knowledgebase service

<blockquote class="warning">

请再次确认数据库已备份完成,再进行 knowledgebase service 的部署工作!!!

</blockquote>

  • 升级服务

    • 修改preConfig的application.yaml配置更新策略

      
      helm upgrade knowledgebase-service c7n/knowledgebase-service \
      
          -f <(helm get values knowledgebase-service) \
      
          --set preJob.preConfig.updatePolicy=override \
      
          --version 0.21.0
      
      
  • 注意: 请跟踪 knowledgebase service pod 的日志,直至出现以下日志

    
    ==========================>>>>>>>> Data Fix Succeed!!! FINISHED!!! <<<<<<<<========================
    
    
  • 验证部署

    • 验证命令

      
      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
      
      
    • 出现以下类似信息即为成功部署

      
      UP
      
      

DevOps服务升级

升级gitlab service

  • 升级gitlab-service

    
    helm upgrade gitlab-service c7n/gitlab-service \
    
        --set preJob.preConfig.enabled=true \
    
        --set preJob.preConfig.updatePolicy=override \
    
        -f <(helm get values gitlab-service) \
    
        --version 0.21.0
    
    
  • 验证升级

    • 验证命令

      
      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
      
      
    • 出现以下类似信息即为成功升级

      
      UP
      
      

升级workflow service

  • 升级workflow-service

    
    helm upgrade workflow-service c7n/workflow-service \
    
        --set preJob.preConfig.enabled=true \
    
        --set preJob.preConfig.updatePolicy=override \
    
        -f <(helm get values workflow-service) \
    
        --version 0.21.0
    
    
  • 验证升级

    • 验证命令

      
      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
      
      
    • 出现以下类似信息即为成功升级

      
      UP
      
      

升级devops service

  • 升级devops-service:

    
    helm upgrade devops-service c7n/devops-service \
    
        --set env.open.AGENT_VERSION="0.21.1" \
    
        --set preJob.preConfig.enabled=true \
    
        --set preJob.preConfig.updatePolicy=override \
    
        -f <(helm get values devops-service) \
    
        --version 0.21.0
    
    
    • 验证命令

      
      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
      
      
    • 出现以下类似信息即为成功升级

      
      UP
      
      
    • 数据迁移部分,请执行以下命令查看devops-service数据迁移的日志。见到"修复数据完成"字样则完成了数据迁移,否则出现异常则在总前端升级之后,去平台层手动调用接口重试数据迁移(请使用管理员用户登陆平台,在管理界面的平台服务->平台接口->devops-service->devops-check-controller里面调用数据修复接口/v1/upgrade,参数传入为0.21.0)。

      
      kubectl logs -n c7n-system $(kubectl get po -n c7n-system -l choerodon.io/release=devops-service -o jsonpath="{.items[0].metadata.name}") -f | grep Check
      
      

整合前端升级

  • 升级服务

    
    helm upgrade choerodon-front c7n/choerodon-front \
    
        -f <(helm get values choerodon-front) \
    
        --version 0.21.0
    
    
  • 验证升级

    • 验证命令

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

      
      <!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>
      
      

社区参与

以上就是Choerodon猪齿鱼从v0.20升级到v0.21的全部内容,更加详细的内容,请参阅Release Notes官网手册

欢迎各位朋友通过 Choerodon 的GitHub猪齿鱼社区进行反馈与贡献,帮助 Choerodon 猪齿鱼不断成长。Choerodon 会持续优化,敬请期待。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!