Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА

рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрд╡рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЙрддреНрддрд░ рджреЗрдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА (SCM) Ansible рдФрд░ Puppet рд╣реИрдВред

рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИ, рдПрдХ рдПрдЬреЗрдВрдЯ рд░рд╣рд┐рдд рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╣реИ (рд▓рдХреНрд╖реНрдп рдкреНрд░рдгрд╛рд▓реА рдкрд░ рдПрдХ рдПрдЬреЗрдВрдЯ / рдЧреНрд░рд╛рд╣рдХ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ) рдФрд░ рдПрдХ YAML рдЬреИрд╕реА DSL, рдкрд╛рдпрдерди рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реИред рдЖрдорддреМрд░ рдкрд░ рд▓рд┐рдирдХреНрд╕ рд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИред

рдХрдардкреБрддрд▓реА рдореЗрдВ рдПрдХ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╣реИ (рд╕рдордп-рд╕рдордп рдкрд░ рдиреЗрдЯрд╡рд░реНрдХ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХреЛ рдкреНрд░рджреВрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ), рд░реВрдмреА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд░реВрдмреА рдЬреИрд╕рд╛ рдбреАрдПрд╕рдПрд▓ рд╣реИред рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЖрдкрдХреЛ рдХрдИ рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХреЗрдВрджреНрд░реАрдп рд░реВрдк рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд▓реЗрдЦ рдЗрди SCM рдХреЗ рдлрд╛рдпрджреЗ рдФрд░ рдиреБрдХрд╕рд╛рди рдХреА рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИред



90 рдХреЗ рджрд╢рдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рдЖрдЬрдХрд▓ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХрд╛рдлреА рдЕрдзрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рд░реНрд╡рд░реЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рдЬреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдФрд░ рдХреНрд▓рд╛рдЙрдб рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдЬреИрд╕реА рдирдИ рддрдХрдиреАрдХреЛрдВ рдХреЗ рдЖрдЧрдорди рд╕реЗ рдЬреБрдбрд╝реЗ рд╕рдВрдЧрдардиреЛрдВ рдФрд░ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреА рдШрд╛рддреАрдп рд╡реГрджреНрдзрд┐ рд╣реИред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдХрдардкреБрддрд▓реА рдФрд░ Ansible рдЬреИрд╕реЗ рдЙрдкрдХрд░рдг рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдШрдЯрдХ рдмрди рдЬрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВред рдЙрдиреНрд╣реЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореИрдиреЗрдЬрдореЗрдВрдЯ рдЯреВрд▓ (рд╕реАрдПрдо) рдФрд░ рд░рд┐рдореЛрдЯ рдПрдХреНрдЬрд╝реЗрдХреНрдпреВрд╢рди (рдЖрд░рдИ) рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдХреНрд╕рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЕрдкрдбреЗрдЯ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрди рдЙрдкрдпреЛрдЧреА рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдиреЗрдЯрд╡рд░реНрдХ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдИ рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдХреНрд▓рд┐рдХ рдХреЗ рд╕рд╛рде рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рджрд╕рд┐рдпреЛрдВ, рд╕реИрдХрдбрд╝реЛрдВ рдпрд╛ рд╣рдЬрд╛рд░реЛрдВ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рдХреЛ рдмрд╣реБрдд рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕рдореАрдХреНрд╖рд╛


рдХрдардкреБрддрд▓реА рд╕реАрдПрдо рдмрд╛рдЬрд╛рд░ рдореЗрдВ рд╕рдмрд╕реЗ рдкреНрд░рд╕рд┐рджреНрдз рдмреНрд░рд╛рдВрдбреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдпрд╣ 2005 рдХреЗ рдмрд╛рдж рд╕реЗ рдореМрдЬреВрдж рд╣реИ, рдЬреЛ рдорд╛рдирд╡ рдЬрд╛рддрд┐ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж рд╕реЗ рд╕реАрдПрдо рдЙрдкрдХрд░рдг рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реИред Google, Reddit, Dell, PayPal, Oracle, Los Alamos Labs рдФрд░ Stanford University рдЬреИрд╕реЗ рдХрдИ рдмрдбрд╝реЗ рдирд╛рдо рдХрдардкреБрддрд▓реА рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╣реИрдВред рдмреЛрд░реНрдб рдкрд░ рдРрд╕реЗ рдЧреНрд░рд╛рд╣рдХ рд╣реЛрдиреЗ рд╕реЗ рд╣рдореЗрд╢рд╛ рдЙрддреНрдкрд╛рдж рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрддрд░ рдХрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдорд┐рд▓рддрд╛ рд╣реИред рдХрдардкреБрддрд▓реА рднреА рд╕рдмрд╕реЗ рдкрд░рд┐рдкрдХреНрд╡ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддреА рд╣реИ рдФрд░ рд╕рднреА рдкреНрд░рдореБрдЦ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо - рд▓рд┐рдирдХреНрд╕, рд╡рд┐рдВрдбреЛрдЬ, рдпреВрдирд┐рдХреНрд╕ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдкрд░ рдХрд╛рдо рдХрд░рддреА рд╣реИред рд▓рд┐рдирдХреНрд╕ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдореЙрдбрд▓ рдХреЗ рдмрд╛рдж, рдпрд╣ рдУрдкрди рд╕реЛрд░реНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд░реВрдмреА рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдПрдХ рдареЛрд╕, рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд PuppetLabs рд╕рдорд░реНрдерди рдФрд░ рдкреНрд░рд╛рдпреЛрдЬрди рдХрдВрдкрдиреА рд╣реИ,рдкреЗрд╢реЗрд╡рд░ рд╕рдорд░реНрдерди рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рдПрдХ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдкреЗрд╢рдХрд╢ред

рдХрдардкреБрддрд▓реА рднреА рдПрдХ рд╕рд░рд▓ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рддреЗрдЬреА рд╕реЗ рддреИрдирд╛рддреА рдЬреИрд╕реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдИ рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред GUI рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рд░реВрдмреА-рдЖрдзрд╛рд░рд┐рдд CLI рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдиреНрдирдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╕реАрдПрд▓рдЖрдИ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рдиреА рд╣реЛрдЧреА, рдФрд░ рдЬреАрдпреВрдЖрдИ рджреЗрдЦрдиреЗ, рдкреНрд░рдмрдВрдзрди рдФрд░ рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рд░реВрдмреА рд╕реАрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред



