Книга о системе управления конфигурацией Puppet
Книга рассказывает о ситеме управления конфигурацией Puppet. В ней ОЧЕНЬ подробно описан процесс установки puppet практически на все платформы и в любых конфигурациях. Сделан краткий (в книге всего 200 страниц) обзор возможностей Puppet на момент написания (2007 год), в книге рассматривается версии Puppet 0.22.4 и 0.23.2. Подробно рассмотрена утилита Facter, которая позволяет получать данные о сервере и операционной системе, эта утилита используется в Puppet повсеместно. Также достаточно полно освещены вопросы масштабирования Puppet, генерации отчетов и оповещений о внесении изменений или ошибках.
Также можно найти советы по стилю создания манифестов, ресурсов, классов, нод и прочих элементов конфигурации.
Скачать «Pulling Strings with Puppet: Configuration Management Made Easy» (если ссылка перестанет работать пишите в комментариях, обновлю или вышлю на почту)
Оглавление
About the Author.----------------------------------------------------- ix
About the Technical Reviewer.----------------------------------------- xi
Acknowledgments------------------------------------------------------- xiii
Introduction.--------------------------------------------------------- xv
■ CHAPTER 1 Introducing Puppet----------------------------- 1
What Is Puppet?.------------------------------- 3
What Makes Puppet Different?------------------- 3
How Does Puppet work?-------------------------- 4
A Declarative Language----------------- 5
A Transactional Layer.----------------- 7
A Resource Abstraction Layer----------- 7
Puppet Performance and Hardware.--------------- 7
The Future for Puppet.------------------------- 8
Resources.------------------------------------- 8
Web.----------------------------------- 9
Mailing Lists.------------------------- 9
IRC.----------------------------------- 9
■ CHAPTER 2 Installing and Running Puppet.----------------- 11
Installation Prerequisites--------------------- 11
Installing Ruby.----------------------- 12
Installing Ruby from Source.----------- 12
Installing Ruby and Ruby Libraries from Packages-- 13
Installing Facter---------------------- 15
Installing Facter from Source---------- 15
Installing Facter from Package.-------- 16
Installing RDoc.----------------------- 17
Installing Puppet------------------------------ 18
Installing from Source----------------- 18
Installing Puppet by Package----------- 20
Installing Puppet from a Ruby Gem------ 21
Getting Started with Puppet-------------------- 23
Starting the Puppet Master------------- 23
Starting the Puppet Client------------- 25
Signing Your Client Certificate------------------- 26
Running the Puppet Daemons------------------------------ 28
Configuring Puppet-------------------------------------- 28
The [main] Configuration Namespace---------------- 32
Configuring puppetmasterd------------------------- 33
Configuring puppetd------------------------------- 35
Configuring puppetca------------------------------ 38
Resources----------------------------------------------- 40
Web.---------------------------------------------- 40
Mailing Lists------------------------------------- 40
■CHAPTER 3 Speaking Puppet----------------------------------------- 41
Defining Configuration Resources------------------------ 42
Resource Titling.--------------------------------- 42
Resource Attributes------------------------------- 44
Resource Style.----------------------------------- 45
Resource Defaults--------------------------------- 46
Collections of Resources-------------------------- 47
Classes and Subclasses.--------------------------- 47
Classes Relationships----------------------------- 48
Class Inheritance--------------------------------- 49
Definitions--------------------------------------- 50
Qualifying Definitions.--------------------------- 53
Variables----------------------------------------- 53
Variable Scoping---------------------------------- 54
Variables and Class Inheritance------------------- 55
Qualified Variables------------------------------- 56
Variables and Metaparameters---------------------- 57
Arrays-------------------------------------------- 58
Conditionals.------------------------------------- 59
Creating Nodes------------------------------------------ 62
Node Inheritance---------------------------------- 64
Node Inheritance and Variable Scope--------------- 66
Default Nodes------------------------------------- 68
Node Conditionals--------------------------------- 69
Virtual Resources--------------------------------------- 69
Realizing with a Collection----------------------- 69
Realizing with the realize Function.-------------- 70
Facts--------------------------------------------------- 71
Resource Types------------------------------------------ 74
Managing Cron Jobs-------------------------------- 75
Using a Filebucket----------------------------------- 76
Managing Host Files---------------------------------- 77
Managing SSH Host Keys.------------------------------ 78
Tidy Unwanted Files.--------------------------------- 78
Functions.------------------------------------------------- 79
Logging Functions------------------------------------ 81
Checking for Existence with defined------------------ 81
Generating Errors with fail-------------------------- 82
Adding External Data with file----------------------- 82
Using generate--------------------------------------- 83
Qualifying Definitions Using search------------------ 84
Using tag and tagged.-------------------------------- 85
Using Templating------------------------------------- 86
Resources-------------------------------------------------- 88
Web.------------------------------------------------- 88
■CHAPTER 4 Using Puppet----------------------------------------------- 89
Our Example Environment------------------------------------ 89
Manifest Organization-------------------------------------- 91
Importing Manifests.--------------------------------- 91
Managing Manifests with Subversion.------------------ 93
Defining Nodes--------------------------------------------- 95
Our First Classes------------------------------------------ 98
Managing Users and Groups---------------------------------- 101
Managing Users.-------------------------------------------- 102
File Serving----------------------------------------------- 106
Modularizing Our Configuration----------------------------- 109
MySQL Module----------------------------------------- 112
Postfix Module--------------------------------------- 113
Apache Module---------------------------------------- 115
Resources-------------------------------------------------- 119
■CHAPTER 5 Reporting on Puppet.--------------------------------------- 121
Getting Started.------------------------------------------- 121
Configuring Reporting-------------------------------------- 124
Report Processors------------------------------------------ 125
log.------------------------------------------------- 125
tagmail---------------------------------------------- 126
rrdgraph--------------------------------------------- 127
Custom Reporting------------------------------------------- 129
Resources-------------------------------------------------- 130
■CHAPTER 6 Advanced Puppet--------------------------------------- 131
External Node Classification-------------------------- 131
Storing Node Configuration in LDAP-------------------- 136
Puppet Scalability------------------------------------ 142
Installing Mongrel------------------------------ 144
Installing Apache------------------------------- 145
Configuring Apache As a Proxy.------------------ 146
Configuring Puppet for Mongrel------------------ 150
How Far Will Puppet Scale?---------------------- 151
Resources--------------------------------------------- 151
■CHAPTER 7 Extending Puppet-------------------------------------- 153
Extending Facter-------------------------------------- 153
Configuring Puppet for Custom Facts------------- 154
Writing Custom Facts.--------------------------- 155
Testing Your Facts------------------------------ 157
Extending Puppet-------------------------------------- 158
Creating the Type.------------------------------ 159
Properties-------------------------------------- 161
Parameters-------------------------------------- 161
Creating Our Provider--------------------------- 162
Distributing Our New Type----------------------- 165
Resources--------------------------------------------- 168
Заключение
Для меня намного удобнее читать о новых технологиях именно с бумаги, т.е. я могу не особенно напрягаясь сейчас писать скрипты на Ruby и Perl и в случае необходимости все данные почерпну из Google, но в начале мне нужна книга. Так вышло и с Puppet, одной из причин по которым я выбрал Puppet было то, что сообщество собрало отличнейшую документацию описывающую буквально каждую мелочь, к тому же о Puppet была издана книга. Т.к. книга написана на английском и перевода по всей видимости не предвидеться, найти ее на прилавке просто не реально. Вот и решил я воспользоваться интересной статьей на Хабре (Печать книг по программированию в домашних условиях) и распечатать эту книгу. Вышло просто превосходно! Если кому-то интересно могу описать тех. процесс во всех подробностях.
Резаультаты:
Качество фотографий оставляет желать лучшего, но это все чего я добился от своего телефона.




Ссылка не работает, если не затруднит — вышлите книжку на почту
Заранее благодарен
Прошу прощения — все скачалось!
есть еще отличная книжка — Pro Puppet. Если интересует, напиши в почту, не нашел твоего мыла.
Отправил сообщение на Хабре, ибо тут несекурно