`

Google的系统工程师(SA)如何工作

阅读更多
转载
http://timyang.net/linux/sysadmin-at-google/
本文根据系统管理领域知名博客 Thomas A. Limoncelli 的 What is system administration like at Google 整理而成,添加了部分笔者观点。

Google的系统工程师(System Administrator)如何工作
由于Google的服务已经集群化,系统工程师并不大量接触硬件比如做安装服务器等事情。另外大部分工作也已经自动化了,比如架设LDAP, 负载均衡等。对照而言,国内目前大部分互联网公司SA仍然要做大量重复的底层工作,比如拿一个业务的数据库过大需要拆分为例,从系统管理员的角度,需要做以下事情

1.同技术人员沟通目前业务特点,制定拆分方案并评估程序风险
2.搭建测试环境,技术人员测试程序兼容性
3.制定实施方案,保证业务的不停机平稳过渡
4.深夜上线
5.观察1-2天运行情况
我们需要思考上面工作是否是系统管理员以及技术人员有价值的工作。像Cassandra这样解决了分布式存储自动化扩展的问题是业内一种发展方向,尽管Cassandra的稳定性还需要改进)。

Google的系统工程师怎么做?
他们会通常1周值班,响应各种问题,比如完成上述场景中的扩容业务。然后有大约5周左右脱离一线工作来自由思考将这1周内碰到的工作进行自动化改进,将那些会反复碰到的问题通过脚本及监控程序完成,或者进一步反馈给技术人员改进应用程序来实现自动化。1:5只是个大约比例,时段可以灵活安排。比如也可以按天来安排,1天值班/7天改进。当改进完成之后,下次遇到相同的场景,自动化程序会完成大部分工作。如果在其他公司,SA通常忙碌在一线机械重复上述工作,但是在Google, 给系统工程师预留了相当多的时间让大家思考改进。

这就是Google的System Administrator自称SRE(Site Reliability Engineers)的原因。SRE会不断在优化所负责的系统,一些人关注运维层面,另外一些可能关注自动化工具。所有的SA都需要具备一定程序或脚本开发能力。

因此,当遇到Google的数据规模,自动化不是是否需要,而是如何更好实现的问题。

在Google其他一些令人兴奋的工作还包括

•与开发技术人员是协同的关系。
•只需关心技术,在技术领域也有职业生涯上升通道,不必转向技术管理岗位或其他。
•同事都非常聪明,通常会觉得自己是最逊的那一个。
•很多挑战,保守的估计领先行业2-10年,在这里工作就象给了你一个魔法水晶球,通过你的工作可以预见这个行业的未来。
受Google方式的启发,以下想到的一些可以研究的自动化方向

1. 程序部署
C/C++/Java/PHP/Python/Ruby/C# 等语言如何不停机自动发布
自动发布如何简洁的解决模块依赖性,比如1天需要同时更新10个有相互依赖的模块,并且不能停止服务
Web容器虚拟化,同一Web容器上可以部署多个业务,业务之间互相隔离,互不影响。
将新开发的服务程序运维自动化。一般的服务程序从数量上来说,10是一个分水岭,10台以下的服务通过人工重复操作方式来管理也问题不大,但是10台以上就需要自动化管理的方法。很多优秀的开源程序(比如Tokyo Cabinet, Redis等)在单机上表现优秀,但是大规模部署不能。大公司中很多技术人员经常提到很多开源软件不适合他们就有这方面原因。

2. 资源部署
MySQL
分布式文件存储
Cache,拿cache自动化管理举例
端口资源管理,不同业务使用不同端口,同一应用内不同的数据使用不同的端口,相关原因可以参看以前cache相关博文。
容量管理,不同的数据需要不同的容量
动态扩容,应用业务规模增长,比如从10G扩容到100G
Proxy功能,比如虚拟化端口映射,程序访问的是固定虚拟端口,这样不需要重启服务也可以随时扩充,应用也不需要一致性hash, proxy帮你做了。

3. 系统部署
OS
反向代理与负载均衡
本地分区容量,批量管理
程序发布与停止,比如一个程序一个点击部署到100台服务器
虚拟化,比物理服务器更容易部署,资源利用率更高,部署更可控

大部分国内互联网公司基础技术还是比较原始的,这跟行业过分强调“好产品是运营出来的”也有关系,基础研发通常不受重视,长此以往,只能在门槛低的领域打拼,与Google的技术差异就不止10年了。

(图:大型机GEORGE的纸带编程年代)
分享到:
评论

相关推荐

    sa.rar_SA OA系统_SA 办公系统_sa oa_sa系统_办公管理系统

    SA OA系统,全称为"SA Office Automation System",是一种基于信息技术的办公自动化解决方案,旨在提升组织内部的工作效率,实现无纸化办公,并优化业务流程。OA系统的核心目标是通过自动化和信息化手段,使得日常...

    SA9302L-CSP49.pdf_sa9302_sa9302l_sa9302解码芯片_zip_

    总的来说,SA9302L-CSP49.pdf文件对于那些从事音频设备开发、音频系统设计或对高级音频解码感兴趣的工程师来说是一份宝贵的参考资料。通过深入研究这份资料,工程师可以学习到如何正确使用和优化SA9302L解码芯片,...

    429错误SA口令被更改或系统错误

    总结一下,"429错误SA口令被更改或系统错误"涉及到网络请求限制和数据库访问权限两个关键问题。对于429错误,我们需要理解和遵守服务器的速率限制政策,合理调整请求策略;对于SA口令被更改,应确保正确更新所有相关...

    Sa口令被更改或系统错误,系统将推出

    点开 用友 系统管理 提示:“Sa口令被更改或系统错误,系统将推出”

    5G NR SA系统内切换优化指导书.docx

    《5G NR SA系统内切换优化指导书》深入解析了5G独立组网(SA)模式下系统内的同频切换优化技术,旨在帮助网络优化人员有效解决和排查切换过程中的问题。本文档涵盖的关键概念包括SA系统内切换的测量事件、多波束测量...

    sa6155_sa8155_sa8195__automotive_reference_platform_user_guide

    《SA6155/SA8155/SA8195 汽车参考平台(ADP AIR)用户指南》 本文档是高通公司及其关联企业为SA...通过这份用户指南,开发者和工程师可以深入理解如何优化这些芯片在汽车电子系统中的性能,从而提升车辆的智能化水平。

    rx8025sa.zip_8025SA 例程_8025时钟_RX-8025SA_RX8025SA_rx8025

    RX8025SA是一款高性能的实时时钟(RTC)芯片,常用于嵌入式系统和电子设备中,...在深入研究源代码之前,建议先查阅RX8025SA的数据手册,了解其内部结构、寄存器配置和通信协议,这对于理解代码的工作原理至关重要。

    5G SA核心网架构及关键技术—咨询工程师继续教育.docx

    作为一名咨询工程师,了解 5G SA 核心网架构和关键技术是非常必要的。本文将对 5G SA 核心网架构和关键技术进行详细的介绍。 5G SA 核心网架构 5G SA 核心网架构是指基于 5G 新空口(5G NR)和核心网(5GC)共同...

    SA9023 AISO 驱动

    1. **硬件初始化**:安装驱动后,操作系统能够识别SA9023芯片并进行必要的初始化设置,如配置工作模式、设置时钟频率等。 2. **数据传输管理**:驱动程序负责管理数据在CPU与SA9023芯片之间的高效传输,确保数据...

    80-pe986-1_t_sa8155_sa8150_sa8155p_sa8150p_device_specification

    综上所述,SA8155/SA8150/SA8155P/SA8150P作为新一代高通Snapdragon汽车信息娱乐系统级芯片,凭借其先进的技术和强大的性能,在提高驾驶安全性、提升乘客娱乐体验方面发挥着重要作用。无论是从硬件设计还是软件功能...

    SA超强拿系统权限攻击(国外的)

    【标题】:SA超强拿系统权限攻击(国外的) 在网络安全领域,"SA超强拿系统权限攻击"是指一种针对特定系统或应用的安全漏洞利用技术,通常由黑客利用以获取目标系统的最高控制权,即系统管理员权限。这里的"SA"可能...

    Qualcomm SA8295P智能座舱系统完整方案.docx

    Qualcomm SA8295P智能座舱系统完整方案 方案概述 本方案基于Qualcomm SA8295P平台,设计用于现代智能座舱系统。方案集成了核心处理器、电源管理、存储、显示、摄像头系统、无线通信、5G模组、V2X通信模块等组件,...

    RX8025SA.rar_RX-8025SA 驱动_RX8025SA STM32_STM32 I2C_rx8025sa 驱动

    这个压缩包包含了必要的源代码和头文件,用于在基于STM32的系统中实现对RX8025SA的通信。 RX8025SA是一款高精度的实时时钟(RTC)芯片,广泛应用于嵌入式系统中,提供精确的时间保持功能。它通常通过I2C总线与主...

    由sa被降权引发的一点点讨论

    理解sa被降权的含义对于安全工作至关重要。如果sa账户虽然在数据库中拥有较高权限,但其在操作系统中被降权,那么通过sa账户执行的一些攻击可能无法成功,因为操作系统级别的权限限制了其执行能力。即使攻击者能够...

    G9SA-301安全继电器

    此外,G9SA系列还提供了扩展模块,如G9SA-EX3014,它能够与G9SA-301、G9SA-501、G9SA-321或G9SA-TH301连接,以增加系统的功能和触点数量。如果需要带有延时关闭功能的扩展模块,也有相应选项,以适应更复杂的系统...

    SA8155P-ADP-Product-Brief.pdf

    SA8155P Automotive Development Platform 产品简介 SA8155P Automotive ...SA8155P ADP 平台是一个功能强大、高性能的汽车开发平台,旨在帮助 OEM 和生态系统合作伙伴快速开发和部署下一代车载信息娱乐解决方案。

    浅谈SQL Server系统中SA弱口令的危害及解决方法.pdf

    浅谈SQL Server系统中SA弱口令的危害及解决方法 SQL Server系统中的SA弱口令是一种潜在的安全威胁,可能被黑客攻击。SA弱口令是指SQL Server系统默认管理员SA的口令过于简单,容易被黑客利用破解。SA账号具有数据库...

    建立NOSA安健环综合管理系统工作导则.doc

    NOSA安健环综合管理系统工作导则 NOSA安健环综合管理系统工作导则是指建立一个完整的安健环管理系统,涵盖了从初访到系统回顾的整个过程。该系统旨在确保企业的安健环管理达到国际标准,提高企业的安健环管理水平,...

    CINRAD_SA雷达LINUX操作系统安装解析.pdf

    本文档主要介绍了CINRAD_SA雷达LINUX操作系统的安装解析,旨在帮助相关雷达工作人员更好地理解和掌握LINUX操作系统的安装过程。 一、介绍 CINRAD_SA雷达原本安装的是Windows操作系统,但是该系统的稳定性和安全性...

Global site tag (gtag.js) - Google Analytics