• 微服务开发框架升级
    • 添加Choerodon Chart仓库
    • 升级register server
    • 升级config server
    • 升级manager service
    • 升级iam service
    • 升级api gateway
    • 升级gateway helper
    • 升级oauth server
    • 升级event store service
    • 升级file service
    • 升级choerodon iam front
  • DevOps服务升级
    • 升级devops service
    • 升级gitlab service
  • 敏捷管理升级
  • 测试管理部署
  • 知识管理部署
  • 升级整合前端
    • 升级choerodon front

    微服务开发框架升级

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

    添加Choerodon Chart仓库

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

    升级register server

    • 升级服务
    1. helm upgrade register-server c7n/go-register-server \
    2. -f <(helm get values register-server) \
    3. --version=0.8.0
    • 验证升级

      • 验证命令
    1. curl $(kubectl get svc register-server -o jsonpath="{.spec.clusterIP}" -n choerodon-devops-prod):8000/eureka/apps
    • 出现以下类似信息即为成功升级
    1. {
    2. "name": "go-register-server",
    3. "instance": [
    4. {
    5. "instanceId": "192.168.3.19:go-register-server:8000",
    6. "hostName": "192.168.3.19",
    7. "app": "go-register-server",
    8. "ipAddr": "192.168.3.19",
    9. "status": "UP",
    10. "overriddenstatus": "UNKNOWN",
    11. "port": {
    12. "@enabled": true,
    13. "$": 8000
    14. },
    15. "securePort": {
    16. "@enabled": false,
    17. "$": 443
    18. },
    19. "countryId": 8,
    20. "dataCenterInfo": {
    21. "name": "MyOwn",
    22. "@class": "com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo"
    23. },
    24. "leaseInfo": {
    25. "renewalIntervalInSecs": 10,
    26. "durationInSecs": 90,
    27. "registrationTimestamp": 1528201698,
    28. "lastRenewalTimestamp": 1528201698,
    29. "evictionTimestamp": 0,
    30. "serviceUpTimestamp": 1528201698
    31. },
    32. "metadata": {
    33. "VERSION": "0.8.0"
    34. },
    35. "homePageUrl": "http://192.168.3.19:8000/",
    36. "statusPageUrl": "http://192.168.3.19:8000/info",
    37. "healthCheckUrl": "http://192.168.3.19:8000/health",
    38. "vipAddress": "go-register-server",
    39. "secureVipAddress": "go-register-server",
    40. "isCoordinatingDiscoveryServer": true,
    41. "lastUpdatedTimestamp": 1528201698,
    42. "lastDirtyTimestamp": 1528201698,
    43. "actionType": "ADDED"
    44. }
    45. ]
    46. }

    升级config server

    • 升级服务
    1. helm upgrade config-server c7n/config-server \
    2. -f <(helm get values config-server) \
    3. --version=0.8.0
    • 验证升级

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

    升级manager service

    • 升级服务
    1. helm upgrade manager-service c7n/manager-service \
    2. -f <(helm get values manager-service) \
    3. --version=0.8.1
    • 验证升级

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

    升级iam service

    • 升级服务
    1. helm upgrade iam-service c7n/iam-service \
    2. -f <(helm get values iam-service) \
    3. --version=0.8.0
    • 验证升级

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

    升级api gateway

    • 升级服务
    1. helm upgrade api-gateway c7n/api-gateway \
    2. -f <(helm get values api-gateway) \
    3. --version=0.8.0
    • 验证升级

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

    升级gateway helper

    • 升级服务
    1. helm upgrade gateway-helper c7n/gateway-helper \
    2. -f <(helm get values gateway-helper) \
    3. --version=0.8.0
    • 验证升级

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

    升级oauth server

    • 升级服务
    1. helm upgrade oauth-server c7n/oauth-server \
    2. -f <(helm get values oauth-server) \
    3. --version=0.8.1
    • 验证升级

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

    升级event store service

    • 升级服务
    1. helm upgrade event-store-service c7n/event-store-service \
    2. -f <(helm get values event-store-service) \
    3. --version=0.8.0
    • 验证升级

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

    升级file service

    • 升级服务
    1. helm upgrade file-service c7n/file-service \
    2. -f <(helm get values file-service) \
    3. --version=0.8.0
    • 验证升级

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

    升级choerodon iam front

    • 升级服务
    1. helm upgrade choerodon-front-iam c7n/choerodon-front-iam \
    2. -f <(helm get values choerodon-front-iam) \
    3. --version=0.8.0
    • 验证升级

      • 验证命令
    1. curl $(kubectl get svc choerodon-front-iam -o jsonpath="{.spec.clusterIP}" -n choerodon-devops-prod)
    • 出现以下类似信息即为成功升级
    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>

    DevOps服务升级

    升级devops service

    Devops Service为了同步Gitlab相关数据,使用了Gitlab WebHook相关功能,请在Gitlab管理员界面 Settings 菜单中打开 Outbound requests 选项。如果你的Gitlab版本为10.2.8请忽略此设置,直接升级Devops Service。

    从0.7升级到0.8  - 图1

    • 升级服务
    1. helm upgrade devops-service c7n/devops-service \
    2. -f <(helm get values devops-service) \
    3. --set env.open.AGENT_VERSION="0.8.0" \
    4. --set env.open.TEMPLATE_VERSION_MICROSERVICE="0.8.0" \
    5. --set env.open.TEMPLATE_VERSION_MICROSERVICEFRONT="0.8.0" \
    6. --set env.open.TEMPLATE_VERSION_JAVALIB="0.8.0" \
    7. --set env.open.SECURITY_IGNORED="/ci\,/webhook\,/v2/api-docs\,/agent/**\,/ws/**" \
    8. --set env.open.SERVICES_GATEWAY_URL=http://api.example.choerodon.io \
    9. --version=0.8.4
    • 更新Choerodon-agent

      升级到0.8.0后,旧版本的choerdon-agent将无法使用,请打开部署流水线->环境流水线->选择环境,点击激活按钮,复制命令到相应的集群中重新激活环境。

    • 验证升级

      • 验证命令
    1. curl -s $(kubectl get po -n choerodon-devops-prod -l choerodon.io/release=devops-service -o jsonpath="{.items[0].status.podIP}"):8061/health | jq -r .status
    • 出现以下类似信息即为成功升级
    1. UP
    升级之后,请用平台admin用户去调用swagger-ui里面devops-service平滑升级接口,用于给0.8版本以前的应用增加webhook,扫回分支。 接口地址:http://api.example.choerodon.io/manager/swagger-ui.htmldevops-service:devosp-check-controler:平滑升级接口: project_id: 1 version: 填写0.8调用完之后可以查看devops-service的devops-check-log表里面的log字段查看平滑升级信息

    升级gitlab service

    • 升级服务
    1. helm upgrade gitlab-service c7n/gitlab-service \
    2. -f <(helm get values gitlab-service) \
    3. --version=0.8.0
    • 验证升级

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

    敏捷管理升级

    为保持Choerodon平台组件版本一致性,敏捷管理服务跳过0.7版本号,与其他服务组件版本号保持一致。
    • 升级服务
    1. helm upgrade agile-service c7n/agile-service \
    2. -f <(helm get values agile-service) \
    3. --version=0.8.3
    • 验证升级

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

    测试管理部署

    从Choerodon 0.8版本起添加测试管理支持,你可以按照测试管理部署文档进行部署。

    知识管理部署

    从Choerodon 0.8版本起添加知识管理支持,你可以按照知识管理部署文档进行部署。

    升级整合前端

    升级choerodon front

    • 升级服务

    前端添加了PRO_FILE_SERVER用于指定文件存储服务Minio的地址,注意替换为真实的地址

    1. helm upgrade choerodon-front c7n/choerodon-front \
    2. -f <(helm get values choerodon-front) \
    3. --set env.open.PRO_FILE_SERVER="http://minio.example.choerodon.io" \
    4. --version=0.8.4
    • 验证升级

      • 验证命令
    1. curl $(kubectl get svc choerodon-front -o jsonpath="{.spec.clusterIP}" -n choerodon-devops-prod)
    • 出现以下类似信息即为成功升级
    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>
    • 在访问搭建好的Choerodon的api,api.example.choerodon.io/manager/swagger-ui.html,选择iam_service -> client-controller -> 创建client

      • 认证请使用用户名:admin,密码:admin
      • 提交以下数据,注意正式搭建时请替换以下值为真实值
    1. {
    2. "accessTokenValidity": 60,
    3. "additionalInformation": "",
    4. "authorizedGrantTypes": "implicit,client_credentials,authorization_code,refresh_token",
    5. "autoApprove": "default",
    6. "name": "choerodon",
    7. "objectVersionNumber": 0,
    8. "organizationId": 1,
    9. "refreshTokenValidity": 60,
    10. "resourceIds": "default",
    11. "scope": "default",
    12. "secret": "secret",
    13. "webServerRedirectUri": "http://choerodon.example.choerodon.io"
    14. }