杨谕黔 FreeWheel 基础架构部高级软件工程师
随着 FreeWheel 微服务的演化,模块之间的数据流在不断调整,这给应用开发者和运维人员都提出了很大挑战。
最初开发者尝试在应用层直接面对复杂基础设施场景来编程解决问题,可网络基础设施对开发人员常常是不透明的,测试其实也是没有保障的,增加了很多不确定性。
运维人员也难以在调整基础设施的同时控制对应用层的影响,每一个改动都可能牵一发动全身,不但增加了团队之间的沟通成本,整体风险也很难控制。
总结起来主要有两方面的挑战:
通信标准化:不同环境的网络基础设施的特异性可能影响应用层(比如防火墙对连接的处理机制),增加应用的复杂度
可编程通信:系统在运行过程中(runtime)实现姿态调整的能力,这也是容器平台中自动化运维的基础
Istio 正是为了解决以上问题,本分享围绕 Istio 原理和实现,介绍 Istio 1.0 在 FreeWheel 微服务中的实战经验。