рдЖрдк рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ: тАЬрдпрд╣ рд╕рдм рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ! рдХреНрдпрд╛ рдХреЛрдИ рдбрд╛рдЙрдирд╕рд╛рдЗрдб рд╣реИ, рдпрд╛ рдЕрднреА рдкрдкреЗрдЯ рдХреЛ рдЦрд░реАрджрдиреЗ рдФрд░ рдЦрд░реАрджрдиреЗ рд▓рд╛рдпрдХ рд╣реИ? тАЭ.. рд╡рд┐рд╢реЗрд╖ рд╕реАрдПрдо рдордВрдЪреЛрдВ рдкрд░ рдЗрд╕ рдПрд╕рд╕реАрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣рд╕ рдпрд╣ рд╣реИ рдХрд┐ рдХрдардкреБрддрд▓реА, рдХрдИ рдЕрдиреНрдп рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рджрд┐рдЧреНрдЧрдЬреЛрдВ рдХреА рддрд░рд╣, рдЕрдкрдиреА рд╕рдлрд▓рддрд╛ рдФрд░ рдЖрдХрд╛рд░ рдХрд╛ рд╢рд┐рдХрд╛рд░ рд╣реБрдИ рд╣реИред тАЬрдлреБрд░реНрддреАрд▓рд╛тАЭ рдФрд░ тАЬрдлреБрд░реНрддреАрд▓рд╛тАЭ рд╡реЗ рд╢рдмреНрдж рдирд╣реАрдВ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрдардкреБрддрд▓реА рдХреЗ рдХрд╛рдо рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдЧреЛрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдирдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдФрд░ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╕рдордп рд▓реЗрддреЗ рд╣реИрдВред рдЗрд╕ рддрдереНрдп рд╕реЗ рднреА рдХреБрдЫ рдЕрд╕рдВрддреЛрд╖ рд╣реИ рдХрд┐ PuppetLabs рд▓рдЧрд╛рддрд╛рд░ рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛрд░ рджреЗ рд░рд╣рд╛ рд╣реИред рдЕрдВрдд рдореЗрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкрдкреЗрдЯ, рд╢реБрджреНрдз рд░реВрдмреА рдФрд░ рд╕реАрдПрд▓рдЖрдИ рдкрд░ рдЗрд╕рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рдбреАрдПрд╕рдПрд▓ рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЕрдХреЗрд▓реЗ рд░реВрдмреА рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмреБрд░реА рдЦрдмрд░ рд╣реИ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдХреЗрд╡рд▓ рд░реВрдмреА рдХреА рдкрдврд╝рд╛рдИ рдХреА рд╣реИ, рди рдХрд┐ рдбреАрдПрд╕рдПрд▓ рдХреАред

рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдЙрджреНрдпреЛрдЧ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдмрд╛рдЬрд╛рд░ рдореЗрдВ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓рд┐рдпрд╛, рдХрдардкреБрддрд▓реА рдмрд╛рдИрдкрд╛рд╕, 26.5%ред рдЗрд╕рдХреЗ рдмрд╛рдж Microsoft рд╕рд┐рд╕реНрдЯрдо рд╕реЗрдВрдЯрд░ CM (21.8%) рдФрд░ рдкрдкреЗрдЯ (12%) рд╣реИред



рдпрд╣ рдПрдХ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдЙрддреНрдкрд╛рдж рднреА рд╣реИ рдЬреЛ 2012 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рддрдм рд╕реЗ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди AnsibleWorks рдиреЗ рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕реЗ рд░реВрдмреА рдХреЗ рдмрдЬрд╛рдп рдЕрдЬрдЧрд░ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдЗрд╕реЗ рдкрдкреЗрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЖрдзреНрдпрд╛рддреНрдорд┐рдХ рд░реВрдк рд╕реЗ рдирдордХ (рдПрдХ рдФрд░ рдирдпрд╛ рд╕реАрдПрдо рдЙрдкрдХрд░рдг) рдХреЗ рдХрд░реАрдм рдмрдирд╛рддрд╛ рд╣реИред рдкрд╛рдпрдерди рдХрд╛ рдПрдХ рдФрд░ рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХрд╛рдВрд╢ рдпреВрдирд┐рдХреНрд╕ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдПрд╕рд╕реАрдПрдо рддреЗрдЬреА рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдЕрдиреНрд╕рд┐рдмрд▓ рдХрд╛ рдЕрдиреВрдард╛ рд╡рд┐рдкрдгрди рдЪрд╛рд▓ рдЗрд╕рдХреА рдЖрд╕рд╛рди рдФрд░ рддреНрд╡рд░рд┐рдд рддреИрдирд╛рддреА рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдкреНрд░рдгрд╛рд▓реА рдорд╛рд╕реНрдЯрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдирд╛рдд рдПрдЬреЗрдВрдЯреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдПрд╕рдПрд╕рдПрдЪ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рд░реВрдЯ SSH рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, Ansible "sudo" рдХреЛ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд░рд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, рдЬреИрд╕реЗ рдХрд┐ рд╕реЗрд╡рд╛ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдпрд╛ рдЕрдкрдбреЗрдЯ рдФрд░ рд░рд┐рдмреВрдЯ рд╢реБрд░реВ рдХрд░рдирд╛, рдмрд┐рдирд╛ CLI рд╕реЗ Ansible рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, "рдкреНрд▓реЗрдмреБрдХ" рдирд╛рдордХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдпрдорд┐рд╕рд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдЕрдВрд╕рд┐рдмрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓рдЧрднрдЧ рдХрдорд╛рдВрдб рдХреЛ рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ JSON рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рд╖рд╛ рдХреА рдкрд╕рдВрдж рдкрд░ рдПрдХ рдлрд╛рдпрджрд╛ рд╣реИред

рдкрд╛рд░рдВрдкрд░рд┐рдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдирдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде Ansible рдЕрдзрд┐рдХ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдХрдИ рдХрдВрдкрдирд┐рдпрд╛рдВ рдмрдбрд╝реЗ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред

