首页>参考读物>计算机科学与技术>计算机网络

SaltStack技术入门与实战
作者 : 刘继伟 沈灿 赵舜东 编著
丛书名 : 实战
出版日期 : 2015-11-10
ISBN : 978-7-111-51822-8
定价 : 59.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 226
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

SaltStack是开源的系统自动化配置和管理工具,用于管理基础设置的轻量级工具,容易搭建,为远程管理服务器提供一种更好、更快速、更有扩展性的解决方案,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯。
本书系统介绍SaltStack的配置、部署与二次开发方法。本书先介绍为何使用SaltStack,让读者对SaltStack有一个基本的认识,接着介绍SaltStack的基本原理以及概念,然后从系统、配置、包、进程&服务, 对salt的使用进行全方位的解析,并从一个简单负载的例子对SaltStack进行演示,再用1-2个比较变态的需求来展示SaltStack的强大功能。最后介绍SaltStack的拓展功能,以及与监控相关的示例,还介绍SaltStack二次开发,以及综合实例。本书深入浅出地讲解了SaltStack,运维与开发人员都可以从中受益。

图书特色

SaltStack公司创始人兼CTO诚挚作序推荐。
系统化地讲解 SaltStack 的概念、架构与工作原理,使读者对SaltStack有完整而深入的了解,可快速入门并融会贯通,进而搭建自己的自动化运维平台。

封底
SaltStack是管理IT基础设施的强大工具,为远程管理服务器提供了高扩展性、高速度、高效的轻量级解决方案。本书介绍这个强大工具的基础知识和使用方法,使读者可快速入门,掌握这个工具来部署管理自己的平台。作者不仅分享了大量实战案例,还总结了自己的实战经验,内容丰富,实用性强。

主要内容:
SaltStack的基础概念、组件和实例演示。
扩展SaltStack 组件,第三方调用SaltStack。
扩展SaltStack架构,开发SaltStack Web平台。
对SaltStack进行小改造。
SaltStack排错与自动化运维。


刘继伟 资深开发与运维人员, 负责某集团统一运维平台以及云计算平台的开发;长期关注开源技术, 熟悉 OpenStack、SaltStack等相关技术;“中国OpenStack用户组”管理员,“中国SaltStack用户组”发起人之一。

沈灿 运维圈知名博主“灿哥”,曾就职于蓝讯、京东、Yottaa等互联网公司,对CDN和自动化运维技术有着丰富的工作经验,乐于分享,有很多技术文章和讲座广为流传。

赵舜东 曾在武警某部负责指挥自动化系统的架构和运维工作,2008年退役后一直从事互联网运维工作,“中国SaltStack用户组”发起人之一。

图书前言

为什么用SaltStack
常规运维很大一部分工作涉及业务的配置管理和状态维护,目前,基于状态(系统状态、代码状态、配置状态和进程状态)的配置管理已经得到极大发展,并且让运维有了很大的进步;出现了各种工具和平台,从最早的CFEngine到后来的Puppet、Chef,以及最近的SaltStack、Ansible,每一种工具的出现都是为了满足新的场景以及解决之前解决不了的问题。新工具的出现层出不穷,令人眼花缭乱,在实际应用中,这些工具之间到底是替换还是结合,在每个特定的场景以及选型的理解上也会有所不同,最终可能以完全不同的形态进行展示。
但是人的基本特点是不会变的,就是我们都很懒,我们不想维护过多的平台,我们都希望学习过程尽可能简单,使用工具强大,二次开发的成本也低,从这几方面讲,SaltStack可能是一个很好的选择。
本书定位以及读者对象
本书定位为一本工具书,介绍一些SaltStack实用的功能,帮助想了解和入门SaltStack的朋友在较短的时间内,全面并且稍微深入地了解SaltStack,进而自己进行探索深入。
勘误与支持
由于作者水平有限,时间比较紧张,书中难免会出现错误以及不准确的地方,希望读者能够批评指正。对于本书的任何问题请反馈到SaltStack中国用户组QQ群:294953305,我们会及时进行处理。
本书相关代码可以在Github上获取:https://github.com/cssug。
致谢
首先感谢SaltStack团队创造这么好的工具。特别感谢机械工业出版社以及吴怡编辑能够给我们一个机会来出版本书。感谢为本书做出卓越贡献的姚炫伟(微博ID:绿小小肥)、曹正(微博ID:CooCla)、张会源(微博ID:神奇的魔法师)、吴兆松(微博ID:itnihao)、白少华。最后感谢我们的家人和朋友一路给予的支持和帮助。

