原文链接:Istio 1.3 发布,HTTP 遥测不再需要 Mixer

Istio 是 Google、IBM 和 Lyft 联合开源的服务网格(Service Mesh)框架,旨在解决大量微服务的发现、连接、管理、监控以及安全等问题。 Istio 对应用是透明的,不需要改动任何服务代码就可以实现透明的服务治理。1.3 版本已经发布,距离上一个重要版本 1.2 发布已过去两个多月,我们来看看有哪些修改内容。

1. 智能协议检测

在之前的版本中,如果要使用 Istio 的路由功能,Service 的端口命名必须使用特殊的命名格式。如果用户不遵循该命名规则,就无法使用路由功能。从 1.3 版本开始,即使没有按照规则命名 Service 的端口,Istio 也会自动识别出站流量的协议为 HTTPTCP。目前还不支持自动识别入站流量的协议,下个版本将会支持。

2. 无 Mixer 的遥测功能(实验性)

这才是大家最期待的!该版本将大多数常见的安全策略相关的功能(如 RBAC)直接迁移到了 Envoy 中,同时也将大部分遥测功能迁移到了 Envoy 中。现在 Istio proxy 可以直接将收集到的 HTTP 指标暴露给 Prometheus,无需通过 istio-telemetry 服务来中转并丰富指标信息。如果你只关心 HTTP 服务的遥测,可以试试这个新功能,具体步骤参考无 Mixer 的 HTTP 遥测。该功能接下来几个月将会逐渐完善,以便在启用双向 TLS 认证时支持 TCP 服务的遥测。

3. 无需定义 containerPort

此前的版本要求网格中的每个 Pod 必须明确申明每个容器的 containerPort,任何未申明的端口都会绕过 Istio Proxy。1.3 版本使用了一种更为简单安全的方法,不需要显示申明 containerPort 就可以处理工作负载任何端口上的所有入站流量。之前的版本中,当工作负载向自己发送流量时,会陷入 iptables 规则表导致的无限循环,这个版本也修复了。

4. 支持完全自定义 Envoy 配置

虽然 Istio 1.3 专注于可用性,但高级用户仍然可以使用 Envoy 中不属于 Istio Networking API 的高级功能。1.3 版本增强了 EnvoyFilter API 以允许用户完全自定义以下的 Envoy 配置:

  • LDS 返回的 HTTP/TCP 监听器以及 filter 链配置。
  • RDS 返回的 HTTP 路由配置。
  • CDS 返回的 Cluster 配置。

5. 其他增强功能

  • istioctl 新增了许多调试功能,可以帮助你排查安装过程中出现的各种问题。详细信息可以查看 istioctl 的参考页面
  • 区域感知负载均衡功能从实验分支转移到默认分支。现在 Istio 可以利用现有的位置信息来确定负载均衡池的优先级,并支持将请求转发到地理位置最近的后端。
  • Istio 开启双向 TLS 认证时可以更好地支持 headless service。
  • 从以下几个方面增强了控制平面的监控:
    • 添加新指标来监控配置的状态
    • 新增了 sidecar injector 的指标
    • Citadel 添加了新的 Grafana 仪表板
    • 改进了 Pilot 仪表板,新增了几个关键指标
  • 新增了 Istio 部署模型文档,可以帮助你选择合适的部署模型。
  • 重新组织了操作指南中的内容,新增了一个包含所有故障排除任务的章节,可以帮助你快速寻找所需信息。

详细内容请查看发布公告。

参考文章

微信公众号

扫一扫下面的二维码关注微信公众号,在公众号中回复◉加群◉即可加入我们的云原生交流群,和孙宏亮、张馆长、阳明等大佬一起探讨云原生技术