рдЙрддреНрд╕рд╛рд╣реА рд▓реЛрдЧреЛрдВ рдХрд╛ рдЕрдиреНрд╕рд┐рдмрд▓ рд╕рдореБрджрд╛рдп рд╕рдорд░реНрдерд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдХрд░, рдмреЗрд╣рддрд░ рд╡рд┐рдВрдбреЛрдЬ рд╕рдорд░реНрдерди рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдХреЗ, рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдореЗрдВ рд╕реБрдзрд╛рд░, рдФрд░ рдЗрд╕реА рддрд░рд╣ рдЕрдкрдиреА рд╕рдлрд▓рддрд╛ рдХреЗ рд▓рд┐рдП рдХрдбрд╝реА рдореЗрд╣рдирдд рдХрд░ рд░рд╣рд╛ рд╣реИред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рд╕реНрдерд╛рдкрдирд╛ рдЕрдВрддрд░


рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдХреНрд╖рдг рд╕реЗ рдЕрдиреНрд╕рд┐рдмрд▓ рдпрд╛ рдкрдкреЗрдЯ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╡реЗ рд╡рд┐рднрд┐рдиреНрди рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рдкреНрд░рддрд┐рдорд╛рдиреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдирдХреА рд╕реНрдерд╛рдкрдирд╛ рдХрд╛рдлреА рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, Ansible рдХрд╛ рд╕реЗрдЯрдЕрдк рд▓рдХреНрд╖реНрдп рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХрд╛ рд╕реНрдкрд╖реНрдЯ рд▓рдХреНрд╖реНрдп рд╣реИ, рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡ рдореЗрдВ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реЛрддрд╛ рд╣реИред



Ansible рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдПрдХ рдиреЛрдб рдХреЛ рдХрдВрдЯреНрд░реЛрд▓ рдиреЛрдб рдХреЗ рд░реВрдк рдореЗрдВ рдирд╛рдорд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрдкрдХрд╛ рдХреЛрдИ рднреА рдиреЛрдб рдореИрдиреЗрдЬрдореЗрдВрдЯ рдиреЛрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рдиреЛрдб рдкрд░ рдЕрдкрдиреЗ рд╡рд┐рддрд░рдг рдХреЗ рдкреИрдХреЗрдЬ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдирд╡реАрдирддрдо Ansible рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреНрдп рдиреЛрдб рдкрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдкрд░ рдЗрд╕ рдиреЛрдб рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╕ рдЕрдкрдиреЗ рдкреНрд░рдмрдВрдзрди рдиреЛрдб рдкрд░ рдПрдХ SSH рдХреБрдВрдЬреА рдЬреЛрдбрд╝реА рдмрдирд╛рдПрдВ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдЕрдиреНрдп рдиреЛрдбреНрд╕ рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдмрд╛рдж, Ansible рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ - рдЖрдорддреМрд░ рдкрд░ Red Hat Linux, Ubuntu, рдФрд░ Debian рдЬреИрд╕реЗ рд▓рд┐рдирдХреНрд╕ OS рдкрд░ / etc / ansible / рд╣реЛрд╕реНрдЯ рдореЗрдВ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИред рдЕрдм рдЖрдк рдЕрдкрдиреЗ рд╣реЛрд╕реНрдЯ рдФрд░ рдмрд╛рдХреА рдиреЗрдЯрд╡рд░реНрдХ рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рджреЛрдиреЛрдВ рдкрд░ PlayBook рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Ansible рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВредрдкреНрд▓реЗрдмреБрдХ-рдЖрдзрд╛рд░рд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Ansible рдЖрдкрдХреЗ рдирд┐рдпрдВрддреНрд░рдг рдиреЛрдб рдХреЗ рд╕рд╛рде SSH рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред

рдХрдардкреБрддрд▓реА рдХреА рд╕реНрдерд╛рдкрдирд╛ рдереЛрдбрд╝реА рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд▓рдЧрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИрдВ рдЬреЛ рдПрдХ рдХрдард┐рди рдорд╛рдорд▓реЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдорд╛рд╕реНрдЯрд░ рдФрд░ рдПрдЬреЗрдВрдЯ рдиреЛрдбреНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рддрд╛рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдордп рдФрд░ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рд╣реЛред рдлрд┐рд░ рдЖрдкрдХреЛ рд░реВрдЯ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдЬрд╛рдиреЗ рдФрд░ рдкрдкреЗрдЯ рд╕рд░реНрд╡рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рд╕рднреА рдкреНрд░рдмрдВрдзрд┐рдд рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдардкреБрддрд▓реА рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдлрд╝рд╛рдЗрд▓ / etc / рд╣реЛрд╕реНрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, PuppetServer рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдкреЛрд░реНрдЯ 8140 рдкрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрдиреЗрдХреНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рд╕рдХреНрд╖рдо" рдореЛрдб рдореЗрдВ рд░рдЦреЗрдВред рдЪреВрдВрдХрд┐ рдХрдардкреБрддрд▓реА рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХрдардкреБрддрд▓реА рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдПрдЬреЗрдВрдЯ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкрд░ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ / / рд╣реЛрд╕реНрдЯреНрд╕ рдореЗрдВ рдЖрдИрдкреА рдкрддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рддрд╛рдХрд┐ рдЧреНрд░рд╛рд╣рдХ рдЗрд╕рд╕реЗ рдЬреБрдбрд╝ рд╕рдХреЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдХрдардкреБрддрд▓реА рдПрдЬреЗрдВрдЯ рд╕реЗрд╡рд╛ рдХреЛ рд╢реБрд░реВ рдФрд░ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдлрд┐рд░ рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реАрдПрдо рд╕рд┐рд╕реНрдЯрдо рдорд╛рд╕реНрдЯрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП HTTPS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЕрдирдзрд┐рдХреГрдд рдХрдиреЗрдХреНрд╢рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдордЬрдмреВрдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рдорд╛рдкрдиреАрдпрддрд╛ рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рдкрд░рд┐рд╡рд╣рди рддрдВрддреНрд░


рджреЛрдиреЛрдВ SCM рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рднрд▓реЗ рд╣реА рдЖрдкрдХреЛ рдХрдИ рд╕реМ рдпрд╛ рджрд╕рд┐рдпреЛрдВ рд╣рдЬрд╝рд╛рд░ рдиреЛрдбреНрд╕ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ, рдРрд╕реА рдЪрд╛рд▓реЗрдВ рдФрд░ рд░рдгрдиреАрддрд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдкрд░ рд╡рд╛рдВрдЫрд┐рдд рд╕реНрддрд░ рддрдХ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



