
рд╣реИрдмреЗ рдкрд░ рдХреЗрдВрджреНрд░реАрдХреГрдд рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЗрдЦ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╢реЗрдл рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдЕрдЪреНрдЫреЗ рд▓реЗрдЦ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╢реЗрдл рд░рд┐рд▓реАрдЬрд╝ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝ рд░рд╣реА рд╣реИ, рдФрд░ рдореИрдВрдиреЗ рд╣реИрдмрд░ рдХреЗ рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЛ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд▓реЗрдЦ рд╢реБрд░реБрдЖрддреА рдФрд░ рдЙрди рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЕрдзреНрдпрдпрди рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдФрд░ рдЕрднреА рднреА рдЬрд╛рд░реА рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдФрд░ рдпрд╣ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ! рдЪреВрдВрдХрд┐ рд╢реЗрдл рдХрдИ рд╡реАрдкреАрдПрд╕ рдХреЛ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рдмреЗрдбрд╝реЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдХреНрд╕рд░ рд╕рд░реНрд╡рд░ рдХреЛ рдЦрд░реЛрдВрдЪ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рддреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдиреЛрдбреНрд╕ рдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ, рдЖрджрд┐ред
рд╕рд┐рджреНрдзрд╛рдВрдд
рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдиреАрдВрд╡ рдХреЗ рдмрд┐рдирд╛, рдХрд╣реАрдВ рдирд╣реАрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдХрд╣рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдкрдкреЗрдЯ рдХреА рддрд░рд╣ рд╢реЗрдл, рдореВрд▓ рд░реВрдк рд╕реЗ рд░реВрдмреА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рднрд╛рд╖рд╛ рдХреЛ рдмреЛрд▓рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдПрдХ рдкреНрд▓рд╕ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЖрдкрдХреЛ рдХрдо рд╕реЗ рдХрдо рдореВрд▓ рдмрд╛рддреЗрдВ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдк
"рд╢реЗрдл рдХреЗ рд▓рд┐рдП рдмрд╕ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдмреА" рд▓реЗрдЦ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднрд╛рд╖рд╛ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ
рд╡рд┐рдХреА рдореЗрдВ рдЖрдк рд╢реЗрдл рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ (рдкреНрд░рд▓реЗрдЦрди рдХрдВрдкрдиреА рдХреЗ рднреБрдЧрддрд╛рди рдХрд┐рдП рдЧрдП рдЙрддреНрдкрд╛рджреЛрдВ рдХреЗ рд╡рд┐рд╡рд░рдг рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИ - рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рд╢реЗрдл рдФрд░ рд╣реЛрд╕реНрдЯреЗрдб рд╢реЗрдл, рдореИрдВ рдУрдкрди рд╕реЛрд░реНрд╕ рд╢реЗрдл рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛)ред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЙрдирдХрд╛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред
рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ
- рдиреЛрдбреНрд╕ рдХреЛрдИ рднреА, рдЖрдкрдХрд╛ рд╕рд░реНрд╡рд░, рднреМрддрд┐рдХ рдпрд╛ рдЖрднрд╛рд╕реА рд╣реИ, рдЬрд┐рд╕реЗ рдЖрдк рд╢реЗрдл рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред
- рд╕рд░реНрд╡рд░ (рдмрд╛рд╡рд░реНрдЪреА рд╕рд░реНрд╡рд░) - рдЧреНрд░рд╛рд╣рдХреЛрдВ (рдиреЛрдбреНрд╕) рджреНрд╡рд╛рд░рд╛ рд╕реАрдзреЗ рдкрд╣реБрдВрдЪ рд╡рд╛рд▓реЗ рдмрд╛рд╡рд░реНрдЪреА рд╕рд░реНрд╡рд░, рд╕рд░реНрд╡рд░ рдореЗрдВ рдХрдИ рдШрдЯрдХ рд╣реЛрддреЗ рд╣реИрдВ:
- рд╡реЗрдм-рдпреВрдЖрдИ - рдПрдХ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЖрд░рдУрдЖрд░ рдкрд░ рдПрдХ рдЖрд╡реЗрджрди;
- Erchef - рд╕рд░реНрд╡рд░ рдХреЛрд░, рдЪреВрдВрдХрд┐ рд╢реЗрдл 11.x рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, Erlang рд░реВрдмреА рдореЗрдВ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдЧрдд рд╣реИ;
- рдмреБрдХрд╢реЗрд▓реНрдлрд╝ - "рдХреБрдХрдмреБрдХ" рдХреЗ рд▓рд┐рдП рдПрдХ рднрдВрдбрд╛рд░;
- Nginx - рдмрдВрдбрд▓ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рд╕рднреА рдПрдкреАрдЖрдИ рдЕрдиреБрд░реЛрдз рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рддреЗ рд╣реИрдВ;
- PostgreSQL - рдмрд╛рд╡рд░реНрдЪреА-рд╕рд░реНрд╡рд░ рдореЗрдВ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬрд╛рд╣рд┐рд░ рддреМрд░ рдкрд░ рд╕реВрдЪрдирд╛ рднрдВрдбрд╛рд░рдг рдХреА рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддрд╛ рд╣реИред
- рдХрд╛рд░реНрдпрд╕реНрдерд╛рди - рдмрд╛рд╡рд░реНрдЪреА рдкреНрд░рд╢рд╛рд╕рдХ рдХрд╛ рдХрд╛рд░реНрдпрд╕реНрдерд▓, рдЕрд░реНрдерд╛рддред рдЖрдкрдХрд╛ рдкреАрд╕реА рдЬрд┐рд╕ рдкрд░ рдЖрдк рд░реЗрд╕рд┐рдкреА, рдХреБрдХрдмреБрдХ рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЪрд╛рдХреВ рд╕реЗ рдкреВрд░реА рд░рд╕реЛрдИ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░реЗрдВрдЧреЗред
- рдЪрд╛рдХреВ - рдПрдХ рдЪрд╛рдХреВ рдХреЗ рдмрд┐рдирд╛ рдХреНрдпрд╛ рдорд╣рд╛рд░рд╛рдЬ? рдХрдВрд╕реЛрд▓ рд╕реЗ рд╢реЗрдл рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд╛рдХреВ рдореБрдЦреНрдп рдЙрдкрдХрд░рдг рд╣реИред рдпрд╣ "рдЪрд╛рдХреВ" рдХреА рдорджрдж рд╕реЗ рд╣реИ рдХрд┐ рдЖрдк рдиреЛрдбреНрд╕ рдФрд░ рд╢реЗрдл рд╕рд░реНрд╡рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗред
рдкрдХрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐
- рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕ рд╕реЗ рдЦрд╛рдирд╛ рдкрдХрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рднреА рдирд┐рдпрдореЛрдВ рдФрд░ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдП:
- рдПрдХ рдХреБрдХреА (рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм) рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ, рд╡реНрдпрдВрдЬрдиреЛрдВ, рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рднрдВрдбрд╛рд░ рд╣реИред
- рд╡рд┐рд╢реЗрд╖рддрд╛ (рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ) - рдХреБрдЫ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛ рдЖрдк рд╡реНрдпрдВрдЬрдиреЛрдВ рдФрд░ рднреВрдорд┐рдХрд╛рдУрдВ рджреЛрдиреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░реЗрдВ ред
- рдЯреЗрдореНрдкреНрд▓реЗрдЯ (рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЯреЗрдореНрдкреНрд▓реЗрдЯ) - рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдирд┐рдпрдорд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдкреИрд░рд╛рдореАрдЯрд░ рдХрд┐рдП рдЧрдП рдПрд░рдм-рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреНрд░рдо рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдХреБрдХрдмреБрдХ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╕реЗ рдпрд╛ рднреВрдорд┐рдХрд╛рдУрдВ рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рдлрд╝рд╛рдЗрд▓реЗрдВ - рдЖрдк рдЕрдкрдиреЗ рдЧрдВрддрд╡реНрдп рдкрде рдФрд░ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдХреЗ рд╡реНрдпрдВрдЬрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рд╕реА рднреА рдлрд╛рдЗрд▓ред
- рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ - рдирдП рдпрд╛ рдореМрдЬреВрджрд╛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕реЗрд╡рд╛, рдпрд╛ рдЕрдкрд╛рдЪреЗ рдЖрднрд╛рд╕реА рдореЗрдЬрдмрд╛рди) рдФрд░ / рдпрд╛ рдЙрди рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ (рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ) - рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд░реВрдмреА рдХреЛрдб рдбрд╛рд▓рдиреЗ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рдирд╣реАрдВред
- рд╕рдВрд╕рд╛рдзрди - рдПрдХ рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдХрд┐рд╕реА рднреА рд╡рд╕реНрддреБ рд╣реИ - рдПрдХ рдлрд╝рд╛рдЗрд▓, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рд╕рдореВрд╣, рд╕реЗрд╡рд╛, рдЖрджрд┐ред
рдпрджрд┐ рд╕рд┐рджреНрдзрд╛рдВрдд рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рд╕реНрдкрд╖реНрдЯ рд╣реИ, рддреЛ рдЖрдк рдЕрднреНрдпрд╛рд╕ рд╢реБрд░реВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрднреНрдпрд╛рд╕
рдмрд╛рд╡рд░реНрдЪреА рд╕рд░реНрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
Get Chef рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░, рдЕрдкрдиреЗ рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП Chef рд╕рд░реНрд╡рд░ рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред
рдореИрдВ рд╕рд░реНрд╡рд░ рдХреЛ CentOS 6.5 рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реВрдВрдЧрд╛, рдФрд░ рдореИрдВ Ubuntu 12.04 рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХрд╛рд░реНрдп рдХреЗрдВрджреНрд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реВрдВрдЧрд╛:
рд╕рд░реНрд╡рд░ рдореЗрдВ "рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдпреЛрдЧреНрдп рдбреЛрдореЗрди рдирд╛рдо" (FQDN) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдпрд╛рдиреА / etc / hostname рдореЗрдВ рдлреЙрд░реНрдо рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП: chef.example.ru
рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд░реВрдЯ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
rpm -Uvh https://opscode-omnibus-packages.s3.amazonaws.com/el/6/x86_64/chef-server-11.0.10-1.el6.x86_64.rpm
рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
chef-server-ctl reconfigure
рдпрд╣ рдХрдорд╛рдВрдб рд╢реЗрдл рд╕рд░реНрд╡рд░ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдШрдЯрдХреЛрдВ (Erchef, RabbitMQ, nginx, PostgreSQL) рдкрд░ рдЬреЛрд░ рджреЗрдЧрд╛
рд╕рдм рдХреБрдЫ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдмрд╛рд╡рд░реНрдЪреА рд╕рд░реНрд╡рд░ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкреЗрдЬ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рд╣реА рдХреЙрд▓рдо рдореЗрдВ, рдЖрдкрдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ: p @ ssw0rd1ред
рд╣рдо "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛" рдЯреИрдм рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рддреЗ рд╣реИрдВ, рд╣рдо рдирд┐рдЬреА рдХреБрдВрдЬреА рднреА рдмрджрд▓рддреЗ рд╣реИрдВ (рдХреБрдВрдЬреА рдХреЛ рд╕реНрд╡рдпрдВ рдХреЗ рд▓рд┐рдП рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХрд╣реАрдВ рднреА рд╕рд╣реЗрдЬрд╛ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИ):

