Shriram与来自Google、Lyft、IBM和其他公司的社区贡献者们一起并肩作战,积极地向Istio和Envoy项目作贡献。同时,Shriram是IBM的Amalgam8项目的创始成员之一。目前,Shriram是VMware的一名工程师,与VMware的企业客户密切合作,致力于开发服务网格解决方案。一个有趣的事实:Shriram编写了Istio Bookinfo示例应用程序的初始版本。你可以在Twitter上关注Shriram—@rshriram.

在这次访谈中,Shriram分享了许多自己对于Istio和服务网格主题的想法和见解。比如,Istio1.0发布的主要目标是什么以及他如何推荐企业采用Istio。

欢迎添加群助手monicka,申请加入华为云K8S容器技术交流群

现在来看看我们对Shriram的采访内容……

问:Istio1.0版本发布主要目标是什么?

Shriram:Istio 1.0整体是对现有功能的一种升级,并确保Istio可以在生产环境中以无干扰的方式逐步采用。

当我们逐个服务开始启用双向TLS身份认证时,Istio的增量部署出现了一些有趣的问题。我们需要确保在为服务启用双向TLS身份认证时,旧版客户端可以继续通过纯文本在同一端口上与同一服务进行通信,而较新的启用Istio的客户端需要通过mTLS进行通信。

我们关注的另一个领域是0.8版本的升级能力以及未来版本的升级。我们必须确保我们可以平滑地升级网格控制平面,而不会中断服务间通信,并且同时支持新老版本的代理。

问:您建议采用什么样的方式来快速增量部署Istio 1.0?

Shriram:增量安装Istio的最佳方法是使用Helm charts。您可以在values.yaml文件中禁用不需要的组件,并运行Helm命令以生成自定义的istio.yaml文件。

首先,我们部署一个仅使用Istio ingress gateway组件的网络,然后将所有流量从Kubernetes Ingress迁移到Istio gateway,并确保外部客户端仍可访问集群公开的服务。此步骤最大限度地减少了集群中已运行的应用程序的停机时间。在此阶段,您有两种选择:为进入网格的流量启用路由,遥测,策略实施等功能,或继续在所有服务中安装被动网格服务,然后尝试不同的功能。

假设您想要跨所有服务部署网格,在你手动或通过自动注入的方式向应用程序添加Istio sidecars之前,先评估所有外部依赖项(来自Kubernetes集群),例如第三方API,后端数据库等。Istio Pilot为服务注册中心的所有服务(例如,Kubernetes services)建立连接,默认情况下,没有注册的外部服务不能和网格内的服务进行通信。使用Istio service entry配置获取有关外部依赖项的所有详细信息,这些信息包括网格外服务的主机和端口以及它们使用的协议。service entries将确保sidecars能够调度流量,以及根据需要调用API来定位网格外部的系统。

接下来,下一个关注点是可观察性,尤其是监测指标。您无需重新检测应用程序,通过安装Istio遥测收集器(通过helm chart)并全局启用遥测收集,您可以看到流量如何流经系统。此时整个网格仍然是完全被动的,但它为您提供了宝贵的遥测数据。

一旦您熟悉上述设置,就可以开始尝试不同的Istio功能,可以根据您的环境进行不同的选择。如果您经常部署应用程序,您可能想要从流量管理功能开始,例如版本路由或弹性功能(如超时,重试,连接池等);如果您的目标是保护所有服务间的通信流量,您可以渐渐地将所有服务切换到mTLS,然后再利用Istio来配置安全策略。

无论您选择哪条路径,请确保自动执行任务。像Kubernetes一样,Istio要求你关注YAML文件,使用版本管理工具[Git仓库]可以轻松查明错误并快速回滚。

问:有哪些方法可以扩展Istio 1.0?

Shriram:Istio可以围绕内部定制和供应商价值差异化这两个方面进行多种扩展。

例如,遥测服务有许多适配器可以将遥测数据发送到各种云托管服务,例如Stackdriver,DataDog,AWS CloudWatch等。如果您有内部监测服务,您可以编写适配器将监测指标数据从网格发送到您的内部指标池。

同样,您可以通过自定义策略引擎定义Istio的安全性功能,例如,Apigee人员在Istio策略引擎中添加了一个适配器来提供API管理。还有一个适用于Open Policy Agent(OPA)的适配器,您可以构建在OPA之上,以与内部AD / LDAP或其他系统集成。或者,您可以直接向策略引擎添加自定义适配器,让内部授权系统决定是否允许请求通过,而不会影响基础数据平面的代理。这是一个非常灵活和可插拔的设计。

您还可以自定义数据平面。如果您有专有协议的内部编解码器,则可以将它们作为Envoy的扩展添加,并通过网络配置启用这些扩展,比如,Calico人员正在使用这种技术来启用自定义Envoy过滤器以进行授权。

问:Istio下一个重要里程碑是什么?

Shriram:在我们与企业客户交谈时,我们反复听到他们已经或将要把应用部署在不同的Kubernetes集群,Cloud Foundry和传统VM基础架构中,这些部署需要跨越不同的可用域、区域以及云,我们希望确保网格不管是在本地还是在多个公有云中都可以跨越这些异构环境运行。

Istio Gateway [在Istio0.8中介绍] 是实现这一目标的第一步,网关使得各个机构能够绕开昂贵的VPN技术实现pod间通信,它在单个逻辑控制平面管理的集群之间自由地调度流量。同时,我们可以拥有一个策略层,并开始跨群集传播授权上下文,执行RBAC,ABAC和企业所需的其他策略等。

