Image of Shanghai skyline
最终用户案例研究

Trip.com Group

切换到Cilium以实现可扩展的云原生网络

Challenge

Trip.com集团有限公司是一家总部位于中国上海的跨国旅游服务集团,在旅游行业中占据重要地位。该公司经营着几个知名的旅游票价聚合器和元搜索引擎,包括Trip.com、Skyscanner、去哪儿、Travix和MakeMyTrip,为来自全球200个国家的用户提供服务,支持40多种语言。

Trip.com最初使用基于OpenStack Neutron的内部开发的CNI构建了他们的Kubernetes平台,但很快遇到了问题。随着他们的Kubernetes集群不断扩大,他们面临着性能和可扩展性问题、集中式IPAM瓶颈和硬件限制。他们无法支持业务的快速增长,核心网络设备条目的数量迅速接近硬件限制。他们在本地物理集群上运行超过20,000个节点,还使用阿里巴巴云和AWS上的spot实例,他们需要一个能够与他们一起扩展的解决方案。

Solution

在评估了几个选项后,Trip.com发现Cilium是最合适的选择。Cilium的云原生网络模型有助于满足他们的可扩展性要求,而且它使用的是eBPF而不是iptables,使其在性能上比他们评估的其他解决方案更高效。网络策略还使他们能够提高安全性,而Cilium作为一个功能丰富且由活跃社区支持的项目,成为了理想的选择。

Impact

部署了Cilium后,Trip.com现在拥有了一个统一的网络和安全解决方案,覆盖了他们的混合云环境。他们在私有云和公共云中部署Kubernetes集群,利用Cilium进行网络连接、安全策略,并利用Hubble进行网络和安全审计事件。他们的数据平面在过去四年中保持了稳定的性能,没有发生任何重大故障。Cilium的一致技术堆栈和可靠性不仅解决了他们以前设置的可扩展性问题,还显著降低了运营成本,即使他们的集群不断增长。

挑战:
行业:
地点:
云类型:
出版:
September 13, 2023

使用的项目

Cilium
Kubernetes

一些数据

超过20,000个节点的混合云

每秒钟大约20万次Hubble事件

超过3,000个Cilium网络策略条目

切换到Cilium以实现可扩展的云原生网络

Trip.com集团有限公司是一家跨国旅游服务集团,为来自全球200个国家、使用40多种语言的客户提供服务。他们的业务由庞大的IT基础设施支持,部署了Kubernetes集群,包括本地部署和AWS、阿里巴巴云等云环境。平台团队有100多人,负责管理从Kubernetes到支持10,000名工程师的CI/CD等一切。

平台团队内的网络团队有9人,其中3人正在负责Cilium。这个团队管理着超过20,000个节点的部署,包括本地物理节点和阿里巴巴云和AWS上的spot实例,总共支持超过350,000个pod。

最初,Trip.com的基础设施在很大程度上依赖于基于OpenStack Neutron的内部开发的CNI。然而,随着他们的Kubernetes集群的扩大,他们遇到了一些挑战,因为他们的解决方案是针对虚拟机而不是容器和云原生的动态世界构建的。性能和稳定構成了他們遇到的問題,集中式IPAM和更改網絡設備配置的限制影響了可擴展性。他們現有的網絡設計無法支持業務的快速增長,並且核心網絡設備條目的數量接近硬件限制。在面臨這些困境的激勵下,他們開始尋找一個適合的云原生解決方案。

Trip.com評估了幾個潛在的選項,包括流行的Kubernetes網絡解決方案和他們自己內部開發的CNI。他們的標準很明確:他們需要一個能夠克服目前硬件限制、解決集中式IPAM的性能瓶頸、提高集群可擴展性、適應未來與Kubernetes整合的云原生解決方案,提供安全的網絡策略,能夠在混合雲環境中運行,並提供卓越的數據平面性能。

在評估之後,Cilium成為了理想的選擇。它的節點本地網絡模型和使用eBPF而不是iptables的方式與Trip.com的可擴展性要求完美契合。此外,Cilium的云原生和功能豐富特性正是Trip.com所追求的。Cilium背後活躍而充滿活力的社區進一步鞏固了他們的決定。

“我們嘗試過Flannel和Calico,並擴展我們自己的解決方案以支持Kubernetes,但發現Cilium以用eBPF取代iptables並刪除kube-proxy的方式創造了一個更高效和可擴展的解決方案。有了Cilium,我們擁有非常快速的IPAM,即使在集群中有數千個節點,它也能輕松擴展。”

Jaff Cheng,高级软件开发人员,Trip.com

Cilium的好处不仅限于网络

在选择Cilium之后,Trip.com开始将现有的网络基础架构转移到Cilium上。他们的部署策略非常全面:在私有云中,他们利用Cilium的直接路由结合Bird BGP进行路由广告,而在公有云中,他们使用相应的IPAM插件从VPC子网分配IP地址。这使得他们无论集群在何处运行,都能获得相同的网络体验。

Cilium还为他们提供了在各个云平台上一致的安全体验。安全策略通过Kubernetes联邦进行同步,并使用Cilium的主机防火墙功能在Pod和主机上执行策略。网络访问/审计事件由Hubble收集,并通过自管理的ELK堆栈显示。Hubble还用于捕获网络流事件,如TCP连接请求,并用于了解他们应用程序在某个时间点发生了什么。

“eBPF为Cilium带来了很多可能性,使其能够在其之上构建强大的功能。”

Jaff Cheng,高级软件开发人员,Trip.com

通过Cilium建立统一的网络和安全解决方案

对于Trip.com的平台团队来说,转向Cilium是一个巨大的成功。它解决了他们的网络可扩展性挑战,降低了运营成本,增强了稳定性。这次转变使他们能够在整个基础设施上集中网络功能,并为未来的增长做好准备。除了网络功能之外,Cilium还使Trip.com能够观察和保护他们的应用程序。随着他们展望未来,Trip.com计划进一步利用Cilium的功能来深入了解和优化性能,确保满足旅行行业不断变化的需求。

“Cilium非常稳定。我们在生产环境中运行了将近5年,数据平面没有发生任何重大事故,这对我们的应用程序非常重要。

当你没有问题时,你就注意不到它。我们相信Cilium不仅在大规模生产环境中准备就绪,而且在性能、功能和社区方面也是最佳选择之一。”

Jaff Cheng,高级软件开发人员,Trip.com

要深入了解他们对Cilium的使用技术细节,请查看以下博客:

Trip.com: First Step towards Cloud Native Networking

Trip.com: Stepping into Cloud Native Networking Era with Cilium+BGP

Trip.com: First Step towards Cloud Native Security

User Story – How Trip.com uses Cilium

以及他们在最近的eBPF峰会上的演讲

Large scale cloud native networking & security with Cilium/eBPF: 4 years experiences from Trip.com