-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

AnsibleÅv«Â«ü«n

( ²Åé ¦r)
§@ªÌ¡G§õªQÀÜÃþ§O¡G1. -> µ{¦¡³]­p -> ºî¦X
ĶªÌ¡G
¥Xª©ªÀ¡G¾÷±ñ¤u·~¥Xª©ªÀAnsibleÅv«Â«ü«n 3dWoo®Ñ¸¹¡G 45573
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
NT°â»ù¡G 395 ¤¸

¥Xª©¤é¡G11/1/2016
­¶¼Æ¡G331
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787111553298
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¤º®e²¤¶¡G

¥þ®Ñ¤À¬°3½g¡G1.°ò¦½g¸Ô²ÓÁ¿¸Ñ¹Bºû¦Û°Ê¤Æµo®i¾úµ{,Ansible³¡¸p¦w¸Ë¡Bµo®i¥v¡B°ò¦¤Jªù¡BPlaybook¨Ï¥Î¤ÎÀ³¥Î³õ´º,¯S§O¹ïYAML»y¨¥¶i¦æ°ò¦´¶¤Î¡A¥HÁקKŪªÌ¥uª¾¨ä¤@¤£ª¾¨ä¤G¡C2.¤¤¯Å½g­«ÂI¤¶²ÐAnsible»P·í«e¦U¬y¦æAppÀ³¥Îµ²¦X¨Ï¥Î,¦pELK¡BZABBIX¡BDOCKERµ¥,³q¹L¹ê¾Ô®×¨Ò»¡©úAnsibleªº¥¿½T¨Ï¥Î¤è¦¡¡C°w¹ïPlaybook±`¥Î¥\¯à¼Ò¶ôªº¨Ï¥Îµ¥¶i¦æ­«ÂI­åªR¤¶²Ð¡C3.°ª¯Å½g¥D­n¤¶²ÐAnsibleªºWeb¦Û°Ê¤Æ¤§¸ô¡A¬°¤j®a¤¶²ÐWeb¦Û°Ê¤Æ³v¨B¹ê²{¹Lµ{¡A¦}¦P¨B¶}©ñ·½½X¥H¤è«K¤j®a¬ã²ß¡C³q¹L¾\Ū¥»®Ñ¡AŪªÌ¤£¶È¼ô±x¦}À³¥ÎAnsible,ansible-playbook¡Aªì¨B¹ê²{¸}¥»¦Û°Ê¤Æ,¦P®ÉÁÙ¯à¹ê²{Web¦Û°Ê¤Æ,±q®Ú·½¸Ñ©ñ¹BºûÂù¤â¡C
¥Ø¿ý¡G

«e¨¥
²Ä¤@½g¡@°ò¦¤Jªù½g
²Ä1³¹Ansible°ò¦¤Jªù 2
1.1Ansible¬O¤°¤\ 2
1.2Ansibleµo®i¥v 4
1.3¬°¤°¤\¿ï¾ÜAnsible 5
1.4Ansible¬O¦p¦ó¤u§@ªº 6
1.5Ansible³q«Hµo®i¥v 8
1.6AnsibleÀ³¥Î³õ´º 11
1.7Ansibleªº¦w¸Ë³¡¸p 12
1.7.1PIP¤è¦¡ 13
1.7.2YUM¤è¦¡ 13
1.7.3Apt-get¤è¦¡ 14
1.7.4·½½X¦w¸Ë¤è¦¡ 14
1.7.5ÅçÃÒ¦w¸Ëµ²ªG 15
1.8Python¦hÀô¹ÒÂX®iºÞ²z 16
1.8.1Pyenvªº³¡¸p»P¨Ï¥Î 16
1.8.2Virtualenvªº³¡¸p»P¨Ï¥Î 18
1.9¥»³¹¤pµ² 20
²Ä2³¹Ansible°ò¦¤¸¯À¤¶²Ð 21
2.1Ansible¥Ø¿ýµ²ºc¤¶²Ð 21
2.2Ansible°t¸m¤å¥ó¸ÑªR 23
2.3Ansible©R¥O¥Îªk¸Ô¸Ñ 25
2.4Ansible¨t¦C©R¥O¥Îªk¸Ô¸Ñ»P¨Ï¥Î³õ´º¤¶²Ð 28
2.4.1ansible 28
2.4.2ansible-galaxy 29
2.4.3ansible-pull 31
2.4.4ansible-doc 31
2.4.5ansible-playbook 31
2.4.6ansible-vault 32
2.4.7ansible-console 32
2.5Ansible Inventory°t¸m¤Î¸Ô¸Ñ 34
2.5.1©w¸q¥D¾÷©M²Õ 34
2.5.2©w¸q¥D¾÷Åܶq 35
2.5.3©w¸q²ÕÅܶq 35
2.5.4©w¸q²Õ´O®M¤Î²ÕÅܶq 36
2.5.5¦h­«Åܶq©w¸q 36
2.5.6¨ä¥LInventory°Ñ¼Æ¦Cªí 37
2.6Ansible»P¥¿«h 37
2.7¥»³¹¤pµ² 39
²Ä3³¹Ansible Ad-Hoc©R¥O¶° 40
3.1Ad-Hoc¨Ï¥Î³õ´º 40
3.2Ad-Hoc©R¥O¶°¤¶²Ð 41
3.2.1Ad-Hoc©R¥O¶°¥Îªk²¤¶ 41
3.2.2³q¹LAd-Hoc¬d¬Ý¨t²Î³]¸m 46
3.2.3³q¹LAd-Hoc¬ã¨sAnsibleªº¦}µo¯S©Ê 47
3.2.4³q¹LAd-Hoc¬ã¨sAnsibleªº¼Ò¶ô¨Ï¥Î 49
3.3Ad-Hoc²ÕºÞ²z©M¯S©w¥D¾÷Åܧó 52
3.3.1Ad-Hoc²Õ©w¸q 52
3.3.2Ad-Hoc°t¸mºÞ²z¡G°t¸mProxy»PWeb Servers¹ê½î 54
3.3.3Ad-Hoc°t¸m¦ZºÝ¡G°t¸mNoSQL»PDatabase Servers¹ê½î 56
3.3.4Ad-Hoc¯S©w¥D¾÷Åܧó 57
3.4Ad-Hoc¥Î¤á»P²ÕºÞ²z 58
3.4.1Linux¥Î¤áºÞ²z 58
3.4.2Windows¥Î¤áºÞ²z 63
3.4.3À³¥Î¼h¥Î¤áºÞ²z 64
3.5¥»³¹¤pµ² 65
²Ä4³¹Playbook§Ö³t¤Jªù 66
4.1Playbook»yªk²¤¶ 66
4.1.1¦h¦æÁY¶i 67
4.1.2³æ¦æÁY¼g 67
4.2Playbook®×¨Ò¤ÀªR 68
4.3Playbook»PShell¸}¥»®t²§¹ï¤ñ 71
4.4Ansible-playbook¹ê¾Ô¤p§Þ¥© 71
4.4.1­­©w°õ¦æ­S³ò 71
4.4.2¥Î¤á»PÅv­­³]¸m 72
4.4.3Ansible-playbook¡G¨ä¥L¿ï¶µ§Þ¥© 73
4.5¹ê¾Ô¤@¡GAnsible³¡¸pNode.js¥ø·~¹ê½î 73
4.5.1²K¥[²Ä¤T¤è·½ 73
4.5.2¹B¦æNode.js¶iµ{ 77
4.5.3Node.js appªA°È³¡¸pÁ`µ² 78
4.6¹ê¾Ô¤G¡GDrupal°ò¤_LAMPªº¦Û°Ê¤Æ³¡¸p 78
4.6.1©w¸qÅܶq¦}³]¸mHandlers 79
4.6.2³¡¸pLAMP°ò¦ªA°È 80
4.6.3°t¸mApache 81
4.6.4°t¸mPHP 82
4.6.5°t¸mMySQL 83
4.6.6¦w¸ËDrush©MComposer 84
4.6.7³q¹LGit©MDrush¦w¸ËDrupal 85
4.6.8Drupal³¡¸p¹Lµ{Á`µ² 86
4.7¹ê¾Ô¤T¡GAnsible³¡¸pTomcat¥ø·~¹ê¾Ô 86
4.7.1©w¸qÅܶq¦}³]¸mHandlers 86
4.7.2¦w¸ËJava 87
4.7.3¦w¸ËTomcat 8 88
4.7.4¦w¸ËApache Solr 89
4.8¥»³¹¤pµ² 91
²Ä5³¹Ansible Playbook©Ý®i 92
5.1Handlers 92
5.2Àô¹ÒÅܶq 93
5.3Åܶq 95
5.3.1Playbook Åܶq 96
5.3.2¦bInventory¤å¥ó¤¤©w¸qÅܶq 97
5.3.3ª`¥UÅܶq 98
5.3.4¨Ï¥Î°ª¶¥Åܶq 98
5.3.5¥D¾÷Åܶq©M²ÕÅܶq 100
5.3.6Facts¡]¦¬¶°¨t²Î«H®§¡^ 101
5.3.7Ansible¥[±K¼Ò¶ôVault 104
5.3.8ÅܶqÀu¥ý¯Å 106
5.4if/then/when¡X¡X¬yµ{±±¨î 107
5.4.1Jinja2 ¥¿«hªí¹F¡BPython ¤º¸m¨ç¼Æ©MÅÞ¿è§PÂ_ 107
5.4.2Åܶqª`¥U¾¹register 108
5.4.3when±ø¥ó§PÂ_ 109
5.4.4changed_when¡Bfailed_when±ø¥ó§PÂ_ 110
5.4.5ignore_errors±ø¥ó§PÂ_ 111
5.5¥ô°È¶¡¬yµ{±±¨î 111
5.5.1¥ô°È©e¦« 111
5.5.2¥ô°È¼È°± 112
5.6¥æ¤¬¦¡´£¥Ü 112
5.7Tags¼Ðñ 113
5.8Block¶ô 115
5.9¥»³¹¤pµ² 116
²Ä¤G½g¡@°ª¯Å¶i¶¥½g
²Ä6³¹Playbook°ª¯Å§Þ¥©¶i¶¥ 118
6.1¥©¥Î Includes 118
6.1.1Includes¨Ï¥Î³õ´º 118
6.1.2Includes¥Îªk 119
6.1.3°ÊºA Includes 123
6.1.4Handler Includes¨Ï¥Î§Þ¥© 123
6.1.5Playbooks Includes¨Ï¥Î§Þ¥© 124
6.2¥©¥ÎRoles 124
6.2.1ºc«ØRoles 125
6.2.2¨Ï¥ÎRoles­«ºcPlaybooks 125
6.2.3Roles§Þ¥©¤§Handlers¡G°ÊºAÅܧó 129
6.2.4Roles§Þ¥©¤§Files¡G¤å¥ó¶Ç¿é 131
6.2.5Roles§Þ¥©¤§Templates¡G¼ÒªO´À´« 133
6.2.6§ó¦h´_Âøªº¸ó¥­»ORoles 135
6.3Jinja2¹ê²{¼ÒªO°ª«×¦Û©w¸q 136
6.3.1Jinja2 For´`Àô 136
6.3.2Jinja2 If±ø¥ó 137
6.3.3Jinja¦h­È¦X¦} 138
6.3.4Jinja default()³]©w 140
6.3.5Ansibleµ²¦XJinja2¥Í¦¨Nginx°t¸m 141
6.3.6Ansibleµ²¦XJinja2¥Í¦¨Apache¦h¥D¾÷°t¸m 146
6.3.7Jinja2°ÊºAÅܶq°t¸m¤Î¬[ºcÀu¤Æ 148
6.4Ansible Galaxy 151
6.4.1Ansible-galaxy©R¥O¥Îªk 151
6.4.2¨Ï¥ÎGalaxy 152
6.5¥»³¹¤pµ² 154
²Ä7³¹Inventory¤å¥óÂX®i 155
7.1Inventory¤å¥ó¹ê¾Ô 155
7.2¿W¥ßªºInventory¤å¥ó 159
7.3InventoryÅܶq 159
7.3.1host_vars¥Ø¿ý 160
7.3.2group_vars¥Ø¿ý 161
7.4°ÊºAInventory 161
7.5¥»³¹¤pµ² 168
²Ä8³¹Ansible´¡¥óÂX®i 169
8.1Ansible ´¡¥ó¨Ï¥Î³õ´º 169
8.2Ansible´¡¥óÃþ«¬ 170
8.3¦p¦ó½s¼g¦Û¤vªº´¡¥ó 171
8.4´¡¥ó®×¨Ò¹ê½î 172
8.5¥»³¹¤pµ² 174
²Ä9³¹Ansible¥ø·~À³¥Î¹ê¾Ô 175
9.1¬°·s¨t²Î²K¥[¦w¥þ»{ÃÒSSHKey 175
9.1.1Ansible±K½X»{ÃÒ 175
9.1.2ssh-copy-id 176
9.1.3Kickstart 177
9.1.4Python Paramiko 178
9.1.5Expect 179
9.2¥ø·~°ª¥i¥Î¬[ºcªºAnsibleÀ³¥Î 180
9.2.1Playbook¥Ø¿ý½s±Æ 181
9.2.2°ª¥i¥Î¬[ºc°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 181
9.2.3¨Ï¥ÎIncludes»Î±µ¦UªA°È°t¸m 188
9.3ELK¤é§Ó¨t²Î°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 189
9.3.1ELK Serverªº¦Û°Ê¤Æ¹ê²{ 190
9.3.2ELK Clientªº¦Û°Ê¤Æ¹ê²{ 192
9.4¹ê®É¤é§Ó¨t²Î°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 192
9.4.1°t¸m·§Äý 192
9.4.2¬[ºc³¡¸p 193
9.5Zabbix°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 195
9.5.1Zabbix Server°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 196
9.5.2Zabbix Agent°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 199
9.5.3Zabbix Proxy°ò¤_Ansibleªº¦Û°Ê¤Æ¹ê²{ 201
9.6Ansible+Git+GitLab¹ê²{¦Û°Ê¤Æµo¥¬ 202
9.6.1¬[ºc·§Äý 203
9.6.2¬[ºc³¡¸p 203
9.7DockerªºAnsible¦Û°Ê¤ÆÀ³¥Î 206
9.7.1Docker®e¾¹¤Jªù 206
9.7.2¨Ï¥ÎAnsible³Ð«Ø©MºÞ²z®e¾¹ 207
9.7.3°ò¤_Ansible³Ð«ØFlaskªºDocker®e¾¹ 208
9.7.4¼Æ¾Ú¦sÀx®e¾¹°t¸m 210
9.7.5Flask®e¾¹°t¸m 211
9.7.6MySQL®e¾¹°t¸m 213
9.7.7±Ò°Ê®e¾¹ 215
9.8¥»³¹¤pµ² 215
²Ä10³¹Ansible°ò¤_WindowsªººÞ²z¬[ºc 217
10.1AnsibleºÞ²z¾÷³¡¸p¦w¸Ë 218
10.2Windows¨t²Î¹w°t¸m 219
10.3Windows¤U¥i¥Î¼Ò¶ô 224
10.4Windows Ansible¼Ò¶ô¨Ï¥Î¹ê¾Ô 224
10.5¥»³¹¤pµ² 226
²Ä11³¹Ansible¦w¥þÀu¤Æ½g 227
11.1SSH»P»·µ{³s±µÂ²¤¶ 227
11.1.1Telnet 228
11.1.2RLOGIN¡BRSH©MRCP 228
11.1.3SSH 228
11.1.4SSHªºµo®i©M»·µ{³X°Ýªº¥¼¨Ó 229
11.2³q«H¥[±K 230
11.3¸T¤îroot»·µ{µn¿ý 231
11.4¾Þ§@¨t²Î²¤¶ 232
11.5¿í¦uÅv­­³Ì¤p¤Æ­ì«h 233
11.5.1¥Î¤áºÞ²z 233
11.5.2¤å¥óÅv­­ºÞ²z 233
11.6©w´ÁºûÅ@§ó·s 234
11.6.1¤â°Ê§ó·s 234
11.6.2¦Û°Ê©w®É§ó·s 234
11.7µ½¥ÎIptables¨¾¤õùÙ 236
11.8©w´ÁºÏ½L¨µÀË 238
11.9¨t²Îµn¿ý¤é§Ó¼f°O 238
11.10¡@¥¿½T¨Ï¥ÎSELinux©MAppArmor 239
11.11¡@¥»³¹¤pµ² 240
²Ä¤T½g¡@Web¦Û°Ê¤Æ¶}µo½g
²Ä12³¹Ansible¼Ò¶ô½s¼g 242
12.1ªì¨B»{ÃÑAnsible¼Ò¶ô 242
12.2Ansible²³æ¼Ò¶ô½s¼g 243
12.3¼Ò¶ôÅܶq²K¥[ 245
12.4¼Ò¶ôª¬ºAªð¦^ªº¼ÐÃѤÎÀ³¥Î 246
12.5¼Ò¶ô°h¥Xª¬ºA³B²z 249
12.6¼Ò¶ô¨ä¥L¥\¯à¸É¥R 250
12.7Ansible¼Ò¶ôAPIªº½Õ¥Î 251
12.8¥»³¹¤pµ² 265
²Ä13³¹¶}µo¦Û¤vªºAnsible WebUI 267
13.1·f«ØDjango¶}µoÀô¹Ò 267
13.1.1¬°¤°¤\­n¨Ï¥ÎWeb­¶­±°µºÞ²z 267
13.1.2¨t²Î¤Î³n¥óÀô¹Ò 268
13.2Django°t¸m¤å¥ó¸Ô¸Ñ 269
13.2.1Djangoªº°ò¦°t¸m¤Î¹B¦æ 269
13.2.2Djangoªº¥D°t¸m¥Ø¿ý¤¶²Ð 270
13.2.3Djangoªºapp¥Ø¿ý¤¶²Ð 271
13.3½s¼gAnsibleªºWeb±µ¤f 272
13.4«eºÝ°ò¦ª¾ÃѤ¶²Ð 278
13.4.1HTML©MCSS²¤¶ 278
13.4.2JavaScript²¤¶ 279
13.5Ansible WebUI¬É­±¶}µo 280
13.5.1¹ï±µ«eºÝ­¶­±»PAnsibleªºWeb±µ¤f 280
13.5.2°t¸mWeb­¶­±¶Ç°Ñ 282
13.6¥»³¹¤pµ² 285
²Ä14³¹Web»PAnsibleµ²¦Xªº±`¥Î¹ê¨Ò 286
14.1Web¤è¦¡ºÞ²zAnsibleªºInventory 286
14.1.1­«·s©w¨îAnsibleªºHosts¤å¥ó³W«h 286
14.1.2¨Ï¥ÎConfigParser¸ÑªR¦}¥Í¦¨Ansible Hosts¤å¥ó 287
14.1.3¨Ï¥Î¼Æ¾Ú®wªº¦sÀx¼Æ¾Ú¥Í¦¨ªºAnsible Hosts¤å¥ó 290
14.1.4³q¹L­¶­±¨Ó¥Í¦¨Hosts¤å¥ó 293
14.2¨Ï¥Îcelery¦Z»O°õ¦æ¥ô°È 301
14.2.1¬°¤°¤\­n¨Ï¥Îcelery 301
14.2.2¨Ï¥Îceleryªº«e´Á·Ç³Æ 301
14.2.3¨Ï¥Îcelery¶}©l¥ô°È 303
14.2.4¨Ï¥Îcelery¨ú®ø¥¿¦b¶i¦æªº¥ô°È 305
14.3¹B¦æYML¤å¥ó¦}¹ê®ÉŪ¨ú¤é§Ó 306
14.4³q¹L­¶­±¤W¶Ç¤å¥ó¦}°ò¤_Ansible¤Àµo 313
14.5¦b­¶­±¤Wºc«ØYML¤å¥óª`¥U¤¤¤ß 316
14.6¾Þ§@ªÌª`¥U¤¤¤ß¬É­± 324
14.7¥»³¹¤pµ² 331
§Ç¡G