活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      应用服务网格

      应用服务网格

        • 产品动态与公告
        • 产品简介
        • 产品定义
        • 产品优势
        • 应用场景
        • 产品规格
        • 名词解释
        • 使用限制
        • 购买指南
        • 计费说明
        • 订购与退订
        • 欠费与续费说明
        • 快速入门
        • 入门概述
        • 创建应用服务网格实例
        • 部署bookinfo应用到CSM实例
        • 通过云原生网关访问bookinfo应用
        • 使用istio资源实现版本流量路由
        • 用户指南
        • 实例权限及标签管理
        • 网格管理
        • 网格列表
        • 全局Service管理
        • 全局命名空间
        • 网格状态
        • 网格诊断
        • 升级管理
        • 金丝雀升级
        • 访问网格CRD资源
        • sidecar管理
        • 安装Sidecar代理
        • 网格CNI插件
        • 集群与工作负载
        • 服务条目管理
        • 容器集群管理
        • Kubernetes服务管理
        • 服务列表
        • 服务基础信息
        • 服务版本管理
        • 服务访问方式
        • 服务流量管理
        • 流量管理中心
        • 虚拟服务
        • 目标规则
        • 本地限流
        • 流量标签
        • 全链路灰度
        • 概述
        • 全链路灰度实现原理
        • 泳道组及泳道管理
        • 全链路灰度功能体验
        • 路由级熔断
        • 全局限流
        • 高可用能力构建
        • 多协议治理
        • gRPC协议治理
        • Dubbo协议治理
        • 扩展中心
        • 服务网格数据面扩展概述
        • EnvoyFilter CRD说明
        • EnvoyFilterTemplate和EnvoyFilterTemplateBinding CRD说明
        • 使用自定义EnvoyFilter
        • 使用插件市场扩展网格能力
        • 内置插件说明
        • 调整代理请求和响应缓存大小插件
        • 调整HTTP请求头尺寸限制插件
        • 设置允许升级的协议连接插件
        • 设置http2的初始流量窗口大小插件
        • 解析JWT Payload的字段到请求头插件
        • 自定义错误页面插件
        • 自定义x-request-id操作插件
        • 直接响应插件
        • 增加HTTP响应头插件
        • 在访问日志中打印HTTP body插件
        • 在响应头中增加请求头信息插件
        • 保留请求与响应头部大小写插件
        • 网格安全中心
        • 网格安全概述
        • 工作负载身份
        • 对等身份认证
        • 请求身份认证
        • 授权策略
        • 自定义授权服务
        • CSM安全策略
        • CSM安全策略概述
        • OIDC单点登录
        • JWT认证策略
        • 黑白名单策略
        • 自定义授权服务策略
        • 授权控制示例
        • 自定义授权服务
        • 使用JWT认证授权
        • 使用OPA策略引擎实现访问控制
        • OPA策略
        • API审计
        • 可观测管理中心
        • 日志中心
        • 服务监控
        • 链路追踪
        • 网格优化中心
        • Sidecar资源
        • 自适应配置分发
        • 功能介绍及使用
        • 自适应配置分发优化效果
        • 服务发现范围
        • 数据面ebpf加速
        • 网关
        • 入口网关
        • 出口网关
        • 网关规则
        • 证书管理
        • API参考
        • API使用说明
        • 最佳实践
        • 应用服务网格配置建议
        • 使用云原生网关和应用服务网格实现全链路灰度发布
        • 应用服务网格对接Nacos注册中心
        • 使用SDK操作istio资源
        • 常见问题
        • 计费类
        • 操作类
        • 应用服务网格CSM控制面部署在哪里?
        • 应用服务网格CSM开通失败,提示xx资源已存在
        • 如何删除云容器引擎集群上处于Terminating状态的命名空间?
        • 为什么加入网格的pod停止时会有被调或者主调失败的情况?
        • 为什么目标规则配置不生效?
        • 多集群的命名空间是什么关系?
        • 服务网格对于Service的定义是否有要求?
        • sidecar内存持续升高有什么解决办法?
        • 为什么开通服务网格之后,网格控制面组件启动失败?
        • 为什么注入了sidecar,但是流量拦截没生效?
        • 如何开启服务网格IPv6功能?
        • 相关协议
        • 天翼云应用服务网格服务协议
        • 天翼云应用服务网格服务等级协议
          无相关产品

          本页目录

          帮助中心应用服务网格用户指南流量管理中心流量标签
          流量标签
          更新时间 2024-09-09 19:36:51
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2024-09-09 19:36:51
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          本章节介绍流量标签功能

          概述

          在应用服务网格中可以通过自定义的资源(TrafficLabel)实现对请求流量的打标,进而可以基于流量的标签进行单服务及全链路的路由、策略控制等。本文介绍流量打标原理,流量标签管理,流量标签配置示例及详细说明。

          流量打标原理

          流量打标就是要给流量打上标签,进而可以对流量进行路由等策略配置。当前CSM服务网格支持从请求头部或者工作负载本身的标签中取值作为流量的标签;同时还支持在调用链中透传流量标签信息,用于实现全链路的标签路由策略。

          流量标签配置实例

          下面是一个流量标签的配置示例,定义了一个流量标签userdefinelabel1,会取当前pod的CSM_TRAFFIC_TAG标签值作为userdefinelabel1的值添加到请求头部里面;同时还定义了另外一个userdefinelabel2标签,该标签定义优先从请求的x-traffic-tag头部取值,同时使用Envoy生成的x-request-id作为上下文key,在整个调用链路中透传该标签;如果打标失败了,会按照valueFrom数组中下一个定义继续取值,取到第一个非空值时停止。

          apiVersion: istio.ctyun.cn/v1beta1
          kind: TrafficLabel
          metadata:
            name: traffic-label-example
            namespace: demo
          spec:
            rule:
              labels:
              - name: userdefinelabel1
                valueFrom:
                - $getLabel(CSM_TRAFFIC_TAG)
              - name: userdefinelabel2
                valueFrom:
                - $getInboundRequestHeaderWithContext (x-traffic-tag, x-request-id)
                - $getLabel(CSM_TRAFFIC_TAG)
          

          当前CSM服务网格支持的流量打标方式有以下几种:

          函数 说明 示例
          getInboundRequestHeader(headerName) 从Inbound方向的请求header中取值;只应用于istio ingress网关。 请求headerName:v1
          打标后: userdefinelabel: v1
          getInboundRequestHeaderWithContext(headerName, contextKey) 从Inbound方向的请求header取值,同时从contextKey头部取值作为流量标签在上下文透传的key;
          该头部可以是用于实现链路追踪上下文透传的头部,比如x-request-id、x-b3-traceid或者您的业务中使用的自定义头部;
          该函数只适用于sidecar。
          请求: contextID: 1234abcd headerName: v1
          打标后: contextID: 1234abcd headerName: v1 userdefinelabel: v1
          getOutboundRequestHeader(headerName) 从outbound方向的请求头部取值,只适用于sidecar。 请求headerName:v1
          打标后: userdefinelabel: v1
          getLabel(labelName) 从pod的标签取值;适用于istio ingress网关和sidecar。 Pod标签: labelName: v1
          打标后: userdefinelabel: v1

          流量标签管理

          创建流量标签

          1. 通过服务网格控制台 流量管理中心 -> 流量标签菜单进入流量标签管理页面。
          2. 选择命名空间,选择左上角使用YAML创建。
          3. 基于模板编辑流量标签定义,保存即可。

          修改流量标签

          1. 通过服务网格控制台 流量管理中心 -> 流量标签菜单进入流量标签管理页面。
          2. 选择命名空间,列表页会展示当前命名空间下定义的TrafficLabel对象。
          3. 选择操作栏的编辑,修改定义,保存即可。

          删除流量标签

          1. 通过服务网格控制台 流量管理中心 -> 流量标签菜单进入流量标签管理页面。
          2. 选择命名空间,列表页会展示当前命名空间下定义的TrafficLabel对象。
          3. 选择操作栏的删除,即可删除已定义的TrafficLabel对象。

          TrafficLabel配置说明

          字段 类型 必选 说明
          workload_selector WorkloadSelector No 工作负载选择器,选择当前流量标签生效的工作负载。
          rule TrafficLabelRule No 流量标签定义。

          TrafficLabelRule

          流量标签的详细定义

          字段 类型 必选 说明
          labels Label No 流量标签定义。

          Label

          字段 类型 必选 说明
          name string No 流量标签名称,该标签会被添加到请求头部。
          value_from string No 流量标签取值,value_from为数组,按照顺序取到的第一个非空值作为该标签的取值。

          流量标签使用示例

          准备工作:首先部署测试应用app1和app2,调用关系为ingress -> app1-> app2。

          apiVersion: v1
          kind: Service
          metadata:
            name: app1
            labels:
              app: app1
              service: app1
          spec:
            ports:
            - port: 8000
              name: http
            selector:
              app: app1
          
          apiVersion: apps/v1
          kind: Deployment
          metadata:
            name: app1-base
            namespace: demo
            labels:
              app: app1
              CSM_TRAFFIC_TAG: base
          spec:
            replicas: 1
            selector:
              matchLabels:
                app: app1
                name: app1
                CSM_TRAFFIC_TAG: base
            template:
              metadata:
                labels:
                  app: app1
                  name: app1
                  source: CCSE
                  CSM_TRAFFIC_TAG: base
              spec:
                containers:
                - name: default
                  image: registry-vpc-crs-huadong1.cnsp-internal.ctyun.cn/library/trace-demo:v1.0.0
                  imagePullPolicy: IfNotPresent
                  env:
                  - name: version
                    value: base
                  - name: app
                    value: app1
                  - name: upstream_url
                    value: "http://app2:8000/"
                  ports:
                  - containerPort: 8000
          
          

          部署Gateway和VirtualService资源

          apiVersion: networking.istio.io/v1beta1
          kind: Gateway
          metadata:
            name: trace-demo-gateway
          spec:
            selector:
              istio: ingressgateway
            servers:
              - hosts:
                  - "*"
                port:
                  name: http
                  number: 80
                  protocol: HTTP
          ---
          apiVersion: networking.istio.io/v1beta1
          kind: VirtualService
          metadata:
            name: vs-gateway-app1
          spec:
            gateways:
            - trace-demo-gateway
            hosts:
              - "*"
            http:
            - route:
                - destination:
                    host: app1
          

          Ingress gateway流量打标

          Ingress网关侧对流量打标之后我们看通过查看上游的app1服务收到的请求头部确认流量打标是否成功,首先定义流量标签策略:

          apiVersion: istio.ctyun.cn/v1beta1
          kind: TrafficLabel
          metadata:
            name: traffic-label-example
            namespace: istio-system
          spec:
            workloadSelector:
              labels:
                istio: ingressgateway
            rule:
              labels:
              - name: label-from-header
                valueFrom:
                - $getInboundRequestHeader(app-version-tag)
              - name: label-from-pod
                valueFrom:
                - $getLabel(app)
          

          上面的配置在Ingress网关处定义了两个标签,label-from-header会从app-version-tag请求头部取值打标,label-from-pod从pod的app标签取值打标。我们通过Ingress网关访问app1服务,并带上app-version-tag: ccccc,查看app1的日志如下:

          26.png

          sidear流量打标

          首先定义sidecar流量打标规则,label1从app-version-tag头部取值,同时使用trace-ctx-id字段做链路传递;label2去outbound方向的trace-ctx-id字段;label3取应用的app标签值:

          apiVersion: istio.ctyun.cn/v1beta1
          kind: TrafficLabel
          metadata:
            name: traffic-label-example
            namespace: default
          spec:
            rule:
              labels:
              - name: label1
                valueFrom:
                - $getInboundRequestHeaderWithContext(app-version-tag, trace-ctx-id)
              - name: label2
                valueFrom:
                - $getOutboundRequestHeader(trace-ctx-id)
              - name: label3
                valueFrom:
                - $getLabel(app)
          
          

          请求Ingress网关带上两个头部'app-version-tag:‘ccccc' 和 'trace-ctx-id: 1234',查看app2的日志,可以看到预期中的流量标签。

          27.png

          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  本地限流
          下一篇 :  全链路灰度
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明