Istio 实战

文章目录

  • Istio流量管理分享会
    • 【1】什么是istio?
    • 【2】istio 可以干什么?
    • 【3】业务中的痛点?
    • 【4】istio 高级流量管理
      • 5.1 istio 组件介绍与原理
      • 5.2 sidercar何时注入?如何控制是否注入?
      • 5.3 查看sidecar 容器插入的容器中的iptables
      • Destination Rule
      • Virtual Service
      • Gateway
      • service entry
    • 【5】istio案例
      • 5.0 istio部署与安装
      • 5.1 业务背景介绍
      • 5.2 部署服务
    • 【6】集成kiali 和jaeger
    • 【7】集成prometheus 和grafana
    • 【8】金丝雀发布
      • 8.1 精细化流量管理
      • 8.2 自动化灰度发布
    • 【9】流量治理
    • 【10】双刃剑
    • 【11】参考

Istio流量管理分享会

Start Date: October 31, 2023
End Date: October 27, 2023
Tags: Life, Work
Status: Not started

技术分享会

【1】什么是istio?

  • Istio是一个用于服务治理的开放平台。
  • Istio是一个Service Mesh形态的用于服务治理的开放平台。
  • Istio是一个与Kubernetes紧密结合的适用于云原生场景的Service Mesh形态的用于服务治理的开放平台。

只要服务间有访问,如果需要对服务间的访问进行管理,就可以使用Istio。

CNCF 社区2023 年6月毕业的一个项目。

  • 流行度
  • 稳定性

什么是南北流量 ?东西流量?

南北: ingress → svc → ep → po

东西: svc → svc

流量被集群的coreDNS解析之后,istio 就接管流量了。istio 会动态发现svc 、 pod 和ep。

Istio 实战_第1张图片

【2】istio 可以干什么?

  • 自动通过服务发现获取服务实例列表,并根据负载均衡策略选择一个服务实例
  • 对服务双方启用双向认证和通道加密 mtls
  • 如果某个服务实例连续访问出错,则可以将该实例隔离一段时间,以提高访问质量
  • 设置最大连接数、最大请求数、访问超时等对服务进行保护
  • 限流
  • 对请求进行重试
  • 修改请求中的内容
  • 将一定特征的服务重定向
  • 灰度发布
  • 自动记录服务访问信息
  • 记录调用链,进行分布式追踪
  • 根据访问数据形成完整的应用访问拓扑
  • ……

所有这些功能,都不需要用户修改代码,用户只需在Istio的控制面配置即可,并且动态生效

对业务代码完全没有侵入性

【3】业务中的痛点?

  • 微服务调用链路内部是一个黑盒,排查问题主要靠猜? kiali workload graph
  • 如何让网格内的服务调用链路清晰呈现? 不同版本服务之间调用成功率、时间、请求内容大小? kiali version graph
  • 线上服务cpu 100% 如何快速定位是哪个服务?jaeger 链路追踪分析
  • 发布版本提心吊胆( 研发 + 运维 + 产品) ?金丝雀

【4】istio 高级流量管理

5.1 istio 组件介绍与原理

istio安装后,有三个组件. 其中istio-ingress 是入口网关,和ingress 功能类似。

istiod 是istio的控制面.

envory作为sidercar 容器跑在业务pod中,是数据面。在pod的镜像中叫istio-proxy

[root@k8s-worker-node1 istio-1.19.3]# kubectl -n istio-system get deploy
NAME                   READY   UP-TO-DATE   AVAILABLE   AGE
istio-egressgateway    1/1     1            1           23h
istio-ingressgateway   1/1     1            1           23h
istiod                 1/1     1            1           23h

k get po
NAME                                READY   STATUS    RESTARTS   AGE
advertisement-v1-6b65cd7c78-wtt4n   2/2     Running   0          4h11m
forecast-v1-58ffc96649-bsxxr        2/2     Running   0          4h11m
frontend-v1-58896bbfdd-x66jv        2/2     Running   0          4h11m

你可能感兴趣的:(#,k8s,istio,云原生)