eBay是如何将Envoy作为边缘代理的
极客时间编辑部
讲述:杜力大小:3.08M时长:02:15
在美国西雅图举行的首届 EnvoyCon 会议上,来自 eBay 的工程团队讨论了如何将 Envoy 作为网络边缘,以替代基于硬件的负载均衡器。
eBay 的技术人员巴拉·马德范(Bala Madhavan)表示,他们要在全球范围内运行连接点(points of presence,PoP)以减少延迟,从而为终端用户提供更好性能。他们使用了“软件支撑的基础设施”,在每个 PoP 上部署了一个 Kubernetes 集群,并且在每个集群的边缘上有一个“north-south”网关,用来管理所有针对外部的传入和传出流量。
据介绍,eBay 的边缘团队在每个 Kubernetes 集群中将 Envoy 运行在多个容器里面。针对就绪(readiness)和存活(liveness)状态的探针,会确保容器能够按照预期的方式运行,并确保所有动态恢复过程都能顺利完成。7 层路由和部署控制是由一个定制 Kubernetes CRDs(Custom Resource Definitions )来进行管理的。
除此之外,他们还实现了一个自定义的发现服务,并负责进行部署和路由,包括路由发现服务(routing discovery services,RDS)、监听器发现服务(listener discovery service,LDS)、端点发现服务(endpoint discovery service,EDS) 以及集群发现服务(cluster discovery service,CDS)。
从基于硬件的负载均衡器到 Envoy 支撑的边缘解决方案的迁移是渐进式的。在迁移过程中,第一步就是识别和实现已有方案和新 Envoy 方案之间的差异,eBay 团队已经将相关的代码贡献给了上游的 Envoy 开源项目。另外,他们还添加了对专有证书管理系统集成的支持,并且对 data plane 进行了一些定制(这些定制功能还没有往上游贡献)。
在可观察性方面,在每个 PoP 上会运行一个 Prometheus 集群,另外还有一个中心化的 Grafana 用来实现可视化。告警是使用 Alertmanager 和外部检查来实现的,还包括用来进行异常探测的静态和动态阈值。整个边缘技术栈是通过 Helm Chart 在 Kubernetes 中进行安装和配置的,Helm Chart 会作为部署的唯一来源。
最后,最重要的就是需要进行测试。硬件和软件的交叉校验是非常重要的,为了确保用户不会遇到性能下降的问题,实时用户监控(real user monitoring,RUM)是必不可少的。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论