更新时间:2024-08-16 GMT+08:00
分享

基于CCE场景

前提条件

  • 已创建CCE集群,详情请参考创建CCE集群
  • 已创建未开启安全认证的ServiceComb引擎实例,详情请参考创建ServiceComb引擎
  • CCE与ServiceComb引擎处于相同VPC下。
  • Sermant Injector版本要求1.0.11及以上,Sermant Agent镜像版本要求1.0.9及以上。

操作步骤

  1. 为CCE集群安装sermant-injector,请参考CCE部署场景接入指南
  2. 为工作负载(deployment)中的微服务配置版本号或标签。

    在下图所示位置为工作负载(deployment)配置环境变量,配置环境变量后,应用注册时,会使用该环境变量进行注册。

    apiVersion: app/v1
    kind: Deployment
    metadata:
      name: dubbo-providerB
      labels:
        app: dubbo-providerB
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: dubbo-providerB
      template:
        metadata:
          labels:
            app: dubbo-providerB
            sermant-injection: enabled
        spec:
          containers:
            - name: dubbo-providerB
              image: dubbo-providerB:1.0.0
              imagePullPolicy: IfNotPresent
              env:
                - name: "SERVICE_META_VERSION"
                  value: "2.0.0"
    	    - name: "SERVICE_META_PARAMETERS"
                  value: "group:gray"
              ports:
                - containerPort: 8004
          imagePullSecrets:
            - name: default-secret

    其中:

    • 键SERVICE_META_VERSION,值为服务注册的版本号(如a.b.c的格式,其中a、b、c均为数字),标签应用需要修改为不同于正常应用的版本号。
    • 键SERVICE_META_PARAMETERS,值为服务注册时的自定义标签(形如tag1:value1,tag2:value2),即标签名与标签值以英文冒号分隔,多个标签之间以英文逗号分隔。

      当Sermant Agent为1.0.0及以下版本时,使用键为SERVICECOMB_INSTANCE_PROPS。

    • 一般,如果用版本号进行路由,则只需配置SERVICE_META_VERSION,如果用自定义标签进行路由,则只需配置SERVICE_META_PARAMETERS。

  3. 为工作负载(deployment)打上标签并重启相关服务

    在下图所示位置为工作负载(deployment)打上标签sermant-injection: enabled。打上标签后,sermant-injector会在Pod重启时自动挂载Sermant Agent,从而通过Sermant Agent注册到CSE上。

相关文档