2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Dropbox 的服务器和网络自动化运维实践

  • 2019-01-29
  • 本文字数:1087 字

    阅读完需:约 4 分钟

Dropbox的服务器和网络自动化运维实践

Dropbox 的工程团队写了一篇有关他们的网络和服务器配置和验证自动化工具 Pirlo 的文章。Pirlo 提供了一种可插拔架构,基于 MySQL 实现了一种自定义作业队列。


Dropbox 有自己的数据中心。Pirlo 工具由 TOR(机架顶部)交换机初始化程序、服务器配置程序和验证程序组成。它作为工作进程运行在一个通用的分布式作业队列上,这个队列基于 MySQL,提供了可用于跟踪运行作业进度和可视化历史数据的 UI。Pirlo 使用了可插拔模块,为每个阶段提供了大量日志记录,用于调试和分析自动化运行。Dropbox 有一个 NRE(网络可靠性工程)团队,负责构建、自动化和监控生产环境的网络。Dropbox 的大多数代码都是用 Python 编写的,不过目前还不清楚 Pirlo 是否也是用 Python 编写的。


交换机和服务器配置程序都使用了作业队列,它们的工作流程都很相似,队列管理器选择正确的作业处理程序来处理来自客户端的请求。作业处理程序运行已注册的插件,这些插件负责执行实际的检查和命令。插件执行特定的作业,发出状态码,并将状态发布到数据库日志。这是大多数作业队列的运行方式,因此很自然地就会有人问为什么这个团队没有选择像 Celery 这样的现有队列解决方案。文章的作者解释说:


我们不需要整个功能集,也不想要第三方工具的复杂性。内部原语为我们提供了更大的设计灵活性,一小组 SRE 就足以开发和运营 Pirlo 服务。


当收到客户端请求时,交换机配置器(叫作 TOR 启动器)就会启动。TOR 交换机是网络设计的一部分,机架上的服务器设备与同一机架上的网络交换机相连,网络交换机通常位于顶部。它尝试通过 gRPC 使用服务发现找到健康的服务器,然后队列管理器为该作业选择一个作业处理程序。交换机验证和配置是一个多步骤过程,从建立基本的连接开始。随后会执行各个插件,最终下载交换机配置并重启。


服务器配置和验证过程类似。我们使用 Debirf 创建的操作系统镜像启动验证器,这个操作系统镜像可以创建基于 RAM 的文件系统,完全从内存运行 Debian 系统。它的绰号叫 Hotdog,一个基于 Ubuntu 的镜像,可以通过网络启动并运行验证、基准测试和压力测试。测试结果被推送到数据库,并用于后续的分析。测试过程包括根据硬件工程团队批准的预定义配置列表验证各种硬件和固件组件。修好的机器在重新投入生产之前也需要经过这个测试套件的测试。


Pirlo 的 UI 显示了当前正在运行和已完成的作业的进度。Dropbox 曾经使用 playbooks(或 runbooks)来执行配置。其他一些工程团队运行自己的数据中心,他们也已经从基于 runbook 的配置转向零接触配置(ZTP),尽管使用了不同的方法。


查看英文原文:


https://www.infoq.com/news/2019/01/dropbox-datacenter-automation


2019-01-29 11:005359
用户头像

发布了 731 篇内容, 共 480.5 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

解锁高效商品搜索:优化API返回值解析的艺术

代码忍者

API 接口 API 测试

企业级IM即时通讯:构建高效协作、引领实时沟通新时代

BeeWorks

WorkPlus-为用户提供IM即时通讯和实时音视频通信本地化服务

BeeWorks

操作系统笔记 day3

万里无云万里天

操作系统

INFINI Labs 产品更新 | Easysearch 1.8.3 依赖项安全升级

极限实验室

easysearch

政企单位如何选择适合规模的即时通讯软件?

BeeWorks

python-office支持Mac和Linux吗?自动化办公用这个就够了

程序员晚枫

Python 编程入门 自动化办公

【ACL2024】基于长尾检索知识增强的大语言模型

阿里云大数据AI技术

人工智能 自然语言处理 阿里云 acl 学术论文

一文读懂WorkPlusIM即时通讯,核心价值、优势、性能全面解析,不能错过!

BeeWorks

WorkPlus即时通讯:完全私有化部署的即时通讯方案

BeeWorks

性能问题分析的通用方法

老张

性能优化 软件测试 性能测试

使用极限网关实现 ES 跨集群搜索

极限实验室

搜索引擎 数据库·

回顾 | 瑞云科技亮相ICIC2024,虚拟仿真实训云平台引关注

3DCAT实时渲染

云仿真 虚拟仿真云教学 虚拟仿真实训教学 虚拟仿真云平台

JetBrains IDE 2024.2 (macOS, Linux, Windows) 发布下载 - 跨平台开发者工具

sysin

ide jebrains

功能广泛的科学计算软件:Wolfram Mathematica 13 for Mac 中文激活版

你的猪会飞吗

mac软件下载 mac破解软件下载

打破边界的科幻游戏:NO MAN‘S SKY无人深空 支持win/mac版

你的猪会飞吗

mac游戏 mac单机游戏

DApp项目开发基本要求及模式创建与海外宣发策略

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 NFT开发 代币开发

稳定可靠的即时通讯服务:探索WorkPlus在IM即时通讯领域的优势

BeeWorks

LocalDate和LocalDateTime常用方法

智慧源点

LocalDateTime LocalDate

CSS炫酷光晕按钮特效

南城FE

CSS 前端 动画 按钮

高纯度云原生 AI!Volcano在KubeCon China 2024的技术分享

华为云原生团队

云计算 容器 云原生

Dropbox的服务器和网络自动化运维实践_服务革新_Hrishikesh Barua_InfoQ精选文章