原文:

https://blogs.vmware.com/cloudnative/2018/07/31/istio1-0-interview-with-istio-networking-tech-lead/

转载于:https://www.cnblogs.com/huaweiyuncce/p/9989856.html

惊喜Skr人,Istio的创始人Shriram Rajagopalan手把手教你如何使用Istio相关推荐

  1. 严冬冻skr人,是时候聊聊这不起眼的“小技术”了,BMW新5系标配

    在 2018 年所剩无几的日子里,一波能让人冻哭的寒潮来的特别凶猛,北方多地气温已创入冬新低.在这最高温度都在冰点以下的日子里,外面气温骤降.寒风嗖嗖,这才发现有辆车是多么重要的事,接送孩子上学.自己 ...

  2. 金钱能让人更快乐吗?手把手教你用机器学习找到答案

    导读:本文通过"金钱能让人更快乐吗?"等实操案例带你了解基于实例的学习和基于模型的学习. 作者:Aurélien Géron 来源:大数据DT(ID:hzdashuju) 一种对机 ...

  3. 手把手教你用手机轻松制作精美封面,封面不够吸引人?

    今天这期内容将手把手教大家如何去制作一张好看的封面. 最近有很多想做自媒体的粉丝朋友都会来问大周,说不知道该如何去制作一张吸引人的封面. 大周今天就来教你如何用手机制作一张与众不同的封面,本期内容非常 ...

  4. 基于Istio的高级流量管理二(Envoy流量劫持、Istio架构、高级流量管理)

    文章目录 一.Envoy流量劫持机制(Iptables规则流转) 1.流量出向劫持流程 (1)envoy怎样劫持入向流量? (2)Envoy劫持到流量之后,干什么?(查询目的地) (3)获取目的地址之 ...

  5. 网络编程懒人入门(八):手把手教你写基于TCP的Socket长连接

    转自即时通讯网:http://www.52im.net/ 本文原作者:"水晶虾饺",原文由"玉刚说"写作平台提供写作赞助,原文版权归"玉刚说" ...

  6. Istio 1.12 引入 Wasm 插件配置 API 以扩展 Istio 生态

    作者:胡渐飞,Tetrate  工程师 Istio 中新的 WebAssembly 基础设施使其能够轻松地将额外的功能注入网格部署中. 经过三年的努力,Istio 现在有了一个强大的扩展机制,可以将自 ...

  7. 【科创人】DataVisor创始人谢映莲:智能生意应坚守数据道德

    恐惧于一眼到底的人生 放弃教职加入微软 2005年,谢映莲完成卡内基梅隆计算机专业的博士学位,开始纠结于未来选择. 卡内基梅隆位于美国匹兹堡,是计算机工业最初的推动者之一,计算机专业排名高居全美第二. ...

  8. 这样的团建,真羡慕skr人~

    最近Beijing Office被一股"神秘力量"吸引掌控 工作日阳光正好 各team不时工位空荡 葫芦娃们踪影难觅 朋友圈却悄悄po满了 爬山.游玩.密室.品尝美食的美照 ??? ...

  9. 新人被指责没担当太自我,气skr人!

    又一批毕业生将要离开学校,正式进入职场.在老人带新人.新人学习上位期间,双方总需要有一段时间进行磨合.在这段彼此进行观察的时间内,职场新人最容易令人引起反感的行为是什么?而老人的哪些行为又会暗自滋生新 ...

最新文章

  1. 用了 10 年 Windows 后,我最终转向 Linux
  2. rtp协议详解/rtcp协议详解
  3. 华为架构师谈如何理解运用模块与微服务
  4. 数据库创建存储过程_创建存储过程来修复孤立的数据库用户
  5. 什么是云计算时代?学云计算能做什么呢
  6. Kylin Cube构建优化
  7. 计算机配件模拟,模拟计算机是指什么
  8. 再见了,面向对象编程
  9. 实力采坑----记录一下windows下我的MySQL8.0.11安装过程
  10. linux执行hadoop程序,gcc编译和运行hadoop c api程序
  11. 3D数学基础与三维渲染
  12. DSP方案山景AP8224C2芯片可烧录适用USB声卡降噪麦克风
  13. #蓝桥杯嵌入式#电路模电基础知识
  14. 桑德伯格加州大学伯克利分校2016毕业演讲+我从死亡中学到的东西
  15. Django应用及分布式路由
  16. css禁止文本或文字图标点击被选中
  17. RaspberryPi树莓派连接Wifi
  18. 操作系统:临界区、临界资源的概念及相关习题
  19. 网站如何判断客户端是在国内还是国外
  20. MonoRail学习-介绍篇

热门文章

  1. Zhang-Suen 图像骨架提取算法的原理和OpenCV实现
  2. python实现语音识别前期准备(调用科大讯飞平台)
  3. 测试人员绩效评价方法
  4. 房市静心贴:蛋蛋读NVMe之三
  5. 树莓派串口通信 USB串口通信 常用串口命令
  6. 手动杀毒专题(黑防VIP)
  7. 【Matlab】二维图绘制及填色总结(basic)
  8. 树和二叉树 (C语言)《数据结构与算法》
  9. Lyndon的量化修炼之路——随机指标(KDJ)优化策略(二)
  10. file.delete无法删除文件解决