Ansible рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдорд╛рд░реНрдЯ рдкрд░рд┐рд╡рд╣рди рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп SSH рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред Ansible рдкрд╣рд▓реЗ PlayBooks рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдЧрд╛ рдФрд░ рдкреНрд░рднрд╛рд╡рд┐рдд рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рддрддреНрд╡реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░реЗрдЧрд╛ред рд╡рд╣ рдлрд┐рд░ рдПрдХ SSH рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓реЗрдЧреА рдФрд░ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдПрдЧреАред рдЗрд╕ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, Ansible рдиреЗ Ansible рдореЙрдбреНрдпреВрд▓ рдХреЛрдб рдФрд░ Ansible рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛрдб рдкрд░ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░рд╛ рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рд╛ред рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреАрд╕рд░рд╛, рдЕрдВрддрд┐рдо рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ Ansible рдЗрд╕ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдЧрд╛ред рдпрд╣ рд╕реЗрдЯрд┐рдВрдЧ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдЧреА, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдБрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкрд╣рд▓рд╛ рдХрд╛рд░реНрдп рдЬрд┐рд╕реЗ Ansible рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЙрд╕реЗ ControlPersist рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдХрдИ рдХрдиреЗрдХреНрд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВрдбрд╢реЗрдХ рдХреЗ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░, рд▓рдЧрд╛рддрд╛рд░ рд╕реЙрдХреЗрдЯ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдЕрдиреНрд╕рд┐рдмрд▓ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд┐рдВрдЧ рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛ рддреАрди рд╕реЗ рдПрдХ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХрдиреЗрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИред рдЕрдВрдд рдореЗрдВ, рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдХрд╛рдВрдЯреЗ рдЪрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЕрдзрд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдиреЛрдбреНрд╕ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП Ansible рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ рдорд╛рди 5 рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдЪреНрдЪ рдореВрд▓реНрдп рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдХрдардкреБрддрд▓реА рдкрд░рд┐рд╡рд╣рди рддрдВрддреНрд░ HTTPS рд╣реИ, рдЬрд┐рд╕реЗ SSL рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдХрдардкреБрддрд▓реА рд╕рд░реНрд╡рд░ рдХрдардкреБрддрд▓реА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рдПрдХ рдкреВрд░реА рд╕реВрдЪреА рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд░рд╛рд╣рдХ рдХрдардкреБрддрд▓реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдХреЛ рдХрдардкреБрддрд▓реА рддрдереНрдп рднреЗрдЬрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдорд╛рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИред рдХреНрд▓рд╛рдЗрдВрдЯ рддрдм рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрд╡рд╢реНрдпрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдкреНрд░рддреНрдпреЗрдХ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдВрд╕рд╛рдзрди рдХреА рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рд╕рдВрд╕рд╛рдзрди рд╡рд╛рдВрдЫрд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХрдардкреБрддрд▓реА рдЧреНрд░рд╛рд╣рдХ рдЗрд╕ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕рдВрд╕рд╛рдзрди рдХреЛ рдЕрджреНрдпрддрди рдХрд░реЗрдЧрд╛ рдФрд░ рдЕрджреНрдпрддрди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдХрдардкреБрддрд▓реА рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ рдПрдХ рд░рд┐рдкреЛрд░реНрдЯ рднреЗрдЬреЗрдЧрд╛ред



рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкрдкреЗрдЯ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдореЙрдбрд▓ рдкреНрд░рддреНрдпреЗрдХ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрдиреЗрдХреНрд╢рди рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдереНрд░реЗрдб рдкреВрд▓ рд╕реЗ рдПрдХ JRuby рдереНрд░реЗрдб рдЖрд╡рдВрдЯрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЬреИрд╕реЗ рд╣реА рдиреЛрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рддреА рд╣реИ, рдкреВрд▓ рдореЗрдВ рдЙрдкрд▓рдмреНрдз JRuby рдереНрд░реЗрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдХрд░ рдХрдардкреБрддрд▓реА рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрдардкреБрддрд▓реА "рдЕрдзрд┐рдХрддрдо-рд╕рдХреНрд░рд┐рдп-рдЗрдВрд╕реНрдЯреЗрдВрд╕реЗрд╕" рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рд╕реЗ рдЕрдзрд┐рдХ рд╕реЗрдЯ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ 1. рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ рдорд╛рди рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА CPU рдореЗрдореЛрд░реА рдореЗрдВ RAM RAM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдХрдардкреБрддрд▓реА рд╕рд░реНрд╡рд░ рдХреЗ JVM рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдЪреНрдЪ "рдЕрдзрд┐рдХрддрдо рд╣реАрдк рдЖрдХрд╛рд░" рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАрдЖрдкрдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд JRuby рдереНрд░реЗрдбреНрд╕ рдХреЛ рдмрд┐рдирд╛ рдореЗрдореЛрд░реА рддреНрд░реБрдЯрд┐ рдХреЗ рдЬрд╛рд╡рд╛ рд╕реЗ рдмрд╛рд╣рд░ рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдмрдирд╛рддреЗ рд╕рдордп рд╕рд╛рд╡рдзрд╛рдиреА рдмрд░рддрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдиреБрдХрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

CM Ansible Code рдЙрджрд╛рд╣рд░рдг


рд░реЛрдЬрдорд░реНрд░рд╛ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП, рджреЛ рдХрд╛рд░рдХреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рдХрд╛рд░рдг, рдРрдирд┐рд╕реЗрдмрд▓ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ рд╕рд░рд▓ рд╣реИ: PlayBooks рдХреЗ рд▓рд┐рдП YAML рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдХреА рдШреЛрд╖рдгрд╛ рд╢реИрд▓реА рдЬреЛ "рддреЗрдЬ рдХреЛрдиреЛрдВ" рдХреЛ рдХрд╛рдЯ рджреЗрддреА рд╣реИред рдпрд╣ DevOps рдХрдорд╛рдВрдб рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдФрд░ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдХреЛрдб рдЬрдЯрд┐рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдкреНрд░рдмрдВрдзрдиреАрдп рд╣реИред

