基本信息

【插图】

编辑推荐
高级运维架构师、资深系统运维工程师十余年工作经验总结,姊妹篇《构建高可用Linux服务器》被《程序员》杂志和51CTO等*威媒体评为“10大*具技术影响力的图书”和“*受读者喜爱的原创图书”。
一线运维人员实际工作总结和提练,所涉及的知识点涵盖了目前流行的运维技术。
基于笔者一线运维工作提炼,从Linux集群经典案例分享、Python自动化运维和亿级PV网站架构设计等多角度讲解,以实践案例指导读者掌握到Linux系统集群和自动化运维技巧及如何设计高并发高流量网站架。
内容简介
作译者
洪春(抚琴煮酒),高级运维架构师、资深运维工程师,在电子商务领域及云计算领域工作10多年,在Linux集群、自动化运维、DevOps及高并发高流
量网站架构设计等方面进行了深入的研究;在大量一线实践中积累了丰富的经验。精通负载均衡高可用和Python自动化运维技术,擅长高流量高性能网站架构
设计。51CTO和ChinaUnix等知名社区特邀专家,ChinaUnix论坛“集群和高可用”及“监控及自动化运维技术”版版主,在社区内发表了大
量技术文章,深受社区网友好评。
目录
推荐序二
前言
第1章 系统架构设计的构建基础1
1.1 网站架构设计相关术语1
1.1.1 什么是HTTP 1.11
1.1.2 什么是Web 2.02
1.1.3 软件开发C/S结构与B/S结构的区别3
1.1.4 评估网站性能的专业术语5
1.2 IDC机房的选择及CDN的选型6
1.3 如何根据服务器应用选购服务器7
1.4 CentOS 6.4 x86_64最小化安装后的优化13
1.4.1 系统的基础优化13
1.4.2 优化Linux下的内核TCP参数以提高系统性能19
1.4.3 CentOS 6.4 x86_64系统最小化优化脚本22
1.4.4 Linux下CPU使用率与机器负载的关系与区别23
1.5 MySQL数据库的优化25
1.5.1 服务器物理硬件的优化25
1.5.2 利用tuning-primer脚本来调优MySQL数据库25
1.6 小结28
前言
笔者从事系统运维和网站架构设计的工作已有10多年,现在在一家外企担任云平台架构师。云计算是现在的主流技术,未来也有很好的发展趋势,云计算的流行对于传统的运维知识体系来说,其实也造成了冲击,有很多读者经常向笔者咨询工作中的困惑,比如从事系统运维工作3~5年后就不知道该如何继续学习和规划自己的职业生涯了。因此笔者想通过此书,跟大家分享一下自己的工作经验和心得(包括传统运维和云平台运维工作的区别与对比),以期解决大家在工作中的困惑。本书提供了大量项目实践和线上案例,希望能让大家迅速了解Linux运维人员的工作职责,快速进入工作状态并找到成长方向。希望大家通过阅读此书,能够掌握Linux系统集群和自动化运维及网站架构设计的精髓,从而能够轻松愉快地工作,并提升自己的职业技能,这就是笔者写作此书的初衷。
运维架构师之路
在成为运维架构师之前,笔者从事过很长一段时间的系统集成、运维和管理工作,在CDN门户网站、电子广告、电子商务领域也有不少的沉淀和积累,在之前的《构建高可用Linux服务器》一书中已经跟大家分享了很多跟Linux集群有关的知识。笔者目前的主要工作职责是维护和优化公司的DSP电子广告业务平台,主要方向是云计算和大数据方面。需要维护的数据中心和机器数量非常之多,所以自动化运维和DevOps是目前的主要工作方向,此外,也会涉及网站架构设计及调优工作,因此在此书中特意将这部分工作经验分享出来,希望大家能从中学到新的知识体系,借以提升自己的职业技能。
读者对象
本书适合以下读者阅读。
中高级系统管理员
系统架构设计师
高级程序开发人员
运维开发工程师
如何阅读本书
本书是笔者对实际工作中积累的技术和经验所做的总结,涉及大量的知识点和专业术语。全书总共分为三大部分,第一部分包含第1章和第2章,主要讲解进行系统架构设计的软硬件环境,以及生产环境下的Shell脚本和Python脚本。其中,第2章的内容是以Shell为主,Python为辅,Shell部分讲得比较详细,Python部分需要重点关注的地方也有所提及。之所以这样安排,主要是考虑到大多数搞开发的读者或DevOps工程师都是Java程序员出身,对Shell脚本语言不是很熟悉。第二部分包含第3章、第4章和第5章,主要讲自动化运维,包括Fabric、Ansibel和Puppet三大工具,大家可以结合自己的实际环境来选择对应的工具。第三部分包含第6章、第7章和第8章,主要讲的是Linux集群和网站架构设计,特别是第8章,分别以百万PV、千万PV及亿级PV的网站为例来详细说明网站系统架构设计的相关技术,然后细分五层来解说网站的架构,并指出了设计网站的压力及关注点所在。
大家可以根据自己的职业发展和工作需求来选择不同的章节进行阅读或学习。
关于本书中的配置文件、Shell脚本和Python脚本的编号,这里也略作说明,比如1.5.3节中有1.sh,表示这是1.5.3节的第一个Shell脚本;如果是2.py,则表示是1.5.3节的第二个Python脚本;其他依此类推,在哪个章节中出现的配置文件或脚本就在哪个章节中寻找,这样对照起来阅读理解会比较方便。此外,书中多次出现的Nginx配置文件nginx.conf也在对应的章节里。本书相关的GitHub地址为http://github.com/yuhongchun/automation。
勘误
尽管笔者花费了大量的时间和精力来核对文件和语法,但书中难免还会存在一些错误和纰漏,如果大家发现有任何问题,都请及时反馈给我,相关信息可以发到个人邮箱yuhongchun027@gmail.com。尽管无法保证对于每一个问题都会有一个正确答案,但我肯定会努力回答并且指出一个正确的方向。
致谢
感谢爱女媛媛的出生,你的降临是上天赐给我的最好礼物,是我进行写作的源泉和动力。
感谢我的家人,他们在生活上对我的照顾无微不至,让我有更多的精力和动力去工作和创作。
感谢好友三宝这么多年来对我的信任和支持,从始至终一直都在支持和信任我。
序言
在全球“互联网+”的大背景下,互联网创业企业的数量如雨后春笋般大量产生并得到了快速发展!对“互联网+”最有力的支撑就是Linux运维架构师、云计算和大数据工程师,以及自动化开发工程师等!
但是,随着计算机技术的发展,企业对Linux运维人员的能力要求越来越高,这就使得很多想入门运维的新手不知所措,望而却步,甚至努力了很久却仍然徘徊在运维岗位的边缘;而有些已经工作了的运维人员也往往是疲于奔命,没有时间和精力去学习企业所需的新知识和新技能,从而使得个人的职业发展前景大大受限。
本书就是在这样的背景下诞生并致力于为上述问题提供解决方案的,本书是作者余洪春先生10多年来一线工作经验的“再”结晶,此前作者已经出版过Linux集群方向的图书(《构建高可用Linux服务器》),本次出版的书是作者对运维行业的再回馈。
书中不仅涵盖了入门运维人员必须了解的IDC和CDN服务的选型、Linux系统及常见服务的优化实践内容,还有对于企业运维人员需要的大规模集群场景下必备的运维自动化Shell和Python企业开发应用实践案例、热门的自动化运维工具的企业应用实践、大规模集群及高可用的企业案例分享与安全防护等。
本书能够帮助运维人员掌握业内运维实战专家的网站集群的企业级应用经验的精髓,从而以较高的标准胜任各类企业运维的工作岗位,并提升自己的运维职业发展竞争力,值得一读!
—老男孩老男孩Linux实战运维培训中心总裁
《跟老男孩学Linux运维:Web集群实战》作者
媒体评论
岗位的边缘;而有些已经工作了的运维人员也往往是疲于奔命,没有时间和精力去学习企业所需的新知识和新技能,从而使得个人的职业发展前景大大受限。
本书就是在这样的背景下诞生并致力于为上述问题提供解决方案的,本书是作者余洪春先生10多年来一线工作经验的“再”结晶,此前作者已经出版过Linux集群方向的图书(《构建高可用Linux服务器》),本次出版的书是作者对运维行业的再回馈。
——老男孩Linux实战运维培训中心总裁 老男孩
本书作者余洪春先生和我相识于ChinaUnix举办的一次技术交流活动——“千万级PV高性能高并发网站架构与设计交流”,
当时他已经在宣传自己的*一本著作——《构建高可用Linux服务器》,该书凝聚并整合了他多年来在一线工作的经验结晶,以至时至今日,该书仍是一本在国
内非常经典的运维原创著作,现在已经更新到第三版,这种对技术不断进行完善的坚持及工匠精神让我深深折服。这次能受邀为他的这本新书《Linux集群和自
动化运维》写推荐序,让我倍感荣幸。
本书覆盖了Linux集群服务的核心技术,同时还介绍了基于Python语言构建的主流自动化运维工具,包括Python脚本、
Fabric、Ansible等,这些都是DevOps工具元素周期表中*闪亮的内容,也是运维人员必备的技能。本书中分享的案例是余洪春先生多年实战经
验的精华,具有非常高的参考价值及借鉴意义。
——腾讯高级工程师 刘天斯