Istio 1.0版本发布到现在,已经过去8个月。Istio1.1的候选版本也到了rc5,预计近期会正式发布1.1。此版本包含了许多错误修复,在流量管理,安全,策略和遥测,多集群等领域添加了新的功能。

对1.0的用户来说,感受最强烈的是:

  1. 默认关闭了策略执行功能

  2. 默认开启了Mesh外的访问,再也不用担心未配置ServiceEntry对外的访问突然不通了。

  3. 多集群不再只是1.0那种扁平网络的简单方案,提供了单控制面、多控制面几种方案,可以根据自己的场景需求选择。

  4. 安全上SDS也终于来了提供更灵活的安全基础能力。

  5. 性能上做了多点优化,总体表现值得期待。

另外1.1提供了很多新的能力,在配置使用上也会有所不同,虽然不至于像0.8到1.0引入V1alph3导致接口大变样那么夸张,但API的使用确实值得我们去注意。最直观的感受将是,原来的结构上字段突然多了很多。

Istio社区对1.1发布的初步文档已经在istio.io上提供,今天我们就率先为容器魔方粉丝献上中文版的功能预告

流量管理

新的sidecar:资源:在指定命名空间中使用sidecar资源时,支持定义可访问的服务范围,这样可以降低发给proxy的配置数量。在大规模的集群中,我们推荐给每个namespace增加sidecar对象。 这个功能主要是为了提升性能,减轻proxy计算的负担。

限制网络资源的生效范围:为所有的网络资源增加了exportTo的字段,用来表示此网络资源在哪些namespace中生效。这个字段目前只有两个值:

  • . 表示此网络资源只在自己定义的namespace生效;

  • *表示此网络资源在所有的namespace生效。

更新了serviceEntry的资源:指定服务的位置以及使用双向TLS关联的SAN。带HTTPS端口的service entry不再需要额外的virtualservice来开启基于SNI的路由。

细粒度的多集群路由:简化了多集群的安装,并支持额外部署模式,能够利用ingress gateways连接多个集群,而不使用pod级别的VPN。在每个集群中都部署控制面以提供高可用,跨集群创建全局的命名空间。在高可用控制面方案中,默认开启AZ/Region的区域感知能力,降低跨区请求造成的性能损耗。

弃用Istio Ingress:删除了以前弃用的Istio ingress。

安全

Readiness and Liveness 探针:在双向TLS启用的场景下支持Kubernetes HTTP readiness和liveness探针。

集群RBAC配置:使用ClusterRbacConfig资源对象替代原来的RbacConfig。ClusterRbacConfig支持集群范围的配置。

基于SDS的身份设置:On-node秘钥生成和动态证书替换不用重启Envoy。

TCP授权管理:除了HTTP和gRPC外,支持对TCP服务的授权管理。

最终用户组授权管理:支持JWT中组声明或者列表类型的声明。

每路径最终用户认证:可以启用和禁用基于访问路径的JWT认证。

Gateway上外部证书管理:支持动态加载和替换外部证书。

集成Vault PKI:提供Vault保护的秘钥签名并与现有Vault PKI集成。

自定义的可信域:在身份标识中支持特定org或cluster的安全域。

多集群

不可路由的L3网络:在不可路由的L3网络多集群环境中使用一个Istio 控制面。

多控制平面:在多集群环境中,支持安装多个Istio控制平面。

策略和遥测

默认关闭策略检查功能:为了提高多数客户场景下的性能,安装时默认关闭策略检查, 后期可按需开启此功能。

Kiali:弃用ServiceGraph,推荐使用 Kiali:提供了更丰富的可视化体验。

多方面降低开销 ,提升性能和可扩展性:

  • 减少Envoy生成的统计数据的默认收集

  • 为Mixer的工作负载增加load-shedding功能

  • 改进Envoy和Mixer的通信协议

控制请求头和路由:增加选项使适配器可以修改请求头和路由。

进程外适配器:进程外适配器功能生产可用,下个release弃用进程内适配器。

多方面增强Tracing的能力:

  • Trace id支持128bit的范围

  • 支持向LightStep发送追踪数据

  • 增加选项完全禁用Mixer支持的服务的追踪功能

  • 增加策略的decision-aware 追踪

默认的TCP指标:为追踪TCP连接增加默认指标。

配置管理

Galley:Galley在Istio中提供主要的配置管理和分发机制。它提供了一个健全的模型来验证,转换和分发配置状态到Istio各组件,使Istio组件与Kubernetes的细节隔离。Galley使用Mesh Configuration Protocol(MCP)和组件交互。

监控端口:Galley的默认监控端口从9093改为15014。

istioctl和kubectl

校验命令:为 Istio Kubernetes 的资源增加离线校验命令—— istioctl validate。

验证安装命令:在使用指定的YAML文件安装Istio前,可以用istioctl experimental verify-install 来预先检验Istio的安装状态。

弃用的命令:弃用 istioctl create,istioctl replace, istioctl get 和 istioctl delete,使用 kubectl 代替;弃用 istioctl gen-deploy,使用helm template代替。下个版本(1.2)将删除这些命令。

命令的缩写: 用kubectl操作Istio网络资源时可以使用缩写,例如: gateways简写为gw,virtualservice简写为vs等等。

升级