刘继伟
2015年秋于北京

上架指导

计算机\网络

封底文字

SaltStack是管理基础设施的强大工具,为远程管理服务器提供了高扩展性、高速度、高效的轻量级解决方案。本书介绍这个强大工具的基础知识和使用方法,使读者可快速入门,掌握这个工具来部署管理自己的平台。作者不仅分享了大量实战案例,还总结了自己的实战经验,内容丰富,实用性强。

主要内容:
SaltStack的基础概念、组件和实例演示。
扩展SaltStack 组件,第三方调用SaltStack。
扩展SaltStack架构,开发SaltStack Web平台。
对SaltStack进行小改造。
SaltStack排错与自动化运维。

图书序言

When I started writing SaltStack I wanted to create a system that would be useful in many vast scenarios. A system that would be able to scale to any need, small or large, and a system that would allow people to better automate processes far beyond the datacenter.
To my knowledge, this is the first book on Salt to be published in China. I hope the contents of this book will prove valuable to those in China seeking to learn Salt Stack and that this book will be a resource to them.
China SaltStack User Group has been lead for many years by talented individuals who I would like to express my thanks and gratitude to. The Chinese users and contributors to Salt have helped the project move forward in immeasurable ways!
【译文】
当我开始SaltStack项目的时候,其实是想构建一个多种复杂环境均可用的(运维配置管理)系统,可以做到按需扩展,环境可大可小,能够真正帮助数据中心更好地实现自动化运维流程。
据我所知,本书是中国地区的关于SaltStack的第一本书籍。我希望本书的出版可以帮助中国地区那些正在苦寻SaltStack学习之路的朋友们。
中国SaltStack用户组(http://www.saltstack.cn/)自成立以来,持续地为社区做出了杰出贡献,来自中国的用户和参与者为推动SaltStack项目的发展起到了不可估量的作用,在此,我深表感谢和感激!
Thomas S. Hatch
SaltStack 公司创始人兼CTO

作者简介

刘继伟 沈灿 赵舜东 编著:暂无简介

图书目录

序言
前言
第1章 SaltStack入门 1
1.1 SaltStack服务架构 2
1.2 SaltStack架构安装 2
1.2.1 SaltStack软件依赖 3
1.2.2 yum方式安装(采用EPEL源) 4
1.2.3 pip方式安装 4
1.2.4 源码安装 4
1.2.5 salt-bootstrap安装 5
1.3 开始SaltStck之旅 6
1.3.1 证书管理 6
1.3.2 日常命令参数 7
1.4 熟悉SalStack配置文件 10
1.4.1 Master配置文件 10
1.4.2 Minion配置文件 14
第2章 SaltStack组件 17
2.1 从管理对象说起 17
2.2 管理对象属性 20
2.2.1 通过Minion配置文件定义Grains 21
2.2.2 通过Grains模块定义Grains 22
2.3 数据管理中心 23
2.4 针对管理对象操作 25
2.5 配置管理从这里开始 27
2.6 执行结果处理 31
2.7 Job管理 33
2.8 Event和Reactor系统 37
2.9 Renderer组件 40
2.10 其他组件 43
2.10.1 Mine 43
2.10.2 Peer 44
第3章 SaltStack实践案例 49
3.1 环境规划 50
3.1.1 实验环境设置 51
3.1.2 SaltStack环境设置 51
3.2 YAML编写技巧 52
3.2.1 什么是YAML 52
3.2.2 规则一:缩进 52
3.2.3 规则二:冒号 52
3.2.4 规则三:短横杠 53
3.3 Jinja使用技巧 54
3.3.1 什么是Jinja 54
3.3.2 如何区分模板文件 54
3.3.3 Jinja基本使用 55
3.3.4 Jinja逻辑关系 55
3.4 系统初始化 56
3.4.1 DNS配置 56
3.4.2 History记录时间 56
3.4.3 命令操作审计 57
3.4.4 内核参数优化 57
3.4.5 epel仓库 58
3.4.6 Zabbix Agent安装 58
3.4.7 初始化环境引用 60
3.5 Haproxy配置管理 61
3.5.1 pkg配置 62
3.5.2 Haproxy服务配置 62
3.5.3 编写Haproxy安装SLS 63
3.5.4 Haproxy业务引用 65
3.5.5 执行Haproxy状态 67
3.5.6 查看Haproxy状态 67
3.6 Keepalived配置管理 68
3.6.1 软件包准备 68
3.6.2 编写Keepalived安装SLS 69
3.6.3 Keepalived业务引用 70
3.6.4 执行Keepalived状态 72
3.6.5 Haproxy+Keepalived测试 73
3.7 Memcached配置管理 74
3.7.1 www用户配置 75
3.7.2 Libevent配置 76
3.7.3 Memcached配置 76
3.7.4 Memcached服务 77
3.7.5 执行Memcached状态 78
3.8 Nginx配置管理 78
3.8.1 PCRE模块 79
3.8.2 Nginx模块 80
3.8.3 Nginx配置文件 81
3.8.4 编写Nginx服务SLS 82
3.8.5 PHP(FastCGI)配置管理 83
3.8.6 PHP Redis模块 86
3.8.7 PHP Memcached模块 86
3.9 业务引用模块 87
3.9.1 BBS论坛案例 88
3.9.2 修改top.sls 89
3.9.3 执行状态 89
3.9.4 案例扩展的思路 92
第4章 扩展SaltStack组件 93
4.1 扩展Grains 93
4.1.1 理解扩展Grains流程 94
4.1.2 扩展Grains案例 96
4.2 扩展Module 96
4.2.1 理解扩展Module原理 97
4.2.2 扩展Module案例 99
4.3 扩展state 102
4.3.1 理解扩展state原理 102
4.3.2 扩展state案例 104
4.4 ext_pillar 与 ext_nodes 108
4.4.1 理解ext_pillar 流程 108
4.4.2 理解 ext_nodes流程和案例 110
4.4.3 ext_pillar实际案例 115
4.4.4 扩展ext_pillar 119
4.5 SaltStack git 文件服务器 120
第5章 第三方调用SaltStack 127
5.1 通过Python API调用 127
5.1.1 Python API工作原理 128
5.1.2 Python API 介绍 133
5.2 通过RESTful API调用 138
5.2.1 Restful API配置环境部署 139
5.2.2 通过 Restful API 实现日常操作 141
第6章 SaltStack架构扩展 145
6.1 无Master架构 145
6.1.1 设置无Master运行 146
6.1.2 关闭salt-minion 146
6.1.3 使用salt-call执行状态 146
6.2 多Master架构 147
6.2.1 配置多Master 147
6.2.2 Master数据存储 147
6.2.3 设置Minion 148
6.3 Salt Syndic 149
6.3.1 Syndic配置 149
6.3.2 高级Master配置 150
6.3.3 Syndic测试 150
6.3.4 Syndic是如何工作的 151
6.3.5 Syndic的优缺点 151
6.4 Salt SSH 152
6.4.1 Salt Rosters 153
6.4.2 使用Salt SSH 154
6.4.3 基本使用 154
6.4.4 生产实践 155
第7章 SaltStack Web 平台开发 161
7.1 SaltStck Web平台开发流程 161
7.1.1 确定技术栈 162
7.1.2 做原型图 163
7.1.3 UI设计 166
7.2 与SaltStack 联动 166
7.3 实践 168
7.3.1 框架搭建 168
7.3.2 功能开发 170
7.3.3 效果演示 174
第8章 Hack SaltStack 177
8.1 实现命令执行结果的自动采集与监控 177
8.1.1 MySQL建表 178
8.1.2 自定义returner 179
8.1.3 通过fluent采集数据 180
8.1.4 结果查询 182
8.2 实现系统信息变更的自动上报 182
8.2.1 上报系统的需求与结构 183
8.2.2 软件选型 183
8.2.3 系统构建 184
8.2.4 基于Event的扩展 188
第9章 SaltStack排错 193
9.1 排错思路 193
9.1.1 确定问题范围 194
9.1.2 确保环境正常 194
9.1.3 定位问题 195
9.1.4 求助 198
9.1.5 Bug修复 200
9.2 排错实战 203
第10章 SaltStack与运维 205
10.1 SaltStack与自动化运维 205
10.1.1 运维的工作内容 205
10.1.2 运维自动化发展历程 207
10.1.3 运维标准化、工具化 207
10.1.4 运维Web化、平台化 208
10.1.5 运维服务化、API化 209
10.1.6 运维智能化、自动化 210
10.2 SaltStack与CMDB 210
10.2.1 信息采集&存储 212
10.2.2 信息匹配 212
10.2.3 资产展示 213

教学资源推荐
作者: (美)Behrouz A.Forouzan 著
作者: 肖明
作者: 陈鸣 李兵 雷磊 编著
作者: 朱先强 杨国利 朱承 张维明 著
参考读物推荐
作者: 山金孝 潘晓华 刘世民 著
作者: Jean Armour Polly
作者: 王叶 李瑞华 等编著
作者: 王芃 编著