Istio 1.3 发布,HTTP 遥测不再需要 Mixer的更多相关文章

  1. 干货分享|使用 Istio 实现灰度发布

    Kubernetes 作为基础平台,提供了强大的容器编排能力.但是在其上部署业务和服务治理上,仍然会面对一些复杂性和局限性.在服务治理上,已经有许多成熟的 ServiceMesh 框架用于扩充其能力, ...

  2. 痞子衡嵌入式:MCUBootUtility v2.3发布,这次不再放过任何一款Flash

    -- 痞子衡的 NXP-MCUBootUtility 开源项目自2018年8月27日第一笔提交至今已有21个月,目前累计代码已近50000行.相信这个工具为大家开发 i.MXRT 项目提供了一些便利, ...

  3. Istio最佳实践:在K8s上通过Istio服务网格进行灰度发布

    Istio是什么? Istio是Google继Kubernetes之后的又一开源力作,主要参与的公司包括Google,IBM,Lyft等公司.它提供了完整的非侵入式的微服务治理解决方案,包含微服务的管 ...

  4. 【从小白到专家】收官!Istio技术实践之九:路由控制与灰度发布

    本期是Istio技术实践专题的最后一个模块,主题是Istio的路由控制与灰度发布.上一期我们讲到,虚拟服务(Virtual Service)以及目标规则(Destination Rule)是 Isti ...

  5. Service Mesh服务网格新生代--Istio(转)

    万字解读:Service Mesh服务网格新生代--Istio  官网地址:https://preliminary.istio.io/zh/docs/concepts/security/ Servic ...

  6. 与IBM的Lin Sun关于Istio 1.0和微服务的问答

    北京时间 7 月 31 日,Istio 正式发布了 1.0 版本,并表示已经可用于生产环境.该版本的主要新特性包括跨集群 mesh 支持.细粒度流量控制以及在一个 mesh 中增量推出 mutual ...

  7. istio基础详解

    1.Istio介绍? 官方文档:https://istio.io/docs/concepts/what-is-istio/ 中文官方文档:https://istio.io/zh/docs/concep ...

  8. idou老师教你学Istio 04:Istio性能及扩展性介绍

    Istio的性能问题一直是国内外相关厂商关注的重点,Istio对于数据面应用请求时延的影响更是备受关注,而以现在Istio官方与相关厂商的性能测试结果来看,四位数的qps显然远远不能满足应用于生产的要 ...

  9. istio部署

    Istio的部署介绍 目录 Istio的部署介绍 部署模型 集群模式 单集群 多集群 网络模型 单网络 多网络 控制面模型 身份和信任模型 网格中的信任 网格之间的信任 网格模型 单网格 多网格 租户 ...

随机推荐

  1. spring架构解析--入门一

    Spring 框架中的核心组件只有三个:Core.Context 和 Beans.它们构建起了整个 Spring 的骨骼架构.简单理解: spring core是工具,context是环境,而bean ...

  2. CodeForces 939F Cutlet

    洛谷题目页面传送门 & CodeForces题目页面传送门 题意见洛谷里的翻译. 这是一道毒瘤的div. 2 F,我是不可能比赛的时候做出来的... (以下设两面都要煎\(n\)分钟,有\(m ...

  3. React 练习项目,仿简书博客写作平台

    Introduction 技术栈:react + redux + react-router + express + Nginx 练习点: redux 连接 react-router 路由跳转 scss ...

  4. ZooKeeper实现同步屏障(Barrier)

    按照维基百科的解释:同步屏障(Barrier)是并行计算中的一种同步方法.对于一群进程或线程,程序中的一个同步屏障意味着任何线程/进程执行到此后必须等待,直到所有线程/进程都到达此点才可继续执行下文. ...

  5. 暂停研发surging,是否继续维护!

    前言 surging从2017 年开始,2 年来利用业余时间为 surging语言添砖加瓦. 这种活雷锋行为并没有得到开发者们的理解,很多人甚至用命令的口吻,灵魂拷问方式要求活雷锋们再苦再累也得免费为 ...

  6. Linux之vim详解

    第一次使用vim,啥都不懂,输入也不能输入,退出也不会退出,特别的尴尬....后来慢慢的接触学习,发现vim真的挺好用的,不过上手有点慢,多用就对了,用多了我相信你也会喜欢这个文本编辑工具的 一.vi ...

  7. spring boot 打 war包

    spring boot .spring cloud打 war包,并发布到tomcat中运行 1.pom文件修改 <packaging>war</packaging> 2.< ...

  8. 使用docker快速搭建本地环境

    在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越来越多. 然而要顺利的安装好这些中间件也是一个比较费时费力的工作. 俗话说" ...

  9. 《Java 8 in Action》Chapter 5:使用流

    流让你从外部迭代转向内部迭代,for循环显示迭代不用再写了,流内部管理对集合数据的迭代.这种处理数据的方式很有用,因为你让Stream API管理如何处理数据.这样Stream API就可以在背后进行 ...

  10. vue中组件通信

    组件的通信 1. 父子组件通信 案例:   //父子组件通信思路 // 1 将父组件的数据传给子组件 在子组件上自定义单项数据绑定 // 2 子组件用props 接受自定义的那个:号属性 Vue.co ...