IstioConWP 引擎如何使用 Istio 加速构建产品
平台概述
IstioCon 是一个基于多租户平台的软件交付平台,通过 Istio(由 GCP Anthos Service Mesh 管理)提供 REST 和 gRPC 服务,并支持容器化构建管道、GitOps 部署和策略执行。平台每季度部署 30+ 软件交付平台服务,服务部署量达 750+,工程团队规模超过 20+ 雇员,拥有 1,000+ 雇员和 1.5M+ 网站代理合作伙伴。
平台目标
- 提供最小特权的默认安全配置
- 简化构建、交付和运营服务的流程
- 减少创建服务所需的代码量
- 提高服务之间的一致性
- 为使用平台功能提供自助服务模型
平台效益
可观察性
- 金色信号仪表板覆盖 80% 的可观察性
- 通过 Anthos Service Mesh 控制台提供服务目录
- 使用 Google Cloud Operations 套件的单个玻璃面板
- 日志记录、指标和即时跟踪
- 拓扑图显示依赖关系
安全
- 通过 Istio mTLS 功能实现的服务到服务认证
- 由平台团队管理的负载平衡和入口网关
- OPA Gatekeeper 策略,以防止 Istio 路由配置冲突/歧义
- 用于授权外部系统的 Google 服务帐户令牌
- 用于租户隔离的命名空间
可靠性
- Managed Anthos Service Mesh 降低了运营负担
- 全球限速服务确保服务的稳定性
- 多区域 GitOps 部署以减轻区域中断
- 自动 Istio 数据平面升级
- 自动 Istio 控制平面升级
经验教训
- 1,000 RPS 时,Sidecar 需要 1 CPU / 256M 资源
- 1,500 RPS 时,入口网关需要 1 CPU / 256M 资源
- 不要用租户特定的固定资源过载 istio-system
- 必须对 k8s 作业的 Sidecar 终止进行编程
- Istio 的高级使用需要对 Envoy 有扎实的理解
- Envoy Admin API 在故障排除时非常有用
- 速率限制不是“包括电池”
未来计划
- 使用开放式政策代理
- AUTHCANARY 部署
- 混沌 ENGINEERING 钻头预览部署
- 延伸网格
- KUBERNETES
招聘信息
WP Engine 正在多个职能和地区招聘各种产品与工程职位(包括 100% 远程工作)。
招聘链接