SaltStack运维实战
  • 推荐0
  • 收藏2
  • 浏览907

SaltStack运维实战

刘英杰 (作者) 

  • 书  号:978-7-121-28639-1
  • 出版日期:2016-05-25
  • 页  数:252
  • 开  本:16(185*235)
  • 出版状态:上市销售
  • 维护人:陈晓猛
SaltStack(简称 Salt)是由 Thomas Hatch 于 2011 年创建的一个开源项目,初衷只是想构建一个快速的远程执行系统。后来经过快速发展和新功能的不断加入,演变成了现在的 Salt,如今 Salt 已经成为了一套强大的自动化运维管理平台。
本书力求用简洁易懂的方式给读者展示 Salt 的核心功能和使用思想,系统地介绍 Salt 的主要功能,从安装和最基本的远程执行开始,循序渐进地讲解 Salt 的方方面面,涉及 Salt 的模块代码编写、状态系统编写、架构扩展和 Salt 的高级应用等主题。书中实例丰富,希望读者可以通过本书掌握 Salt 的本质和思想,在自己的工作中应用 Salt 来提高运维效率。
简单快速管理服务器,完成服务器集群基础架构的建设,更为高效地管理基础架构
前 言
为什么要写本书
系统管理员和运维人员日常会进行大量的重复性操作,诸如安装软件、修改配置文件、创建用户、批量执行命令等。如果主机数量庞大,单靠人工来维护,单调冗繁的任务实在让人难以忍受。早期的运维人员会根据自己的生产环境写特定脚本来辅助完成这些大量重复性的工作。但是这些脚本不但复杂,难于维护,更为重要的是不可移植。总体上讲,系统管理员面临的问题主要分为两大类:一是系统状态维护(配置管理),二是远程执行命令。为了解决这些问题,诞生了很多开源软件,系统状态维护方面有Puppet、Chef、CFEngine、Ansible、SaltStack等,这些软件擅长维护系统状态,可根据定义使相应的主机达到某种状态。维护主机的整个生命周期,实现从系统安装初始化到下线整个过程的管理和控制。在远程命令执行方面的软件则有pssh、Fabric、Func、Rundeck、Ansible、SaltStack等,它们可以方便地对大量主机进行批量的命令执行操作。无论采用哪款软件,系统管理员所面临的问题都是一样的,即如何在多变复杂的环境中完成灵活的配置管理和命令执行。这就需要所用的软件本身足够强大,而且具备很好的可扩展性。SaltStack在这方面表现得十分出色,SaltStack(简称Salt)是由Thomas Hatch于2011年创建的一个开源项目。初衷只是想构建一个快速的远程执行系统。后来随着各种新功能的不断加入,演变成了现在的Salt。如今Salt已成为世界上最流行的开源项目之一,同时也是最流行的基础架构管理平台之一。
Salt灵活性强,既可进行大规模部署,也能进行小规模的系统部署。Salt 的设计架构适应于任意数量的服务器,从少量本地网络系统到跨越数个不同的数据中心,拓扑结构都是简单的服务器/客户端模型,配置简单,默认的配置几乎无须更改,只需要微调即可满足特定需求。不管你有几台、几百台甚至几千台服务器,都可以使用Salt在一个中心节点上对它们进行管控。使用Salt可以灵活定位任意服务器子集来运行命令或完成任务。也可以使用状态系统来定义被管理服务器需要达到的状态,并且只需要一条命令就可以在很短的时间内让对应的服务器变成你所定义的角色。由于Salt是用Python编写的,允许用户通过Python语言自定义功能模块,同时也为用户提供了大量的Python API接口,所以用户可以根据自己的需要进行简单快速的扩展。
本书希望以一种简洁的方式引导读者掌握Salt的核心功能和理念。学完之后,相信您会对简洁强大的Salt爱不释手!
一些建议
如果读者之前没有接触过配置管理类的软件,习惯了用脚本编译部署服务器环境,需要转变一下管理服务器的理念,不要再用编译源码包的方式部署服务器,请习惯用描述式的语言来部署服务器环境,配合自建的yum仓库把需要编译的软件制作成rpm包的形式进行管理,这样既便于管理软件版本也不需要每次部署都在服务器上对软件进行编译。
学习本书所需的环境
您需要几台Linux机器来运行本书中所涉及的示例,可以用主流的虚拟机软件搭建一个或多个Linux系统环境。操作系统最好是CentOS6.5,Salt版本是2015.5.5,当然大多数Linux主流版本都可以。如果您使用的操作系统不是CentOS6.5,那您得到的输出结果可能和本书中的结果会略有不同。
读者对象
本书最主要的读者是系统管理员和Linux运维人员。此外,任何和服务器相关的工作人员,包括研发人员或业余爱好者都可以通过本书掌握如何简单快速地管理服务器,完成服务器集群基础架构的建设。本书适用于任何想使用Salt更为高效地管理基础架构的技术人员。
致谢
特别感谢我的朋友罗庆昌,没有他的帮助就不可能完成这本书。还得感谢我在新浪微博工作期间的技术领导王春生,在春生的帮助和指引下让我有机会更深入地接触配置管理领域,另外还要感谢我现在的技术领导alanshao(绍宗文)和shawnding(丁晓坤),在他们的帮助下,让我对海量业务运维有了重新的认识。
让我们开启学习之旅吧!

刘英杰?
2016.3.2

目录

目录 阅读
第1章 开始使用Salt
第2章 通过Salt远程执行管理minion
第3章 编写自己的模块代码
第4章 通过state模块定义主机状态
第5章 通过Jinja2模板以及Grain和Pillar扩展主机状态
第6章 用highstate复合主机状态
第7章 SaltStack配置文件
第8章 SaltStack架构扩展
第9章 SaltStack高级话题

读者评论

电子书版本

  • Epub
  • Mobi

相关图书

Terraform:多云、混合云环境下实现基础设施即代码(第2版)

Yevgeniy Brikman ( (作者) 白宇 (译者)

Terraform工具已经成为DevOps领域的关键角色。在各种云平台和虚拟化环境(如AWS、Goolge Cloud、Azure等)中,可以对基础设施即代码(...

¥108.00

DevOps安全:云安全服务

Julien Vehent (作者) 覃宇 (译者)

本书主要介绍了 DevOps 实践中最容易被忽视的一环——安全,并且对云原生服务的安全保障也做了全面的阐述。书中详细介绍了 Web 攻击防范、权限验证、日志监控...

¥108.00

企业级DevOps技术与工具实战

刘淼 张笑梅 (作者)

本书包含DevOps理论的介绍,深入浅出地解析了DevOps体系所包括的Agile/Lean/ITSM/TPS各种方法的精粹和脉络,为DevOps爱好者提供了较...

 

SRE生存指南:系统中断响应与正常运行时间最大化

Nat Welch (作者) 冯文辉 冯文辉 (译者)

站点可靠性工程(Site Reliability Engineering,简称SRE)是一个令人兴奋的新兴领域,它专注于如何确保系统稳定、可靠地运行。本书基于一...

 

Zabbix企业级分布式监控系统(第2版)

吴兆松 (作者)

本书基于稳定版本Zabbix 4.0,对Zabbix的各项功能进行了详细而深入的讲解,包括监控系统规划、安装包定制、架构高可用、性能调优、指标数据采集、自动化处...

 

Nginx实战:基于Lua语言的配置、开发与架构详解

王力 王力 (作者)

本书主要讲解了Nginx在反向代理和应用开发中的作用,阅读本书可以了解Nginx在互联网开发中扮演的多个角色,充分利用这些角色的各项功能有助于提升服务的整体性能...

¥47.40