Istio Helm 配置的更改:

  • 默认关闭Egressgateway

  • 默认关闭Mixer policy

  • 默认允许所有出口流量(不用配置service entry),出口流量策略设置为ALLOW_ANY

相关服务请访问: https://support.huaweicloud.com/cce/index.html?utm_content=cce_helpcenter_2019

315 · Istio1.1 功能预告,真的假不了的更多相关文章

  1. 开源敏捷测试管理& 开源BUG跟踪管理软件itest(爱测试) V3.3.1小改紧急发布及正实现功能预告

    v3.3.1 下载地址 :itest下载 码云源码地址 https://gitee.com/itestwork/itest 开源中国  itest项目地址   https://www.oschina. ...

  2. 【DevExpress v17.2新功能预告】增强ASP.NET TreeList

    本文主要为大家介绍在下一个主要版本v17.2中,DevExpress ASP.NET TreeList获得的一些重大改进.DevExpress ASP.NET TreeList和GridView控件在 ...

  3. 【DevExpress v17.2新功能预告】增强ASP.NET GridView的功能

    在下一个主要版本v17.2中,我们将为DevExpress ASP.NET GridView添加一些优秀的新功能.在本文中为大家介绍的所有功能都可用于 GridView的ASP.NET WebForm ...

  4. 【DevExpress v17.2新功能预告】WinForms上的图表增强

    在WinForms Charts v17.2中,我们新增了一些有用的功能,开发人员和最终用户可能都会喜欢. 基于标准的过滤 Chart控件已经支持一系列的过滤,但是在这个版本中,我们用FilterCr ...

  5. 【DevExpress v17.2新功能预告】DevExtreme ASP.NET MVC新的强类型HTML Helpers

    在ASP.NET MVC中构建视图时,强类型HTML helpers非常有用.像@Html.TextBoxFor(m => m.FirstName)这样内置的Helper方法已经存在很长时间了, ...

  6. 【DevExpress v17.2新功能预告】DevExpress ASP.NET Scheduler新的自适应功能

    自适应Web设计可以帮助您解决各种尺寸的屏幕问题,网站的自适应网页设计可帮助您解决用户使用不同大小屏幕显示数据的问题. 在v17.2中,我们最大化了ASP.NET Scheduler的视图和可视化元素 ...

  7. 【DevExpress v17.2新功能预告】DevExtreme TreeList

    在即将到来的v17.2中,您可以查看到DevExtremeHTML5 TreeList小部件的这些新功能. 1. 递归选择模式 TreeList将包括一个新的递归选择模式,您只需一次点击即可选择或取消 ...

  8. 【DevExpress v17.2新功能预告】改进DevExtreme编辑器

    DevExpress即将发布v17.2版本,在DevExtreme v17.2中,DevExtreme编辑器进行了一些改进. 除了dxScheduler,dxDataGrid,dxTreeList和d ...

  9. 各种xml配置文件(所含内部标签及顺序)的提示功能是真的人性化

    通过mybatis generator的配置文件来举例,其他配置文件(web.xml,mybatis,spring,springmvc等)同理 mybatis可以通过mybatis generator ...

随机推荐

  1. 《Django企业开发实战 高效Python Web框架指南》胡阳

    链接:https://pan.baidu.com/s/1NmN_IT5RvevCMt9bZCW1-g提取码:2ki9

  2. list自定义排序工具类

    工具类 package sort; import java.lang.reflect.Method; import java.text.Collator; import java.util.Compa ...

  3. 【C# 开发技巧】 C#中WinForm程序退出方法技巧总结

    C#中WinForm程序退出方法技巧总结 一.关闭窗体 在c#中退出WinForm程序包括有很多方法,如:this.Close(); Application.Exit();Application.Ex ...

  4. 使用Apache,压力测试redisson的一般高并发

    安装 Linux linux直接yum -y install httpd-tools,然后ab -V测试 Windows 1查看80端口有没有被占用,netstat -ano | findstr &q ...

  5. 【ARM-Linux开发】嵌入式操作系统上的小型数据库移植SQLite

    近段时间在学数据库,因为自身需求,所以注重研究了点嵌入式sqlite数据库,SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品 ...

  6. Spring 使用日志

    1. spring boot项目默认使用什么技术处理日志? 实例代码 log.debug("===============================用户信息:", user) ...

  7. 《Tsinghua os mooc》第17~20讲 同步互斥、信号量、管程、死锁

    第十七讲 同步互斥 进程并发执行 好处1:共享资源.比如:多个用户使用同一台计算机. 好处2:加速.I/O操作和CPU计算可以重叠(并行). 好处3:模块化. 将大程序分解成小程序.以编译为例,gcc ...

  8. 用户字符串操作,这里面包括字符串的decode、encode、substract等等操作

    工具类描述:用户字符串操作,这里面包括字符串的decode.encode.substract等等操作 package cn.hgnulb; import java.io.UnsupportedEnco ...

  9. Mathtype 问题汇总(3)

    1. 调整行间距 2. 调整字号 在 MathType 中,选择「大小 > 定义」将对话框中「完整」所对应的值改为和文字大小匹配的pt(磅值),这样便可以解决在文字编写的 Word 文档中某一行 ...

  10. SecureCRT SSH 失败 Key exchange failed 解决方法

    背景:SecureCRT 的SSH正常使用过程中,突然出现: Key exchange failed. No compatible hostkey.The server supports these ...