Istio 先锋英国AutoTrader仍在受益
英国AutoTrader成立于 1977 年,是英国领先的汽车市场杂志。当它在 20 世纪末转向在线运营时,它发展成为英国最大的数字汽车市场。
支持英国AutoTrader的 IT 资产非常庞大。如今,他们管理着大约 50 个面向客户的应用程序,这些应用程序由大约 400 个微服务支持,这些微服务每秒处理超过 30,000 个请求。他们的基础设施运行在 Google Kubernetes Engine (GKE) 上,并利用 Istio 服务网格。作为 Istio 的一个主要成功案例,英国AutoTrader 自 2018 年以来迁移到公共云的举措备受关注。
挑战
不断变化的需求促使英国AutoTrader 迁移到使用 Istio 作为服务网格的容器化应用程序。最紧迫的原因之一是最近对 GDPR 的关注。AutoTrader 不满足于简单的典型边界安全。它渴望通过双向 TLS 加密所有微服务之间的流量,即使是同一本地网络中的流量。对于主要是在英国AutoTrader 大规模运营的自定义构建的内部私有云基础设施来说,这项工作感觉意义重大。
为所有流量启用双向 TLS 还有另一个动机;英国AutoTrader 计划将其大部分基础设施迁移到公共云。 强大的端到端双向 TLS 将对于保护其整个微服务生态系统至关重要。
解决方案:Istio 和 Google Kubernetes Engine (GKE)
英国AutoTrader 平台团队在内部私有云上针对双向 TLS 的概念验证实施进行了努力。正如预期的那样,实施是一项费力的事情。他们决定尝试使用基于容器的解决方案,该解决方案可以利用像 Istio 这样的服务网格来管理其微服务架构的关键端到端部分的双向 TLS。AutoTrader 没有雄心壮志去自己构建和管理 Kubernetes,因此他们决定在 GKE 上运行实验。
容器实验取得了成功。在私有云上实施加密需要数周的努力,而在容器化项目中只需几天。向容器化服务的迁移路径很清晰。
为什么选择 Istio?
尽管轻松过渡到所有微服务的双向 TLS 是一个强有力的诱因,但 Istio 也得到了许多大型组织的支持。英国AutoTrader 已经在与 Google Cloud 合作,因此知道 Google 是 Istio 的强力贡献者和用户,这让他们有信心 Istio 拥有长期支持并将继续发展。
在 GKE 上使用 Istio 进行的早期实验取得成功,从而使企业迅速接受了 Istio。除了轻松实现双向 TLS 之外,他们还开始启用重要的可观察性功能,这大大降低了迁移到云的风险。随着 Istio 的不断发展,平台团队能够轻松地公开核心功能,例如强大的重试、异常值检测和流量拆分。
结果:信心和可观察性
Istio 让英国AutoTrader 有信心将越来越多的应用程序部署到公共云。Istio 使他们能够将服务视为聚合,而不仅仅是单独的实例。通过提高可观察性,他们拥有了一种新的管理和思考基础设施的方式。他们突然获得了对性能和安全的见解。与此同时,Istio 正在帮助他们发现一直存在的但一直没有被发现的现有错误。通过修复现有的应用程序中小的内存泄漏和小错误,他们能够为其整体架构带来显著的性能改进。
平台交付团队的出现
他们不仅能够快速部署,还能够将 Kubernetes 和 Istio 解决方案打包为内部产品,供其他产品团队使用。一个由十人组成的团队现在管理着为 200 多名其他开发人员提供服务的交付平台。
Istio 和 Kubernetes 使该团队能够实现他们想要的更好的应用程序部署和资源管理,但 Istio 还带来了对应用程序性能的惊人见解。可观察性是关键;英国AutoTrader 现在可以衡量精确的资源利用率和微服务事务。有了这些服务指标,他们能够正确地调整部署规模,从而降低和管理云成本。
虽然这不是完全透明的迁移,但 Istio 和 Kubernetes 的优势鼓励所有产品团队迁移。由于要管理的依赖项更少,并且 Istio 自动提供许多功能,因此项目团队几乎无需任何努力即可满足跨职能需求。团队能够在几分钟内在全球范围内部署 Web 应用程序,新的基础设施可以轻松处理每天大约 200 到 250 次部署。
启用 CI/CD
即使是全新的应用程序也可以在短短五分钟内部署到生产环境中。对于现有应用程序的快速部署改变了英国AutoTrader 的发布方法。随着对可观察性和回滚的信心增强,越来越多的团队正在采用 CD 实践。使用 Istio 进行的微调监控使部署团队能够快速准确地查明新部署中的问题。各个团队能够查看自己的性能仪表盘。如果他们看到新的错误,可以通过 CI/CD 工具立即回滚更改。
英国AutoTrader 将一个庞大而完全定制的 IT 资产系统地迁移到公共云上的微服务。他们实施 Istio 是迁移成功的关键部分,并使整个组织能够实现更好的流程、更好的可见性和更好的应用程序。