爱奇艺基于Docker的App Engine实践


爱奇艺基于 Docker 的 App Engine 实践 杨成伟 @container2016 内容提要 • 背景、出发点、目标 • iQIYI App Engine 设计与实现 • 一些经验(坑) • 现状与展望 • Q & A %25 ۓݸݣ๐ 20% Worker 55% ਙٌ ۓᡦ๢ಥ᫹ጱӱ 背景 — 业务上 背景 — 技术上 2014 年 Q3 出发点 ᰸ ᩒრ Ո ፜ 目标 ᰸ ᩒრ Ո ፜உग़ 道路 — 曲折的 ᥜᡐ ۹Ղ 道路 — 曲折的 道路 — 曲折的 ᶱፓ 目标 — 会变的 ᰸ ᩒრ Ո ፜உग़ ฃአ௔ ፅ አಁݑ ๜ ਍ԟ౮ ፜உग़ ᩒრ Ո ᰸ 目标 — 会变的 用户受益 • 资源到位快 • 部署快(上线、升级) • 扩容快 • 自动故障转移,免运维 • 完善的监控预警 • 持续集成、发布 内容提要 • 背景̵出发点、目标 • iQIYI App Engine 设计与实现 • 一些经验(坑) • 现状与展望 • Q & A iQIYI App Engine (QAE) QAE — 监控和预警 QAE — 自动扩展(Auto Scaling) QAE — 事件总线 QAE — 服务发现 QAE — 日志 QAE — CI/CD 内容提要 • 背景̵出发点、目标 • iQIYI App Engine 设计与实现 • 一些经验(坑) • 现状与展望 • Q & A 容器监控 — Zabbix • 优势 • 已有 Zabbix 基础服务 • Auto Discovery 能发现容器启动/消失事件 • 劣势 • 需要在容器内部安装 zabbix, overhead 太大 • 不是很稳定 • 数据统计比较复杂 容器监控 — cAdvisor • 优势 • 背靠 Google 且开源 • 监控数据详尽 • 劣势 • 集群化开发成本较高,Kubernetes heapster 实 现 • influxDB 而非 graphite(当时有基础服务) 容器监控 — dAdvisor • Docker Advisor • 采集:CPU, 内存,磁盘,网络 • 集成现有 Graphite • 统计数据方便(Graphite 内置一些操作符) • 呈现方便(Graphite Render URL API) • 开发量不大 Time Series Database — Graphite • 优势 • 老牌(Since 1999),已有服务,经过验证 • 简单、内置 aggregator,Render URL API • 劣势 • 项目及社区已经几乎停滞 • 集群化配置复杂,需要详细规划 • 缺乏多用户认证,授权机制,黑白名单太单薄 • 数据删除缺少 API 服务发现(Service Discovery) • 负载均衡/反向代理方案 • HAProxy:Marathon 支持,用户少 • Nginx:大量用户 • 服务发现 • Flask 推送,SSH,不可靠,不安全 • Ansible 推送,SSH,不可靠,不安全 • event bus + guardro-template 日志 • ELK (Elasticsearch + Logstash + Kibana) • 延时较高(分钟级) • 只支持格式化后的日志(for machine) • 用户诉求 • 低延时(秒级),准实时 • 裸日志(for real person) • 备份日志(Apache Flume) 内容提要 • 背景̵出发点、目标 • iQIYI App Engine 设计与实现 • 一些经验(坑) • 现状与展望 • Q & A 现状 • 处于活跃开发状态 • 接入了几十个业务 • 主要业务类型:服务型,RPC,Worker • 服务型业务 QPS 大于 10 万 • 4 个数据中心 展望 • 支持短任务 • Quota 和计费 • Web Console • 内置典型服务(如:Tomcat)数据统计 • Docker 持久化卷和跨主机通信 • 支持更多类型服务:Cache, DB, MQ 等 Q & A Q & A
还剩30页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 5 金币 [ 分享pdf获得金币 ] 1 人已下载

下载pdf

pdf贡献者

neke

贡献于2016-02-06

下载需要 5 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf