运维工种对于自动化的强烈需求已经显漏无疑——作为一个古老的技术工种,在几台、几十台服务器时尚可人肉维护,面对云计算时代动辄上百上千的服务器,单凭人肉维护显然束手无策。想像一下诸如谷歌、阿里云的上万台服务器,如果单凭人工维护恐怕运维就会成为人员需求量最高的工种,没有之一。
在Devops备受推崇的时代,即使开发也难免要接触到一些运维工作。所以今天为大家整理了一些自动化运维的学习资源,希望能够给大家提供一些帮助。作为一名运维工程师,这些只是可能是你的必备,作为一名非运维技术人员,不妨记录下来,有需求之后再行查找也不迟。
书籍推荐技术学习必然无法绕开书籍资料。此处整理10册书籍,对于读者而言不必全部阅读,只需要挑选符合自己技能方向的内容即可。大部分书籍都可以在网络上发现电子版的资料。
《Puppet实战》
《puppet实战》详细讲解了puppet的功能和使用方法,深入剖析了puppet的工作原理,系统总结了puppet的使用技巧,包含大量来自一线的实战案例和最佳实践。
全书一共20章,共分为四部分:准备篇(第1~4章)介绍了puppet用途、组织结构、工作原理、核心配置文件、各种平台下的安装与配置,以及它的运行环境,是使用puppet前必须做好的准备工作;基础篇(第5~10章)详细讲解了puppet的理论知识和功能使用,puppet的语法与命令、资源、模块、类、模板、节点管理,以及facter、数组、函数、变量和标签;实战篇(第11~13章)通过几个经典案例,包括大规模nginx集群的部署方案、分布式监控系统部署方案、openstack快速部署方案等,使读者能快速将puppet运用到实践中;进阶篇(第14~20章)综合讲解了puppet的扩展模式、版本控制、报告系统、控制台、扩展工具及mcollective,让读者了解一个完整的puppet生产流程。
《nagios系统监控实践》
《nagios系统监控实践(原书第2版)》从实际出发,在开篇就系统运维中的监控提出一系列需求,从而展开对nagios系统的初步介绍(第1~2章),随后从实用的角度,全面、详细地讲解了nagios安装、配置的相关内容(第3~4章)。通过简化配置、实施监控等工作(第5~6章),用大量的示例展示nagios的实际能力。然后,在扩展方面介绍了一些常用的方案(第7章),并从原理、案例到最后的diy,一步步带领读者进入数据可视化的世界(第8章)。此外,还介绍了nagios商业版本——nagios xi的功能特色(第9章)。最后,介绍nagios事件代理(neb),并用c语言实现完整neb插件(第10章),使读者进一步掌握neb的工作机制。
《Zabbix监控系统深度实践》
《Zabbix监控系统深度实践(第2版)》由浅入深,全面讲解Zabbix应用与原理,是作者多年实战经验的总结和浓缩。在概念篇,从一个简单但完整的入门案例讲起,案例中有最基本的概念介绍,通过案例帮助那些只需将服务器加入监控,就能看到监控数据的读者;然后逐步深入,在进阶篇介绍Zabbix的各方面的配置;在设计篇中对Zabbix的内部原理进行深入剖析,包括Zabbix与数据库的交互、Zabbix数据库表的设计等,并分享作者在Zabbix上踩过的坑以及解决问题的思路;最后会在开源部分介绍58同城开源的Zatree和Chrome的插件、手机客户端等工具。
《Zabbix监控系统深度实践(第2版)》适合想使用Zabbix构建监控系统的技术人员阅读,也适合有一定基础、对于Zabbix有更高的要求的读者。
《Linux系统命令及shell脚本实践指南》
全书共计18章,从知识结构上分为三部分。第一部分为前8章,全面介绍了linux的基础知识和常用命令;第二部分为第9章和第10章,主要是linux下交互和非交互编辑器的使用;第三部分为第11~18章,主要是shell脚本开发。这三部分内容各有偏重,读者可以根据实际需要选择阅读。
《Linux命令行与shell脚本编程大全》
本书是一本关于Linux 命令行与shell 脚本编程的全面教程。全书分为四部分:第一部分介绍Linuxshell 命令行;第二部分介绍shell 脚本编程基础;第三部分深入探讨shell 脚本编程的高级内容;第四部分介绍如何在现实环境中使用shell 脚本。本书不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。
《Linux软件管理平台设计及实践》
全书共8章,在逻辑上分为三个部分:
第一部分(第1~4章)为基础技术篇,详细介绍了rpm的概念、组织方式和制作方法,另外对yum服务进行了深入的分析,目的是为对软件开发感兴趣的读者在rpm和yum领域提供导引,为运维和系统管理人员提供指导,帮助读者在rpm/yum的使用和理解方面扫清障碍。
第二部分(第5~6章)为问题分析和系统设计篇,结合企业中软件管理的现状,提出问题,然后从基本的系统开始,逐步解决问题,优化方案,最终形成一套软件管理平台的设计方案,适合在企业中负责软件平台优化和系统服务管理的人员阅读。
第三部分(第7~8章)为实现篇,如果读者想将本书中设计的软件管理平台应用到自己所在企业的环境中,可以参考这部分的内容进行详细设计和编码实现。附录列举了rpm和yum在日常使用中经常会遇到的问题以及对应的解决方法。
《高性能Linux服务器构建实战:系统安全、故障排查、自动化运维与集群架构》
全书共14章,分为四个部分:
安全运维篇(1-3章)主要讲解了服务器安全运维、网络安全运维和数据安全运维的关键技术和方法;
运维故障排查篇(4-5章)从服务器系统和应用软件两个维度讲解了运维故障的排查思路,以及常见的和经典的运维故障的解决方案;
自动化运维篇(6-9章)主要讲解了海量主机的自动化部署和配置、自动化监控、分布式监控等大规模集群运维所需的各种工具(pssh、pdsh、mussh、Ganglia、nagios、Centreon等)和方法;
集群架构篇(10-14)讲解了如何构建和优化基于Web和MySQL数据库的高性能集群和高可用的负载均衡集群。
《构建高可用Linux服务器》
《构建高可用Linux服务器(第3版)》最大的特点就是与实践紧密结合,所有理论知识、方法、技巧和案例都来自实际生产环境,涵盖Linux服务器构建与优化、服务器故障诊断与排除、Shell脚本、高可用Linux集群构建、MySQL性能调优及高可用、自动化运维(Puppet)、安全运维等主题,所有内容都围绕“如何构建高可用的Linux服务器”这个主题深度展开。
《Python自动化运维:技术与最佳实践》
全书一共16章:
基础篇(1-4章)详细介绍了系统基础信息、业务服务监控、定制业务质量报表、系统安全等基础和常用模块;
高级篇(5-12章)深入讲解了批量运维管理器pexpect、paramiko、Fabric,集中化管理平台Ansible、Saltstack,统一网络控制器Func等高级功能,涵盖自动化操作、系统管理、配置管理、集群管理及大数据应用等主题;
案例篇(13-16章)详细介绍了4个来自不同平台的运维案例,如何从零开始打造一个B/S自动化运维平台、如何打造Linux系统安全审计功能、如何构建分布式质量监控平台、如何构建桌面版C/S自动化运维平台,这4个案例均来自实际生产环境。
《Python for UNIX and Linux System Administration》
《Python UNIX和Linux系统管理指南》介绍了Python语言如何为管理uNIx和Linux服务器提供各种更加有效的任务处理方式。书中各章都提出了具体的管理问题,如并发或数据备份,然后通过Python示例提供了解决方案。通过《Python UNIX和Linux系统管理指南》,读者可以学习如何用Python开发自己的一套命令行工具来解决诸多问题。
工具文档
无论是看书还是实战,只要使用工具,文档总是无法躲避的一环。
(汇总了一下才发现工具实在太多了...我就不妄想把所有东西列出来了,大家看自己日常需求然后Google吧,毕竟找个文档根本算不上什么问题)
资讯源专门提供自动化运维资讯的网站还不多,大多数资讯都在运维、语言等技术社区出现。
运维资讯聚合站点,看名字就知道运维技术内容占据大多数地位。不过虽然内容较多,但是原创性存疑。
掘金社区内容质量相对较高,不过内容的数量相对其他站点要少很多。不过精品路线本就代表着拒绝大多数地址文章,所以还是值得推荐的。
这个不用过多介绍,不过自从商业化之后社区的质量一直在下降,注意甄别吧~
更上一个差不多,不过运维的气氛要更浓一些。
这个不用怎么介绍吧?
————————————————————————
今天就先整理这些吧,有时间再给大家推荐一些博客和公众号~
为了方便大家学习,我建立了一个Python交流群,目前群内已经有1207个小伙伴,学习寂寞的小伙伴不妨一起来玩~群号:475035830
你想更深入了解学习Python知识体系,你可以看一下我们花费了一个多月整理了上百小时的几百个知识点体系内容: