前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Istio控制平台和数据平面(二)

Istio控制平台和数据平面(二)

原创
作者头像
玖叁叁
发布2023-05-05 10:24:39
2590
发布2023-05-05 10:24:39
举报
文章被收录于专栏:玖叁叁

Istio数据平面

Istio数据平面由一组智能代理组成,这些代理被称为Envoy。Envoy代理位于每个服务容器旁边,并通过sidecar模式与它们一起部署。每个代理负责拦截进出服务容器的所有流量,并执行Istio控制平面配置的策略。

代理

Istio代理是Istio数据平面中的核心组件。每个服务实例都有一个与之关联的代理,它负责路由和过滤该实例的流量,并与控制平面中的Pilot和Mixer交互以实现策略和配置。

Sidecar

Istio数据平面使用sidecar模式将Istio代理部署到每个服务实例旁边。这意味着代理与服务实例一起部署,并且代理和实例可以共享网络和存储资源。这种部署模式可以轻松地将Istio网格添加到现有的应用程序中,而无需修改现有的应用程序代码。

遥测

Istio代理还负责收集遥测数据,如请求计数、延迟和错误率等指标,并将这些数据发送到Mixer组件。Mixer可以使用这些数据来进行流量管理和策略执行。

示例

下面是一个使用Istio数据平面的示例:

代码语言:javascript
复制
apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp
spec:
  replicas: 3
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      containers:
      - name: myapp
        image: myapp:latest
        ports:
        - containerPort: 8080
      - name: istio-proxy
        image: istio/proxyv2:latest
        args:
        - proxy
        - sidecar
        - --configPath
        - /etc/istio/proxy
        - --binaryPath
        - /usr/local/bin/envoy
        volumeMounts:
        - name: istio-config
          mountPath: /etc/istio/proxy
      volumes:
      - name: istio-config
        configMap:
          name: istio-config

这个例子定义了一个名为“myapp”的Kubernetes Deployment,并使用Istio数据平面将代理部署到每个Pod中。代理将拦截进出Pod的所有流量,并与Istio控制平面中的Pilot和Mixer交互,以实现流量管理和策略执行。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Istio数据平面
    • 代理
      • Sidecar
        • 遥测
          • 示例
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档