рдЕрдЧрд▓рд╛, "рдЧреНрд░рд╛рд╣рдХ" рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВ, рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рд╢реЗрдл-рд╡реЗрд▓реЗрд░реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рдХреБрдВрдЬреА рдХреЛ рдлрд┐рд░ рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рдЗрд╕реЗ рдХрд╣реАрдВ рдФрд░ рдЕрдкрдиреЗ рдкрд╛рд╕ рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░ рд╕рд╣реЗрдЬрдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдмрд╛рдж рдореЗрдВ рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА)
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рдХрд╛рд░реНрдп рдХреЗрдВрджреНрд░ рдкрд░ рдмрд╛рд╡рд░реНрдЪреА рдЧреНрд░рд╛рд╣рдХ (рдЪрд╛рдХреВ) рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
рд╕реНрдерд╛рдкрдирд╛ рдПрдХ рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:
curl -L https://www.opscode.com/chef/install.sh | sudo bash
рдпрд╛ рддреЛ рдбрд┐рдмреЗрдЯ рдпрд╛ рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред
рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ git рдХрдВрд╕реЛрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
apt-get install git
рдЖрдкрдХреЛ рд░реВрдмреА рд╕рдВрд╕реНрдХрд░рдг => 1.9.1 рднреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред Ubuntu 12.04 рдХреЗ рд▓рд┐рдП рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗрдЯ рд╣реИ:
apt-get install ruby1.9.1
рд╣рдо рдЕрдкрдиреЗ рдШрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╢реЗрдл рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдорд╛рд░реНрдХрдЕрдк рдХреЛ рдХреНрд▓реЛрди рдХрд░реЗрдВрдЧреЗ:
git clone git://github.com/opscode/chef-repo.git
рдЕрдкрдиреЗ рдХрд╛рд░реНрдп рдХреЗрдВрджреНрд░ рд╕реЗ рдЪрд╛рдХреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреВрдорд┐рдХрд╛рдУрдВ, рдЖрджрд┐ рджреНрд╡рд╛рд░рд╛ рдиреЛрдбреНрд╕ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреЛ рдХреБрдВрдЬреА рдЪрд╛рд╣рд┐рдП:
- рд╢реЗрдл-рд╕рд░реНрд╡рд░ рдХреЗ рд╢реЗрдл- validator.pem рдирд┐рдЬреА рдХреБрдВрдЬреА (рдХреНрд▓рд╛рдЗрдВрдЯ рджреНрд╡рд╛рд░рд╛ рд╕рд░реНрд╡рд░ рд╕реЗ рдПрдкреАрдЖрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)
- user.pem рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдЖрдкрдХреА рдирд┐рдЬреА рдХреБрдВрдЬреА рд╣реИред
рдЙрдиреНрд╣реЗрдВ рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд╣рд╛рдБ рдЖрдк рдХреБрдХреАрдЬрд╝ рд╕реНрдЯреЛрд░ рдХрд░реЗрдВрдЧреЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
~/chef-repo/.chef/
рдЪрд╛рдХреВ рд╕реЗрдЯ рдХрд░рдирд╛ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
knife configure -i
рдпрд╣рд╛рдВ, рдЖрдкрдХреЛ рдирд┐рдЬреА рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкрде рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рд╕рд╛рде рд╣реА рдХреБрдХреАрдЬрд╝ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдкрде рднреАред рдЪрд╛рдХреВ рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╝рд╛рдЗрд▓ ~ / рд╢реЗрдл-рд░реЗрдкреЛ / .chef / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рднреА рд╕реНрдерд┐рдд рд╣реЛрдЧреА рдФрд░ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:
cat /home/it/chef-repo/.chef/knife.rb
log_level :info log_location STDOUT node_name 'it' client_key '/root/Chef/chef-repo/.chef/it.pem' validation_client_name 'chef-validator' validation_key '/home/it/chef-repo/.chef/chef-validator.pem' chef_server_url 'https://chef.example.ru:443' syntax_check_cache_path '/home/it/chef-repo/.chef/syntax_check_cache' cookbook_path [ '/home/it/chef-repo/cookbooks', '/home/it/chef-repo/example' ]
рдЪрд╛рдХреВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:
knife client list
рд╕рднреА рдЖрджреЗрд╢реЛрдВ рдХреЛ рдЖрдкрдХреЗ рд╕реНрдерд╛рдиреАрдп рд╢реЗрдл рднрдВрдбрд╛рд░ рдХреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдпрд╛ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЪрд╛рдХреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╣рд▓реЗ рд╕рд░реНрд╡рд░ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрд╛рдХреВ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬреЛ рд╢реЗрдл рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдХреБрдВрдЬреА рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ:
knife bootstrap test.example.ru
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрд╕реНрдЯ рдХрд╛ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдмрдВрдз рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рд░реВрдЯ рдПрдХреНрд╕реЗрд╕ рд╕реАрдорд┐рдд рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ (sudo) рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
knife bootstrap test.example.ru --sudo -x admin -P Password
рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ рд╕рд░реНрд╡рд░ рдиреЛрдбреНрд╕ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╣реИ:
knife node list
test.example.ru
рдкрд╣рд▓реЗ рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ
рддреЛ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓рд╛ рдиреЛрдб рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдЕрдм рд╣рдо рдЗрд╕ рдкрд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╢реЗрдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдЕрдкрдиреА рдкрд╣рд▓реА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рд▓рд┐рдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рдпрд╛ рдЧреАрдереВрдм рдкрд░ рдСрдкреНрд╕рдХреЛрдб рд░реЗрдкреЛ рд╕реЗ рдПрдХ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдПрдХ рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред
рдЖрдЗрдП рдЙрд╕ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдкрд░ рдЬрд╛рдПрдВ рдЬрд╣рд╛рдВ рд╣рдореЗрдВ рдХреБрдХреАрдЬрд╝ рд░рдЦрдиреЗ рд╣реИрдВ
cd ~/chef-repo/cookbooks
рдФрд░ рдпрд╣рд╛рдВ рдкрд╣рд▓реА рдХреБрдХреА рдХреЛ рдХреНрд▓реЛрди рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╢реЗрдл-рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП:
git clone https://github.com/opscode-cookbooks/chef-client.git
рдпрджрд┐ рд╣рдо рдореЗрдЯрд╛рдбреЗрдЯрд╛.rb рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЗрд╕ рдХреБрдХреА рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрдЦреЗрдВрдЧреЗ:
suggests 'bluepill' suggests 'daemontools' suggests 'runit' depends 'cron', '>= 1.2.0' depends 'logrotate', '>= 1.2.0'
рдЙрдиреНрд╣реЗрдВ рд╕реНрд╡рдпрдВ рдФрд░ рдлрд┐рд░ рд╕рд░реНрд╡рд░ рдкрд░ рдХреНрд▓реЛрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕ рдХреБрдХрдмреБрдХ рд╕реЗ рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рд╕рд░реНрд╡рд░ рдХреЛ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
knife cookbook upload bluepill daemontools runit cron logrotate chef-client
рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдЯреЗрд╕реНрдЯ рдиреЛрдб рдХреЗ рд▓рд┐рдП рд╢реЗрдл-рдХреНрд▓рд╛рдЗрдВрдЯ рд░реЗрд╕рд┐рдкреА рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдПрдХреНрд╕реЗрд╕ рдХреА рдЕрд╡рдзрд┐ рдХреЛ рд╕рд░реНрд╡рд░ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:
knife node edit test.example.ru
рдиреЛрдб рдХрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ json рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЪрд▓рд┐рдП рд╕рд░реНрд╡рд░ рддрдХ рдиреЛрдб рдПрдХреНрд╕реЗрд╕ рдХреА рдЕрд╡рдзрд┐ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рд░рди рд╕реВрдЪреА рдореЗрдВ рд╢реЗрдл-рдХреНрд▓рд╛рдЗрдВрдЯ рдиреБрд╕реНрдЦрд╛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:
{ "name": "test.example.ru", "chef_environment": "_default", "normal": { "chef_client": { "interval": "300" }, "tags": [ ] }, "run_list": [ "recipe[chef-client]" ] }
рдЕрдкрдиреА рдкрд╣рд▓реА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рд▓рд┐рдЦреЗрдВ
рдЖрдЗрдП рдЯреЗрд╕реНрдЯ рд░реЗрд╕рд┐рдкреА рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рдХреБрдХрдмреБрдХ рдмрдирд╛рдПрдВ:
knife cookbook create test
рдЙрди рдкреИрдХреЗрдЬреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ "рдбрд┐рдлрд╝реЙрд▓реНрдЯ" рдирд┐рд░реНрджреЗрд╢ рдЬреЛрдбрд╝реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдЕрдкрдиреЗ рд╕рднреА рд╕рд░реНрд╡рд░реЛрдВ рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд░реЗрдВрдЧреЗ:
vim ~/chef-repo/cookbooks/test/recipes/default.rb
%w{ntp mc htop iotop iftop atop vim-common wget curl rkhunter git awstats postfix}.each do |packages| package packages do action :install end end
рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдХрдмреБрдХ рдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдиреЛрдбреНрд╕ рдХреА рд░рди-рд▓рд┐рд╕реНрдЯ (рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреА рд╕реВрдЪреА) рдореЗрдВ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рдПрдХ рднреВрдорд┐рдХрд╛ рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕ рдиреБрд╕реНрдЦрд╛ рдХреЛ рд╡рд╣рд╛рдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рдмреБрд░реА рдХрд┐рд╕реНрдордд, рдЖрдкрдХреЛ рдЕрднреА рднреА рдПрдкреЗрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдоред рдЖрдк рдХреБрдХрдмреБрдХ рдореЗрдВ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд░реЗрд╕рд┐рдкреА рдореЗрдВ yum.repos.d рдкрд░ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреА рдХреЙрдкреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдСрдордХреЛрдб рд╕реЗ рдпрдо рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
git clone https://github.com/opscode-cookbooks/yum.git
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, yum-epel рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ (рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ, рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╣рдордиреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдореЗрдВ рдореБрдЦреНрдп рд╢рд▓рдЬрдо рдХреЗ рд╕рд╛рде рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ):
git clone https://github.com/opscode-cookbooks/yum-epel.git
рд╕рд░реНрд╡рд░ рдкрд░ рдкреБрд╕реНрддрдХреЗрдВ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ:
knife cookbook upload yum yum-epel
рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдЯреЗрд╕реНрдЯ рд░реЗрд╕рд┐рдкреА рдореЗрдВ yum-epel recipe рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
vim ~/chef-repo/cookbooks/test/recipes/default.rb
include_recipe тАЬyum-epelтАЭ %w{ntp mc htop iotop iftop atop vim nano wget curl rkhunter git awstats postfix}.each do |packages| package packages do action :install end end
рд╣рдо рдЕрдкрдиреА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рдПрдкреЗрд▓-рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдЕрдкрд╡рд╛рдж рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
vim ~/chef-repo/cookbooks/test/attributes/default.rb
default['yum']['epel']['exclude'] = тАЬtest*тАЭ
рд╣рдо рдХреБрдХрдмреБрдХ рдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдиреЛрдб рдкрд░ рдиреБрд╕реНрдЦрд╛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:
knife cookbook upload test
knife node edit test.example.ru
{ "name": "test.example.ru", "chef_environment": "_default", "normal": { "chef_client": { "interval": "300" }, "tags": [ ] }, "run_list": [ "recipe[chef-client]", тАЬrecipe[test]тАЭ ] }
knife ssh name:test.example.ru "chef-client" -P r00tPassworD
рддреЛ, рдЖрдкрдХреЛ рд╢реЗрдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкрд╣рд▓рд╛ рдЕрдиреБрднрд╡ рдорд┐рд▓рд╛ред рдЕрдм, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдЙрддрдирд╛ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдпрд╣ рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рдореБрдЦреНрдп рдмрд╛рдд рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗрдирд╛ рд╣реИред рдХреБрдЫ рдФрд░ рд▓реЗрдЦ рдкрдврд╝реЗрдВ, рдСрдкреНрд╕реЛрдб рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЕрдкрдиреЗ рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рд▓рд┐рдЦреЗрдВ, рдЙрдиреНрд╣реЗрдВ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рд╢реЗрдл рдореЗрдВ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдЗрдВрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдХреЗ рд╡рд┐рд╡рд░рдг рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░реЗрдВред рдЗрд╕реЗ рдЖрдкрдХреЛ рдХрдИ рджрд┐рдиреЛрдВ рдпрд╛ рд░рд╛рддреЛрдВ рддрдХ рд▓реЗ рдЬрд╛рдиреЗ рджреЗрдВ, рддрдм рддрдХ рд╕рд░реНрд╡рд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреА рдЧрддрд┐ рдЕрдзрд┐рдХ рдкрд░рд┐рдорд╛рдг рдХрд╛ рдПрдХ рдХреНрд░рдо рд╣реЛрдЧрд╛, рдФрд░ рдХрд╖реНрдЯрдкреНрд░рдж рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдХрдо рд╣реЛ рдЬрд╛рдПрдВрдЧреАред рдФрд░ рдпрд╛рдж рд░рдЦреЗрдВ, рд╢реЗрдл рдХреЛ рд╕реАрдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИред
рдЙрдкрдпреЛрдЧреА рд▓реЗрдЦ:
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдмрд╛рд╡рд░реНрдЪреА рд╡рд┐рдХреАрдСрдкреНрд╕рдХреЛрдб рдХреБрдХрдмреБрдХ рд╕рдВрдЧреНрд░рд╣Arrays рдФрд░ рд╢реЗрдл рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБрдмрд╛рд╡рд░реНрдЪреА 11 рдореЗрдВ рдЧрд╣рд░рд╛рдИ: рдкрд░рд┐рд╡рд░реНрддрди рдмрджрд▓рддрд╛ рд╣реИрд╢реЗрдл 11 рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдирд╢реЗрдл, рдпрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рд▓рд╛ рдЕрдиреБрднрд╡рд╢реЗрдл рдпрд╛ рдПрдХ рд╣рдЬрд╛рд░ рд╕рд░реНрд╡рд░ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреИрд╕реЗ рдХрд░реЗрдВрд╕рд░реНрд╡рд░ рдХреА рд╕реЗрд╡рд╛, рдХреГрдкрдпрд╛, рдпрд╛ рдСрдкреНрд╕рдХреЛрдб рд╢реЗрдл рдХреЗ рд╕рд╛рде рддреИрдирд╛рддреА рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВрд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реА рд╕рд╛рдЗрдЯ:
рдмрд╛рд╡рд░реНрдЪреА рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдирд╛рдЕрд▓реЗрдХреНрд╕реА рд╡рд╛рд╕рд┐рд▓рд┐рд╡ рджреНрд╡рд╛рд░рд╛ рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ (рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдХреЗрд╡рд▓ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ):
рд╢реЗрдл рд╕реЛрд▓реЛ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