Ansible рдХреЛрдб idempotent рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХреЛ рдЧрдбрд╝рдмрдбрд╝рд╛рдиреЗ рдХреЗ рдмрд┐рдирд╛ рд╕рд┐рд╕реНрдЯрдо рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдмреБрдХ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред Ansible рдХреЗрд╡рд▓ рдЙрди рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрджрд▓ рджреЗрдЧрд╛ рдЬрд╣рд╛рдВ рдпрд╣ рд╡рд╛рдВрдЫрд┐рдд рд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреА PlayBook рдХреЛ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдбрд┐рд╕реНрдХ рдкрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ Ansible рдХреЗрд╡рд▓ рдЙрд╕ рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдЙрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрдирд╛рдПрдЧрд╛ рдЬреЛ рддрдм рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдЧрдИ рдереА рдЬрдм PlayBook рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рд╣реЛрд╕реНрдЯ рдкрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдкреНрд▓реЗрдмреБрдХ рдХреЗ рдмрд╛рдж рдХреЗ рд▓реЙрдиреНрдЪ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреИрдХреЗрдЬ рдХреЛ рдмрд░рдХрд░рд╛рд░ рд░рдЦрддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдкреИрдХреЗрдЬ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╣рдЯрд╛рддрд╛ рд╣реИ рдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЗ рдиреЛрдбреНрд╕ рдХреЛ рдПрдХ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рдирд┐рдд, рдирд┐рдпрддрд╛рддреНрдордХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдмрд╣рд╛рд╡ рдХреА рдмрд╣реБрдд рдХрдо рдпрд╛ рдХреЛрдИ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкреНрд▓реЗрд╕реАрдмреБрдХ рдХреЛрдб рд╣реИ рдЬреЛ рдЖрдкрдХреА рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдЯреЙрдордХреИрдЯ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдПрдВрдЬрд╝рд┐рдмрд▓ рдЙрджрд╛рд╣рд░рдг рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ , рдЬрд┐рд╕реЗ рдЖрдкрдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдЦреБрдж рдХреЛ рдРрдирд┐рд╕реЗрдмрд▓ рдореБрд╣рд╛рд╡рд░реЗрджрд╛рд░ рд╢реИрд▓реА рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

---
- name: Install Java 1.7
yum: name=java-1.7.0-openjdk state=present

- name: add group "tomcat"
group: name=tomcat

- name: add user "tomcat"
user: name=tomcat group=tomcat home=/usr/share/tomcat createhome=no
become: True
become_method: sudo

- name: Download Tomcat
get_url: url=http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.61/bin/apache-tomcat-7.0.61.tar.gz dest=/opt/apache-tomcat-7.0.61.tar.gz

- name: Extract archive
command: chdir=/usr/share /bin/tar xvf /opt/apache-tomcat-7.0.61.tar.gz -C /opt/ creates=/opt/apache-tomcat-7.0.61

- name: Symlink install directory
file: src=/opt/apache-tomcat-7.0.61 path=/usr/share/tomcat state=link

- name: Change ownership of Tomcat installation
file: path=/usr/share/tomcat/ owner=tomcat group=tomcat state=directory recurse=yes

- name: Configure Tomcat server
template: src=server.xml dest=/usr/share/tomcat/conf/
notify: restart tomcat

- name: Configure Tomcat users
template: src=tomcat-users.xml dest=/usr/share/tomcat/conf/
notify: restart tomcat

- name: Install Tomcat init script
copy: src=tomcat-initscript.sh dest=/etc/init.d/tomcat mode=0755

- name: Start Tomcat
service: name=tomcat state=started enabled=yes

- name: deploy iptables rules
template: src=iptables-save dest=/etc/sysconfig/iptables
when: "ansible_os_family == 'RedHat' and ansible_distribution_major_version == '6'"
notify: restart iptables

- name: insert firewalld rule for tomcat http port
firewalld: port=/tcp permanent=true state=enabled immediate=yes
when: "ansible_os_family == 'RedHat' and ansible_distribution_major_version == '7'"

- name: insert firewalld rule for tomcat https port
firewalld: port=/tcp permanent=true state=enabled immediate=yes
when: "ansible_os_family == 'RedHat' and ansible_distribution_major_version == '7'"

- name: wait for tomcat to start
wait_for: port=

рдпрд╣ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп рдХрд╛рд░реНрдп рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрд╢реНрд░рд┐рдд рдЬрд╛рд╡рд╛ JDK 1.7 рдХреЗ рд╕рд╛рде Apache Tomcat рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ Tomcat рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░, рдкреНрд░рд╛рд░рдВрдн рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдиреНрд╕рд┐рдмрд▓-рдЪрд╛рд▓рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЬрд┐рдиреНрдЬрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдореВрд▓реНрдпреЛрдВ рдХреА рдЧрдгрдирд╛ рдХреЛ рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рдмрдирд╛рддрд╛ рд╣реИред YAML рдХреЛрдб рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдкрдврд╝рдирд╛ рдФрд░ рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ Ansible рджреЛрдиреЛрдВ рдЙрдиреНрдирдд рдФрд░ рдиреМрд╕рд┐рдЦрд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╕реНрддреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рдмрди рд░рд╣рд╛ рд╣реИред

рдореБрдЦреНрдпрдордВрддреНрд░реА рдХрдардкреБрддрд▓реА рдХреЛрдб рдЙрджрд╛рд╣рд░рдг


рд╡рд┐рд╖рдп-рдЙрдиреНрдореБрдЦ рднрд╛рд╖рд╛ рдХрдардкреБрддрд▓реА рд░реВрдмреА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкрд░реНрд▓, рдЬрд╛рд╡рд╛ рдФрд░ рд╕реА ++ рдЬреИрд╕реА рдЕрдирд┐рд╡рд╛рд░реНрдп рд╕реА-рд╢реИрд▓реА рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рд╣реИред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд░реВрдмреА рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдПрдХ рдордзреНрдпрд╕реНрде рд╣реИ рдЬреЛ рдЗрд╕ рднрд╛рд╖рд╛ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдирддреАрдЬрддрди, рдЖрдкрдХреЛ рдкрдкреЗрдЯ рдбреАрдПрд╕рдПрд▓ рдХреЛ рдЙрддреНрдкрд╛рджрдХ рд░реВрдк рд╕реЗ рд╕реАрдЦрдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реВрдмреА рдХреЛ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдпрд╣ PuppetLabs MySQL рдХрдардкреБрддрд▓реА рдореЙрдбреНрдпреВрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдПрдХ рдХрдардкреБрддрд▓реА рдкреНрд░рдХрдЯ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬреЛ MySQL рдЧреНрд░рд╛рд╣рдХ рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ:

