-- ·|­û / µù¥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¤ÀÃþ

ºë³qSaltStack

( ²Åé ¦r)
§@ªÌ¡G«À¬¯°¶,¶¾¦tÃþ§O¡G1. -> µ{¦¡³]­p -> ºî¦X
ĶªÌ¡G
¥Xª©ªÀ¡G¹q¤l¤u·~¥Xª©ªÀºë³qSaltStack 3dWoo®Ñ¸¹¡G 44858
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

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

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

ĶªÌ§Ç¡G

«e¨¥¡G

¤¤¤åª©§Ç
I was honored to discover that my first book was considered important enough to be translated into
Chinese. Salt is a powerful tool, and the knowledge that you gain from this book will help you use
that power effectively in managing your infrastructure. I look forward to seeing more people use
Salt to take better control of the technological advances that we have been blessed with, and bring
us closer to a better and more advanced future. Your decision to read this book brings us one step
closer to that future, and I hope that you continue on that path.
Of course Salt will continue to grow, thanks to the tireless efforts of countless engineers. It is because
of those people, including readers like you, that Salt has become the tool that it is. I hope that you
enjoy using Salt as much as I do. I also hope that you enjoy this book as much as I enjoyed writing it.
Joseph Hall
·í±oª¾§Úªº²Ä¤@¥»®Ñ¦]¬°¨ä­«­n©Ê³Q½Ķ¦¨¤¤¤å®É¡A§Ú·P¨ì«D±`ºa©¯¡CSalt ¬O¤@­Ó±j¤jªº¤u
¨ã¡A±q¥»®Ñ¤¤©Ò¾Çªºª¾Ãѯà°÷À°§A¦bºÞ²z°ò¦³]¬I®Éµo´§¹ê»Ú®Ä¥Î¡C§Ú´Á«Ý¬Ý¨ì¶V¨Ó¶V¦h
ªº¤H¨Ï¥ÎSalt ¥h§ó¦n¦a´x±±Salt ±o¤Ñ¿W«pªº§Þ³NÀu¶Õ¡A¦}±aµ¹§Ú­Ì¤@­Ó§ó¦n©M§ó¥ý¶iªº¥¼
¨Ó¡C·í§A¨M©w¾\Ū³o¥»®Ñ®É¡A§A¤w¸gÅý§Ú­Ìªº¹Ú·Q§óªñ¤F¤@¨B¡A§Ú§Æ±æ§A¯à¤@ª½³­µÛ§Ú­Ì
¨«¤U¥h¡C
·íµMSalt ·|Ä~Äò¤£Â_¦¨ªø¡A¯S§O»Ý­n·PÁ¨º¨Ç¤£¾Ó§V¤Oªº¤uµ{®v­Ì¡C¥¿¬O¦]¬°³o¨Ç¤H¡A¥]
¬A¹³§A¤@¼ËªºÅªªÌ¡AÅýSalt Åܦ¨¤F§Ú­Ì©Ò´Á«Ýªº¼Ë¤l¡C§Ú§Æ±æ§A¯à¹³§Ú¤@¼Ë³ßÅw¨Ï¥ÎSalt¡C
¤]§Æ±æ§A¯à¹³§Ú³ßÅw¼g³o¥»®Ñ¤@¼Ë¦a³ßÅw³o¥»®Ñ¡C
Joseph Hall

ĶªÌ§Ç
2012 ¦~¦~©³¡A§Ú³Q¤@½g§Þ³N¥~¤å¤¤©Ò¤¶²Ðªº¤@­Ó©ö¥Î¥B±j¤jªº»·µ{°õ¦æ¤u¨ã©Ò§l¤Þ¡A¥Ñ
¦¹µ²ÃѤFSaltStack¡C¦b¤§¦Z¤£¤[©M»¯µÏªF¡B¼BÄ~°¶µ¥¤@°_µo°_«Ø¥ß¤F¤¤°êSaltStack ¥Î¤á²Õ¡A
±qPuppet À³¥Î°ª¯Å¸s¤¤¡§«õ¡¨¨Ó¤F²Ä¤@§å¦¨­û¡A¶}©l¦bQQ ¸s¡B¶l¥ó¦Cªí¤¤¶i¦æ§ó¦hªº¸g
Åç¤À¨É©M°Q½×¥æ¬y¡C
2015 ¦~3 ¤ë©³¡A«D±`ºa©¯¦a±o¨ì¤FMastering SaltStack ³o¥»®Ñªº¼f¾\¾÷·|¡C¦b¼f¾\¹Lµ{¤¤¡A
³QJoseph Hall ªº±M·~«äºû©Ò§éªA¡A±`±`·|·P´n¡§­ì¨ÓSaltStack ¥i¥H³o¤\ª±¡¨¡A§óµÞ¥Í¤F§â³o
¥»Àu¨qªºSaltStack ®ÑÄy¤Þ¶i¨ì°ê¤º¦}§¹¦¨Â½Ä¶ªº·Qªk¡C
³Ì¦Z¡A¸Û¼°ªí¹F§Úªº·PÁ¡G
·PÁÂúÄomas S. Hatch¡A¬O¥L¤Ñ¤~¯ë¦a³Ð³y¤FSaltStack ¦}±N¨ä¶}·½¥X¨Ó¡C
·PÁÂJoseph Hall¡A¦bMastering SaltStack ³o¥»®Ñ¨½¥Î©öÀ´¦³½ìªº¤è¦¡Åý¤j®aÀò¨úSaltStack ©³
¼h¤Î©ÒÄ­§tªº°ª¯Å¯S©Ê¡A¦}´£¨Ñ¦³®Äªº¹ê½î¸gÅç¡C
·PÁ¼BÄ~°¶¡]halfss¡^¡A¥¿¬O¥Lªº¤ÞÂË¡AÅý§Ú¦³©¯¥i¥H¼f¾\Mastering SaltStack ³o¥»®Ñ¡A¥H¤Î¹ê
²{¤Þ¶i½Ķªº·Qªk¡C
·PÁ§d¥üªQ¡]itnihao¡^¡A¬O¥LÀ°§ÚÁp¨t¤F¹q¤l¤u·~¥Xª©ªÀ¡A³Ì²×¤Þ¶i¤F³o¥»®Ñ¦}¥æµ¹§Ú©M¶¾
¦t¨Ó°µÂ½Ä¶¡C·PÁ¹q¤l¤u·~¥Xª©ªÀªº¥IºÍµ¥½s¿è¬°³o¥»®Ñ¥I¥Xªº¤ß¤O¡C
³Ì¦Z­n·PÁ§ڨ­Ã䪺¦o¡A³sÄòªº¦n´X­Ó©P¥½§Ú³£¦v¦b®a¨½Â½Ä¶¥»®Ñ¡A¦Ó¿ù¹L¤F¤§«e©Ó¿Õ¦o
ªº®È¦æ¡A·PÁ¦oªº²z¸Ñ©M¥I¥X¡C
§Æ±æ³o¥»®Ñ¯à¶}±Ò§A·sªº¥@¬É¡A§Æ±æ¦³§ó¦hªº¤H¥[¤J¨ìSaltStack ¤¤¨Ó¡CBecause salt goes
EVERYWHERE¡I
±ÀÂ˧Ç
³o¥»Ãö¤_Salt ªº®Ñ§Ú´Á«Ý¤w¤[¡C§@¬°Salt ªº³Ð«ØªÌ¡A§Ú²`·P«Ü¦h¤H¦}¤£¤F¸ÑSalt ¥­»Oªº¥ý¶i
»P±j¤j¡C²`¤J¨º¨ÇSalt ¤¤ÂA¬°¤Hª¾ªº¦a°ì¤~¯à¯u¥¿µo´§Åå¤Hªº§@¥Î¡CSalt §ó±j¤jªº¦a¤è¡A¦b
¤_¦p¦ó¨Ï¥Î¤ÏÀ³¾¹´¼¯à°ÊºAºÞ²z¡A¦p¦ó¨Ï¥Îsalt-ssh ³B²z¦UºØ¦U¼Ëªº³õ´º¡A¥H¤Î§ó°ª¤ô·Ç¦a
¨Ï¥ÎSalt¡C³o¥»®Ñ¥H©ö¤_²z¸Ñªº¤è¦¡ÄÄ­z¤F³o¨Ç¤º®e¡C§Ú§Æ±æ³o¥»®Ñ¯àÀ°§U§ó¦hªº¤H¾Ç²ß
¨ìSalt ±j¤jªº¯S©Ê¡C
¥i¥H»¡Joseph Hall ´N¬O¼g³o¥»®Ñªº³Ì¨Î¤H¿ï¡C¥L¤£¶È¶È¬O§Ú¿Ë±Kªº¥ë¦ñ¡A¦Ó¥B±q«D±`¦­´Á
´N¶}©l°Ñ»P¤FSalt ¶µ¥Øªº¶}µo¡A¥]¬A¦­´ÁªºSalt State ¨t²Î³]­p¡CJoseph ¬O²Ä¤G­Ó¬°Salt ½s¼g
¥N½Xªº¤H¡]¶È¦b§Ú¤§¦Z¡^¡C¥L¤]¬O²Ä¤@¦ì¥ÑSaltStack ¸u½Ðªº¤uµ{®v¡C
Thomas S. Hatch
SaltStack ³Ð©l¤H­ÝCTO

«e¨¥
«Ü°ª¿³¯à§¹¦¨³o¥»®Ñªº¼g§@¡C±qTom Hatch ¸£¤¤ªº¤@­Óºc·Q¡A¨ì¤@­Ó¹ðÀò®íºaªº¶}·½¶µ¥Ø¡A
¦A¨ì¤@­Ó¹ðÀò®íºaªº¶}·½¤½¥q¡A§Ú¬O¬ÝµÛSalt ¤@¨B¤@¨B¦¨ªø°_¨Óªº¡C¦p¤µSalt ¤w¸g¦¨¬°¤@
­Ó·¥¨ä±j¤jªº®Ø¬[¡A³o¬O§Ú¦h¦~¥H¨Óªº¹Ú·Q¡C
¨C¤Ñ¡A§Ú³£¦b¾Ç²ßÃö¤_Salt ªº·sª¾ÃÑ¡C¥»®Ñ°w¹ï°ª¯Å¥Î¤á¦¬¶°¤F³¡¤À¦¹ÃþªF¦è¡C¤£­n»{¬°
³o¥»®Ñ²[»\ªº¥DÃD´N¬OSalt ªº¥þ³¡¤F¡C¬Û¤Ï¦a¡AÀ³¸Ó¥u§â¥»®Ñ§@¬°¤u¨ãªº«ü¾É¤â¥U¡A¥R¤À
µo´§¨ä¼ç¤O¡C
³q¹L¾\Ū¥»®Ñ¡A§Ú§Æ±æ¥»®Ñªº·Qªk©M¨Ò¤l¯à¿Eµo§A§ó·s©M³Ð·s§Aªº°ò¦³]¬I¡C
¥»®Ñ²[»\ªº¤º®e
²Ä1 ³¹¡ASalt ·§Äý¡A±´°Q¤F¦p¦óÀ˾\¤@¨Ç°ò¥»­ì«h©M°ò¥»·§©À¡A¥H¶i¤J¥¿½Tªº«äºû®Ø¬[¤¤¡C
ºÉºÞ«Ü¦h·§©À¥i¯à¹ï¼ô½m¥Î¤á¨Ó»¡¤ñ¸û¼ô±x¡A¦ý§A¦P¼Ë¥i¯à·|µo²{«Ü¦h·sªº«H®§¡C
²Ä2 ³¹¡A²`¤JSalt ¤º³¡¡A²`¤J¨ìSalt ­I¦Z§ó²`¼h¦¸ªº¤u§@­ì²z¡C¥»³¹±´°Q¤F¤º³¡°t¸m¡B¥[¸ü
¾¹¨t²Î¡B´è¬V¾¹¡A¥H¤ÎState ½sĶ¾¹¡C
²Ä3 ³¹¡A±´¯ÁSalt SSH¡A±´°Q¤FSalt SSH ³o­Ó±j¤jªº¤u¨ã¡C¥¦³Ìªñ¤w¸g±o¨ì¤F³\¦h®Ö¤ß¶}µo
ªÌªº«C·ý¡C³o¥i¯à¬OSalt SSH ³Ì§¹¾ãªº¬ÛÃö°Q½×¤F¡C
²Ä4 ³¹¡A²§¨BºÞ²z¥ô°È¡A°Q½×¤FSalt ­I¦Z³Ì­«­nªº·§©À¤§¤@¡A´N¬O²§¨B©Ê¡C¥»³¹Ã¹¦Cªº°ò¥»
­ì²z±N·|¤@ª½¤Þ¥Î¦Ü¥»®Ñ³Ñ§E¤º®e¡C
²Ä5 ³¹¡ASalt Cloud ¶i¶¥¡A¤£Â_²`¤J¡A´¦¶}Salt Cloud¡A¥¦¬O´¶³q¥Î¤áÂàÅܦ¨±M®aªº¥²¸g¤§¸ô¡C
¤£½×§A¨Ï¥Î¤F¦h¤ÖSalt Cloud ªº¥\¯à¡A³£À³¸Ó¤F¸Ñ¤@¤USalt Cloud¡C
²Ä6 ³¹¡A¨Ï¥ÎSalt REST¡A±´°Q¤FREST ªA°Èªº«K§Q©Ê¡CSalt REST ¨Ï¥ÎSalt »´ªQ¸j©w³o¨ÇªA
°È¨ì§Aªº°ò¦³]¬I¡C
²Ä7 ³¹¡A²z¸ÑRAET ¨óij¡A±Ð§ARAET ­I¦Zªº·§©À¡A¥H¤Î¥¦­Ì¦p¦ó¼vÅT¨ì§A¡CRAET ¥Ø«e¤´
¬O·s§Þ³N¡A¦ý¬O¤w¸g§ä¨ì¤F¶i¤J¤j«¬²Õ´ªº¤èªk¡C
²Ä8 ³¹¡AÂX®iµ¦²¤¡A°Q½×¤F§A¥Ã»·¤£À³°²³]§Aªº°ò¦³]¬I³W¼Ò¤@ª½³o¤\¤p¡C¥»³¹¤º®e±Ð§A
¦Ò¼{¦b¤õ¿N¬Ü¤ò¤§«e¦p¦ó¥¿½TÂX®i§Aªº°ò¦³]¬I¡C
²Ä9 ³¹¡A¥ÎSalt ºÊ±±¨t²Î¡A°Q½×¤F¦pªG§Aª¾¹D¦p¦ó¨Ï¥Î®É¡ASalt ¬O¤@­Ó¦h¤\±j¤jªººÊ±±¤u¨ã¡C
¥»³¹§i¶D§A¦p¦ó©M¤w¦³ªº¤u¨ã¶°¦¨¡A©Î³æ¿W¨Ï¥ÎSalt¡C
²Ä10 ³¹¡A±´¯Á³Ì¨Î¹ê½î¡A±´°Q¤F¨Ï¥Î¥ô¦ó¤u¨ãªº³Ì¨Î©M³Ì®t¤è¦¡¡C¥»³¹±Ð§A¦p¦ó¥H¥¿½Tªº
¤è¦¡¨Ï¥ÎSalt¡C
²Ä11 ³¹¡A¬G»Ù±Æ¬d¡A§i¶D§A·í¥X°ÝÃD®É¡AÀ³¸Ó¥h­þ¬d¡A«ç¤\´M¨DÀ°§U¡C
¥»®Ñªº¾Ç²ß¤è¦¡
­n°õ¦æ¥»®Ñªº­S¨Ò¡A§AÀ³¸Ó¹B¦æ2015.5 ª©¥»¥H¤WªºSalt¡C¥u»Ý­n¤@»O¥D¾÷§Y¥i¡A¦]¬°saltmaster
©Msalt-minion ªA°È¥i¥H¦b¤@»O¥D¾÷¹B¦æ¡A¦ý¬O¥Ø«e»Ý­nLinux ¥H¹B¦æsalt-master ªA°È¡C
¦pµL¯S§O»¡©ú¡A«h¥»®Ñªº¥Ü¨Ò³£¬O°w¹ïUbuntu Linux ªº¡C
¥»®Ñªº¥Ø¼ÐŪªÌ
¥»®Ñ«D±`¾A¦X¨º¨ÇºÞ²zªA°È¾¹²Õ¡A¦}§Æ±æ¤F¸Ñ¦p¦ó²K¥[·s¥\¯à©MÂX®i¥L­Ìªº¤u¨ã¶°ªº±M·~
¤H¤h¡C¥»®Ñ¸ÑÄÀ¤F¤@¨ÇSalt §ó¥ý¶iªº¯S©Ê¡A¤]±´¯Á¤F¦p¦ó¨Ï¥Î³o¨Ç¯S©Ê¬°±M·~¤H¤h¤w¸g¨Ï
¥Îªº¤u¨ã±a¨ÓÃB¥~ªº¥\¯à¡C
¤º®e²¤¶¡G

¥»®Ñ¥ÑSaltStack ¤½¥q¸ê²`¤ª¶°¦¨¤uµ{®vJoseph Hall ½s¼g¡A¥þ®Ñ¦@11 ­Ó³¹¸`¡C¥»®Ñ¹ïÀ³Salt 2015.5 ª©¥»¡A¨ÆµL¥¨²Ó¥B³q«U©öÀ´¦aÁ¿¸Ñ¤FSalt ªº¤º³¡¶Ç¿é¾÷¨î¡B²§¨B¥ô°È¨t²Î¡BSalt SSH¡BSalt Cloud¡BRest API µ¥¦U­Ó¤l¨t²Î¡A¦}¸Ô²ÓÁ¿¸Ñ¤F¦p¦óÂX®iSalt¡A¦p¦ó¨Ï¥ÎSalt Cloud §¹¦¨¦Û°Ê¤ô¥­ÂX®iµ¥¡C§@ªÌ¦P®É¤À¨É¤F¦b¨Ï¥ÎSalt ®Éªº³Ì¨Î¸gÅç¡AÅýŪªÌ¥i¥H§Ö³t¤F¸ÑSalt ®Ö¤ß¡A°µ¨ì¿Ä·|³e³q¦}ÆF¬¡¹B¥Î¨ì¹ê»Ú¤u§@¤¤¡C¥»®Ñ¤¶²Ð¤F¤@¨ÇSalt §ó¥ý¶iªº¯S©Ê¡A¯à°÷À°§UºÞ²zªA°È¾¹²Õ¦}§Æ±æ¤F¸Ñ¦p¦ó²K¥[·s¥\¯à©MÂX®i¥L­Ìªº¤u¨ã¶°ªº±M·~¤H¤h¡C

¥Ø¿ý¡G

²Ä1 ³¹Salt ·§Äý. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
»·µ{°õ¦æ©R¥O1
Master ©MMinion 2
Targeting Minion 2
¹B¦æ¼Ò¶ô¤èªk6
SLS ¤å¥ó¾ð9
SLS ¤å¥ó9
¨Ï¥Îtop ¤å¥ó±N°t¸m¸j©w¦b¤@°_9
SLS ¥Ø¿ý²Õ´10
¨Ï¥ÎState ¶i¦æ°t¸mºÞ²z10
¨Ï¥Îinclude ¶ô11
¨Ï¥Îrequisite ±Æ§Ç11
prereq 15
¤ÏÂàrequisite 15
ÂX®iSLS ¤å¥ó16
Grain¡BPillar ¤Î¼ÒªO°ò¦17
¨Ï¥ÎGrain ¨ÓÀò¨úMinion ¯S©º¼Æ¾Ú17
¨Ï¥ÎPillar ¨ÏÅܶq¶°¤¤¤Æ18
³q¹L¼ÒªO°ÊºAºÞ²z¤å¥ó20
Jinja §Ö³t¤Jªù21
Á`µ²23
²Ä2 ³¹²`¤JSalt ¤º³¡. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
²z¸ÑSalt °t¸m24
°t¸m¾ð¡]configuration tree¡^ 25
Salt ½w¦s27
´è¬V¾¹32
´è¬VSLS ¤å¥ó32
´è¬V¾¹ºÞ¹D33
¼ÒªO¤å¥óªA°È34
²z¸Ñ¥[¸ü¾¹34
°ÊºA¼Ò¶ô35
°õ¦æ¼Ò¶ô35
Cloud ¼Ò¶ô36
²`¤JState ½sĶ¾¹37
©R¥O¦¡»PÁn©ú¦¡37
requisite 38
High State »PLow State 39
High State 39
Low State 43
¹ê¦æState ¤Æ45
Á`µ²46
²Ä3 ³¹±´¯ÁSalt SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
´x´¤SSH 47
»·µ{shell 47
¨Ï¥ÎRoster 48
¯Â¤å¥»Roster 48
¨ä¥Lªº¤º¸mRoster 51
ºc«Ø°ÊºARoster 53
¨Ï¥ÎSalt SSH 54
Salt »PSalt SSH 56
²z¸Ñsalt-thin agent 57
ºc«Øsalt-thin ¥]57
³¡¸pthin ¥]59
°õ¦æthin ¥]59
¨Ï¥Î­ì¥ÍSSH ¼Ò¦¡64
½w¦sSSH ³s±µ65
Á`µ²66
²Ä4 ³¹²§¨BºÞ²z¥ô°È. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
¨Æ¥ó¨t²Î67
°ò¥»¤¶²Ð67
¨Æ¥ó¼Æ¾Úµ²ºc68
¬d¬Ý¨Æ¥ó¼Æ¾Ú68
¨Æ¥ó©R¦WªÅ¶¡73
³q¥Î¨Æ¥ó75
³q¥Î¤ª¨Æ¥ó77
Salt API ¨Æ¥ó79
ºc«Ø¤ÏÀ³¾¹80
°t¸m¤ÏÀ³¾¹80
½s¼g¤ÏÀ³¾¹81
½s¼g§ó´_Âøªº¤ÏÀ³¾¹84
¨Ï¥Î¶¤¦C¨t²Î91
¶¤¦C¦p¦ó¤u§@91
¦b¤ÏÀ³¾¹¤¤¨Ï¥Î¶¤¦C94
Á`µ²98
²Ä5 ³¹Salt Cloud ¶i¶¥. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
¤F¸ÑSalt Cloud °t¸m99
¥þ§½°t¸m100
Provider ©MProfile °t¸m100
ÂX®i°t¸m¶ô103
ºc«Ø¦Û©w¸q³¡¸p¸}¥»105
²z¸ÑSalt Bootstrap ¸}¥»105
¦^¬Ý¿ò¯dªº³¡¸p¸}¥»108
©w¨î³¡¸p¸}¥»109
µ¹¸}¥»¶Ç»¼°Ñ¼Æ111
¨Ï¥Î¤å¥ó¬M®g112
cloud ¬M®g·§Äý113
ºc«Ø¦Û°Ê¦ùÁYªº¤ÏÀ³¾¹116
Cloud ½w¦s116
¨Ï¥ÎCloud ½w¦s¨Æ¥ó119
Á`µ²122
²Ä6 ³¹¨Ï¥ÎSalt REST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Salt HTTP Ãþ®w123
¬°¤°¤\¬OSalt ¯S©wªºÃþ®w124
¨Ï¥Îhttp.query ¤èªk125
¨Ï¥Îhttp.query State 129
²z¸ÑSalt API 138
Salt API ¬O¤°¤\138
³¡¸pSalt API 138
³Ð«ØSSL ÃÒ®Ñ141
°t¸m»{ÃÒ143
ÁÚ¥XSalt API ²Ä¤@¨B144
¨Ï¥Îwebhook 148
¦w¥þ¥[©T150
§ó´_Âøªº»{ÃÒ151
Á`µ²152
²Ä7 ³¹²z¸ÑRAET ¨óij. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
¤ñ¹ïRAET »PZeroMQ 153
¥ý¬Ý¬ÝHTTP 154
SSH¡A´¿¸gªº³Ì·R154
¨Ï¥ÎZeroMQ 155
RAET ªº¥²­n©Ê156
°ò¤_¬yµ{ªº½sµ{¤èªk157
«÷¹Ï157
¶}±ÒRAET ¤§®È160
°t¸mRAET 160
RAET ªº¬[ºc162
Á`µ²165
²Ä8 ³¹ÂX®iµ¦²¤. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Ãö¤_¯ÅÁp166
ÅÚ¤R¥Õµæ¡A¦U¦³©Ò·R¡]Different folks¡Adifferent strokes¡^ 166
µL¶·²Ó­P¤ÆºÞ²z167
°t¸m¯ÅÁpÃö¨t168
¨Ï¥Î¦hMaster ¹ê²{°ª¥i¥Î168
¤º¸mªº°ª¥i¥Î°t¸m168
¶Ç²Îªº°ª¥i¥Î¤è¦¡169
¦P¨B¤å¥ó170
ºU¤J¥~³¡¼Æ¾Ú·½175
¥~³¡¥ô°È½w¦s175
¥~³¡¤å¥ó¨t²Î178
¥~³¡Pillar 187
¨Ï¥ÎMaster API 190
Salt ±KÆ_190
°t¸m190
file ©MPillar roots 190
¨Ï¥Îwheel ¤ÏÀ³¾¹191
°ò¦³]¬IªºÀ£¤O´ú¸Õ191
¨Ï¥ÎMinion Swarm 192
Á`µ²193
²Ä9 ³¹¥ÎSalt ºÊ±±¨t²Î. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
ºÊ±±ªº°ò¦ª¾ÃÑ194
«Ø¥ß¤@±ø°ò½u194
¨Ï¥ÎSalt Ū¨ú¨t²Î®Ö¤ß«H®§195
¨Ï¥ÎReturner ºÊ±±¨t²Î202
¿ï©w¤@­ÓReturner 203
¨Ï¥ÎºÊ±±State 204
©w¸q¤@­ÓºÊ±±State 205
Web ½Õ¥ÎºÊ±±207
¨Ï¥Îbeacon 209
ºÊ±±¤å¥óÅܤÆ209
beacon ¶¡¹j210
³]¸m§iĵ211
¦bState ¤å¥ó¤¤³]¸m§iĵ211
±qbeacon ¤¤§iĵ211
Á`µ²214
²Ä10 ³¹±´¯Á³Ì¨Î¹ê½î. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
¾AÀ³¥¼¨Óªº°ò¦³]¬I215
³]¸m¥Ø¿ýµ²ºc216
¼Ð·Ç¥Ø¿ý¸ô®|216
¡Õmodule¡Ö.sls »Pinit.sls 217
²L¼h¯Å»P²`¼h¯Å218
¶i¤@¨B²Ó¤À219
°ª®Ä²vSLS 219
Include »Pextend 219
¨Ï¥Î¼ÒªO²¤ÆSLS ¤å¥ó223
¨Ï¥Î¤º¸mªºState 227
©R¦W¬ù©w230
³q¥Î©R¦W231
½T¤Á©R¦W232
¼ÒªO©MÅܶq233
´O®MÅܶq233
¦b¼ÒªO¤¤¤Þ¥ÎÅܶq234
Á`µ²235
²Ä11 ³¹¬G»Ù±Æ¬d. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
¤°¤\±¡ªp¡K¡K 236
©w¦ì°ÝÃD®Ú·½237
°ÝÃD¥X¦b­þ¨½237
¨Ï¥Îdebug ©Mtrace ¼Ò¦¡243
¥»¦a¨Ï¥Îsalt-call 249
©MYAML ¥´¥æ¹D250
YAML °ò¦250
YAML ¯S¦â252
YAML 񒨗254
´M¨DªÀ°ÏÀ°§U257
salt-users ¶l¥ó¦Cªí257
Salt °ÝÃD°lÂܨt²Î259
IRC ÀW¹D#salt 262
³Ì²×ªÀ°Ï«ä·Q262
Á`µ²263
§Ç¡G