# @summary
#     Installs and configures the MySQL client.
#
# @example Install the MySQL client
#     class {'::mysql::client':
#         package_name => 'mysql-client',
#         package_ensure => 'present',
#         bindings_enable => true,
#     }
#
# @param bindings_enable
#     Whether to automatically install all bindings. Valid values are `true`, `false`. Default to `false`.
# @param install_options
#     Array of install options for managed package resources. You must pass the appropriate options for the package manager.
# @param package_ensure
#     Whether the MySQL package should be present, absent, or a specific version. Valid values are 'present', 'absent', or 'x.y.z'.
# @param package_manage
#     Whether to manage the MySQL client package. Defaults to `true`.
# @param package_name
#     The name of the MySQL client package to install.
#
class mysql::client (
    $bindings_enable = $mysql::params::bindings_enable,
    $install_options = undef,
    $package_ensure = $mysql::params::client_package_ensure,
    $package_manage = $mysql::params::client_package_manage,
    $package_name = $mysql::params::client_package_name,
)  inherits mysql::params {
    
    include '::mysql::client::install'

    if $bindings_enable {
        class { 'mysql::bindings':
            java_enable => true,
            perl_enable => true,
            php_enable => true,
            python_enable => true,
            ruby_enable => true,
        }
    }

# Anchor pattern workaround to avoid resources of mysql::client::install to
# "float off" outside mysql::client
anchor { 'mysql::client::start': }
-> Class['mysql::client::install']
-> anchor { 'mysql::client::end': }
}

рдХрдардкреБрддрд▓реА рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рдЕрдирд┐рд╡рд╛рд░реНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдХрдардкреБрддрд▓реА рдбреАрдПрд╕рдПрд▓ рдШреЛрд╖рд┐рдд рд╣реИ, рдХреБрдЫ рдорд╛рдпрдиреЛрдВ рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд╕рд╛рде рд╣реА рдКрдкрд░ рджрд┐рдП рдЧрдП Ansible рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рд╕реЗ YAML рдХреЛрдбред рдкрдкреЗрдЯ рдФрд░ рдЕрдиреНрд╕рд┐рдмрд▓ рджреЛрдиреЛрдВ рдХреА рдШреЛрд╖рдгрд╛рддреНрдордХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рджреЛрдиреЛрдВ рдХреЛрдб рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рд╡реЗ рд╢реЗрдл рдЬреИрд╕реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕рдорд╛рди рдФрд░ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рдХрд░реАрдм рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдШреЛрд╖рдгрд╛рддреНрдордХ рднрд╛рд╖рд╛ рдХрдардкреБрддрд▓реА рд░реВрдмреА рдЬреИрд╕реА рд░рдЪрдирд╛рдПрдБ рднреА рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ рдЬреИрд╕реЗ рд╕рд╢рд░реНрдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдФрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпрд╛рдБ, рдЬреЛ рдлрд┐рд░ рд╕реЗ рд░реВрдмреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рднрд╛рд╖рд╛ рдирд╣реАрдВ рдмреЛрд▓рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдордЭреМрддрд╛ рд╣реИред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА


рд╡рд┐рдХрд╛рд╕ рдЯреАрдо рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА SCM рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ Ansible Developers рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рдореЗрдВ рдХреЛрдИ рдкреНрд░рддрд┐рдпреЛрдЧреА рдирд╣реАрдВ рд╣реИрдВред рдиреЛрдбреНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд░рдирд╛ рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рджреЛрдиреЛрдВ рд╡рд┐рдХрд╛рд╕ рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЛ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрдардкреБрддрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдпрд╣ рд╕рд┐рд░реНрдл рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░рдгрд╛рд▓реА рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреА рд╣реИ рдЬрдм рдЖрдк рдЗрд╕рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рддрд░реАрдХреЗ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ, рдХрдардкреБрддрд▓реА рдмрд╣реБрдд рдордЬрдмреВрдд рд╣реИ, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрд╕рд╛рдзрди рдХреЛ рдореЙрдбрд▓рд┐рдВрдЧ рдХрд░рддреА рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдорд╛рдирдХ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рдореЙрдбреНрдпреВрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рдореИрдирд┐рдлрд╝реЗрд╕реНрдЯ рдореЗрдВ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реАрдЦрдиреЗ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рджреЛрдиреЛрдВ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рд▓реЗрдХрд┐рди Ansible рдХреЛ рдереЛрдбрд╝рд╛ рдлрд╛рдпрджрд╛ рд╣реИред рдШреЛрд╖рдгрд╛рддреНрдордХ YAML рд╢реИрд▓реА рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЗрд╕рд▓рд┐рдП Ansible рдХреЛрдб рдХрднреА рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдмреАрдЪ, рдХрдардкреБрддрд▓реА рдПрдХ рд╣реА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ рдФрд░ рдХреЛрдб рдХреЗ рд╕рдВрдпреЛрдЬрди рд╕реЗ рдЬреБрдбрд╝реА рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдИ рд╣реИред рдЗрд╕рдХреЗ рдХрд╛рд░рдг рдПрдХ рднрдВрдбрд╛рд░рдг рд╕рдорд╛рдзрд╛рди рдкрдкреЗрдЯ рд╣реЗрдЗрд░рд╛ рдХрд╛ рдЖрдЧрдорди рд╣реБрдЖ, рдЬреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдбреЗрдЯрд╛ рдХреЗ рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдЬреЛрдбрд╝реЗ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП YAML рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдкрд┐рдпрд░реЗ рджреЗрд╡рдЯреЙрдкреНрд╕ рдХреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд░рд▓ рдФрд░ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рд╣рд┐рд░рд╛ рдПрдХ рд▓рдВрдмрд╛ рд░рд╛рд╕реНрддрд╛ рддрдп рдХрд░рддрд╛ рд╣реИред YAML рдкреНрд░рд╛рд░реВрдк рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд▓реЛрдХрдкреНрд░рд┐рдп рд╕рд╛рдмрд┐рдд рд╣реБрдЖ рд╣реИ, рдЗрд╕ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП SaltStack рд╕реЗ рднреАред
рджреЛрдиреЛрдВ SCM рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪреЗрдХрд┐рдВрдЧ рд╕реЗ рд▓реЗрдХрд░ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рдПрдХреАрдХрд░рдг рддрдХ, рдЖрдкрдХреЗ CM рдХреЛ рдорд╛рдиреНрдп рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд▓рд╛рдЧрдд





рдУрдкрди рд╕реЛрд░реНрд╕ рдЯреВрд▓реНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдВрдирд┐рд╕рд┐рдмрд▓ рдФрд░ рдкрдкреЗрдЯ рдХреЛ рдЕрдкрдиреА рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рдиреАрддрд┐рдпреЛрдВ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдорд┐рд▓рддрд╛ рд╣реИред

Ansible рдХрд╛ рдУрдкрди рд╕реЛрд░реНрд╕ рд░рд┐рд▓реАрдЬрд╝ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореБрдлреНрдд рд╣реИред рдЬрд┐рди рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЛ рд╕реБрд░рдХреНрд╖рд╛, рд╕реНрдерд┐рд░рддрд╛ рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдХреА рдЕрдзрд┐рдХ рдЧрд╛рд░рдВрдЯреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЙрдиреНрд╣реЗрдВ Red Hat Linux рдХреЗ рд╕рд╛рде рдЬрд╣рд╛рдЬ рдмрдирд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝-рдХреНрд▓рд╛рд╕ рдЙрддреНрдкрд╛рдж Ansible Engine рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Ansible рдЗрдВрдЬрди рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреА рд▓рд╛рдЧрдд рдЖрдо рддреМрд░ рдкрд░ $ 47.50 рд╕реЗ $ 70 рдкреНрд░рддрд┐ рд╡рд░реНрд╖ рдкреНрд░рддрд┐ рдиреЛрдб рд╣реЛрддреА рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдкрд╕рдВрджреАрджрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред

рдпрджрд┐ рдЖрдкрдХреЛ рддреНрд╡рд░рд┐рдд рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдХреЗ рд╕рд╛рде рддрдХрдиреАрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред Ansible рдЯреЙрд╡рд░ рд▓рд╛рд░реНрдЬ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдореИрдиреЗрдЬрдореЗрдВрдЯ рдЯреВрд▓ рд╕реЗрд╡рд╛ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ рдФрд░ рдЖрдкрдХреА рдХрдВрдкрдиреА рдХреЛ рдПрдХ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдХрдВрдЯреНрд░реЛрд▓ рдкреИрдирд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рд╢рд┐рдХреНрд╖рдг, рдкреНрд░рдмрдВрдзрди рдФрд░ рдиреМрдХрд░реА рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

Ansible рдХреА рддрд░рд╣, рдУрдкрди рд╕реЛрд░реНрд╕ рдкрдкреЗрдЯ рд░рд┐рд▓реАрдЬ рдореБрдлреНрдд рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИред рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рддрдХрдиреАрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП, рд╕рдВрдЧрдарди рдкрдкреЗрдЯ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреА рд▓рд╛рдЧрдд $ 112 рд╕реЗ $ 199 рдкреНрд░рддрд┐ рд╡рд░реНрд╖ рдкреНрд░рддрд┐ рдиреЛрдб рд╣реИред рдХрдардкреБрддрд▓реА рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдХрдИ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдПрдХ рдкреИрдХреЗрдЬ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЙрджреНрдпрдо рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рдФрд░ рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рд╕рдореБрджрд╛рдп


рдкрдкреЗрдЯ, 2005 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛, рдПрдХ рдкреБрд░рд╛рдирд╛ DevOps рдЯреВрд▓ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЕрдкрдирд╛ рд╕рдореБрджрд╛рдп рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдзрд╛рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдордп рдерд╛ред рдлрд┐рд░ рднреА, рдЕрдкрдиреЗ рдирдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП 2012 рдореЗрдВ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдиреНрд╕рд┐рдмрд▓, рдПрдХ рднреА рдмрдбрд╝реЗ рджрд░реНрд╢рдХреЛрдВ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрддреНрд╕рд╛рд╣реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдПрдХ рдмрд╣реБрдд рд╣реА рдЧрддрд┐рд╢реАрд▓ рд╕рдореБрджрд╛рдп рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдХрдардкреБрддрд▓реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рдЙрдмреЗрд░, рд╕реЗрд▓реНрд╕рдлреЛрд░реНрд╕ рдФрд░ рдкреЗрдкрд╛рд▓ рдЬреИрд╕реА рдХрдВрдкрдирд┐рдпрд╛рдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЕрдиреНрд╕рд┐рдмрд▓ рд╕рдореБрджрд╛рдп рдореЗрдВ рдбрд┐рдЬрд┐рдЯрд▓ рдорд╣рд╛рд╕рд╛рдЧрд░, 9 рдЬреАрдПрдЬреА, рдФрд░ рдЯрд╛рдЗрдкрдлрд╝реЙрд░реНрдо рдЬреИрд╕реА рдХрдВрдкрдирд┐рдпрд╛рдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдпрджрд┐ рд╣рдо рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдХреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдРрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрдХреЗрддрдХ рдХреА рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ GitHub рдкрд░ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛, 4,800 рд╕реЗ рдЕрдзрд┐рдХ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде, рддреЛ рдЙрддреНрдкрд╛рдж рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП 527 рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрдардкреБрддрд▓реА рд╕реЗ рдХрд╣реАрдВ рдмреЗрд╣рддрд░ рд╣реИред рд╣рд╛рд▓ рдХреЗ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ Ansible рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЗрддрдирд╛ рддреЗрдЬрд╝ рд╣реБрдЖ рд╣реИ рдХрд┐ рдЗрд╕рдиреЗ Ansible Galaxy рдХреЗ рдПрдХ рдЕрд▓рдЧ "рдЧреИрд▓реЗрдХреНрдЯрд┐рдХ" рднрдВрдбрд╛рд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рд╣реИ ред рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ Ansible рд╕рдореБрджрд╛рдп рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрддреНрдкрд╛рдж рдХреЗ рдЖрдЧреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдпреЛрдЧрджрд╛рди рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕ рдмреАрдЪ, рдХрдардкреБрддрд▓реА рд╕рдореБрджрд╛рдп, рдЬреЛ рдзреАрд░реЗ-рдзреАрд░реЗ рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдиреЗ рдЖрдкрдХреЗ рдПрд╕рд╕реАрдПрдо рдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдБрдЪрд╛ рдмрдирд╛рдпрд╛ рд╣реИред рдХрдардкреБрддрд▓реА рдлреЛрд░реНрдЬ рдХрдардкреБрддрд▓реА рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рджреЛрдиреЛрдВ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХреЗ рдЙрдкрдХрд░рдг рд╣реИрдВред Puppet рдФрд░ Ansible рджреЛрдиреЛрдВ рдЕрдиреНрдп рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ DevOps рд╕рд┐рд╕реНрдЯрдо рдЬреИрд╕реЗ Docker, Kubernetes рдФрд░ Jenkins рдФрд░ AWS рдФрд░ Azure рдХреНрд▓рд╛рдЙрдб рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдПрдХреАрдХреГрдд рд╣реИрдВред

Ansible рдмрдирд╛рдо рдХрдардкреБрддрд▓реА: рдЬреЛ рдмреЗрд╣рддрд░ рд╣реИ?


рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЪреБрдирд╛рд╡ рдЖрдкрдХрд╛ рд╣реИред рдЕрдВрд╕рд┐рдмрд▓ рдФрд░ рдкрдкреЗрдЯ рджреЛрдиреЛрдВ рдХреА рдШреЛрд╖рдгрд╛рддреНрдордХ рд╢реИрд▓реА рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпреЗ рдЙрдкрдХрд░рдг рдЕрдиреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреА рдЯреАрдо рдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдПрд╕рд╕реАрдПрдо рдХреЗ рдбрд┐рдЬрд╛рдЗрди рдФрд░ рдлрд╛рдпрджреЗ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред
Ansible рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдЕрдиреБрдХреВрд▓ рд╣реИ рдЬреЛ YAML- рд╢реИрд▓реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рдорд╢реАрдиреЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рдкреВрд▓ рдХреЛ рдЬрд▓реНрджреА рдФрд░ рдПрдХ рд╕рд╛рде рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рддреЗ рд╕рдордп рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░рд▓ рд╣реЛрдиреЗ рдХреЗ Ansible рдХреЗ рджрд░реНрд╢рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рджрд░реНрд╢рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдореМрдЬреВрджрд╛ SSH рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИред

рдХрдардкреБрддрд▓реА рдЙрди рдЯреАрдореЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЬреЛ рдбреАрдПрд╕рдПрд▓ рдХреЛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕реБрд╕рдВрдЧрдд, рджреЛрд╣рд░рд╛рдП рддрд░реАрдХреЗ рд╕реЗ рдореЙрдбрд▓ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдХрдардкреБрддрд▓реА рдбреАрдПрд╕рдПрд▓ рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдмрдбрд╝реА рдЯреАрдореЛрдВ рдХреЛ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдФрд░ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдПрдХ рдкреВрд░реЗ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рд╕рд╛рдеред

рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рд╕рд┐рджреНрдзрд╛рдВрдд рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВ, рддреЛ рдХрдардкреБрддрд▓реА рдФрд░ Ansible рдХреЗ рдмреАрдЪ рдЪрдпрди рдХрд░рдирд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред

рдЬрд╛рдБрдЪ - рдкрд░рд┐рдгрд╛рдо


рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕реБрдЭрд╛рд╡ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдЖрдк рдХреЛ рджреЛрдиреЛрдВ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн рдФрд░ рдиреБрдХрд╕рд╛рди рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рд╛рдПрдБред



рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХрд╛ рдПрдХ рд╕рд╛ :)


рд╣рдорд╛рд░реЗ рд╕рд╛рде рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдХреНрдпрд╛ рдЖрдк рд╣рдорд╛рд░реЗ рд▓реЗрдЦ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ? рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рд╛рдордЧреНрд░реА рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдПрдХ рдСрд░реНрдбрд░ рджреЗрдХрд░ рдпрд╛ $ 4.99 рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рджреЛрд╕реНрддреЛрдВ рдХреЗ рдХреНрд▓рд╛рдЙрдб-рдЖрдзрд╛рд░рд┐рдд VPS рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рдХреЗ рд╣рдореЗрдВ рд╕рдорд░реНрдерди рджреЗрдВ, рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдВрдЯреНрд░реА-рд▓реЗрд╡рд▓ рд╕рд░реНрд╡рд░ рдХрд╛ рдПрдХ рдЕрдиреВрдард╛ рдПрдирд╛рд▓реЙрдЧ: VPS (KVM) E5-2697 3 (6 рдХрд░реЛрдбрд╝) 10GB DDR4 480GB SSD 1Gbps рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрд░реА рд╕рдЪреНрдЪрд╛рдИ $ 19 рдпрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рдХреИрд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ? (рд╡рд┐рдХрд▓реНрдк RAID1 рдФрд░ RAID10 рдХреЗ рд╕рд╛рде рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, 24 рдХреЛрд░ рддрдХ рдФрд░ 40GB DDR4 рддрдХ)ред

рдбреЗрд▓ R730xd рдПрдореНрд╕реНрдЯрд░реНрдбрдо рдореЗрдВ рдЗрдХреНрд╡рд┐рдирд┐рдХреНрд╕ рдЯреАрдпрд░ IV рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдореЗрдВ 2 рдЧреБрдирд╛ рд╕рд╕реНрддрд╛? рдХреЗрд╡рд▓ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV рдиреАрджрд░рд▓реИрдВрдб рдХреЗ 199 рдбреЙрд▓рд░ рдореЗрдВ рд╕реЗ рд╣реИ!рдбреЗрд▓ R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - $ 99 рд╕реЗ! рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ Bldg рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝реЗрдВ ред рдПрдХ рдкреИрд╕рд╛ рдХреЗ рд▓рд┐рдП 9,000 рдпреВрд░реЛ рдХреА рд▓рд╛рдЧрдд рдбреЗрд▓ R730xd E5-2650 v4 рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╡рд░реНрдЧ рд╕реА?

All Articles