เบˆเบฒเบ "เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™" เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux

เบ–เป‰เบฒเบžเบทเป‰เบ™เบ–เบฒเบ™เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡ IT เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบ•เบตเบšเป‚เบ•เป„เบงเป€เบเบตเบ™เป„เบ›, เปƒเบ™เป„เบงเป†เบ™เบตเป‰เบซเบผเบทเบ•เปเปˆเบกเบฒเบ—เปˆเบฒเบ™เบˆเบฐเบ›เบฐเป€เบŠเบตเบ™เบเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบ: เป€เบžเบตเปˆเบกเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบกเบฐเบ™เบธเบ”เป€เบ›เบฑเบ™เป€เบชเบฑเป‰เบ™เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบกเบฑเบ™เบซเบผเบทเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบˆเบปเบ™เบเปˆเบงเบฒเบšเบฒเบ‡เบˆเบธเบ”, เบžเบงเบเป€เบฎเบปเบฒเบญเบฒเป„เบชเบขเบนเปˆเปƒเบ™ paradigm เบ—เปเบฒเบญเบดเบ”, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบเบฒเบงเป„เบ›เบชเบนเปˆ Infrastructure-as-Code เป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เบˆเบฒเบ "เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™" เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux

เปเบ™เปˆเบ™เบญเบ™, NSPK เบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปเบ•เปˆเบšเบฑเบ™เบเบฒเบเบฒเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป„เบ”เป‰เบ„เบญเบšเบ„เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”เปƒเบ™เบ›เบตเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบเบฒเบ™เบกเบตเบขเบนเปˆ, เปเบฅเบฐเป€เบ›เบฑเบ™เบ›เบตเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบซเบผเบฒเบ. เบŠเบทเปˆโ€‹เบ‚เบญเบ‡โ€‹เบ‚เป‰เบญเบโ€‹เปเบกเปˆเบ™ Kornyakov Dmitry, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบžเป‰เบญเบกเบชเบนเบ‡เบชเปเบฒเบฅเบฑเบšเบซเบผเบฒเบเบเบงเปˆเบฒ 10 เบ›เบต. เบฅเบฒเบงเป„เบ”เป‰เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเบ—เบตเบกเบ‡เบฒเบ™ NSPK เปƒเบ™เป€เบ”เบทเบญเบ™เบกเบฑเบ‡เบเบญเบ™ 2016 เปเบฅเบฐ, เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบšเปเปˆเป€เบซเบฑเบ™เบˆเบธเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”, เปเบ•เปˆเบกเบฒเบขเบนเปˆเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบเบดเปˆเบ‡เปƒเบซเบเปˆ.

เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒเบ—เบตเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเบซเบ™เบญเบ‡ 2 เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบšเปเบฅเบดเบชเบฑเบ”. เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™. เบญเบตเป€เบกเบงเบ„เบงเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, DNS เบ„เบงเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, เปเบฅเบฐเบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเป‚เบ”เป€เบกเบ™เบ„เบงเบ™เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบšเปเปˆเบ„เบงเบ™เบ‚เบฑเบ”เบ‚เป‰เบญเบ‡. เบžเบนเบกเบชเบฑเบ™เบ–เบฒเบ™เบ”เป‰เบฒเบ™เป„เบญเบ—เบตเบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”เปเบกเปˆเบ™เปƒเบซเบเปˆ! เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบฅเบฐเบšเบปเบšเบ—เบธเบฅเบฐเบเบดเบ”เปเบฅเบฐเบžเบฒเบฅเบฐเบเบดเบ”เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™, เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบกเบตเบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เปเบกเปˆเบ™ 99,999. เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบ•เบปเบงเป€เบญเบ‡, เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบฎเปˆเบฒเบ‡เบเบฒเบเปเบฅเบฐ virtual. เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒ, เปเบฅเบฐเบญเบฑเบ™เปƒเบซเบกเปˆเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบดเปƒเบซเป‰เปเบเปˆเบฅเบนเบเบ„เป‰เบฒเบˆเบฒเบเบซเบผเบฒเบเบžเบฐเปเบ™เบเบเบฒเบ™. เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบชเบธเบกเปƒเบชเปˆเบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ—เบตเปˆเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบชเปเบฒเบฅเบฑเบšเบงเบปเบ‡เบˆเบญเบ™เบŠเบตเบงเบดเบ”เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ.

เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™

เปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบ”เบตเบ™เบ—เบฒเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, stack เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบŠเบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบ™เบตเป‰:
OS CentOS 7
FreeIPA Domain Controllers
เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ” - Ansible(+Tower), Cobbler

เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™ 3 เป‚เบ”เป€เบกเบ™, เปเบœเปˆเบ‚เบฐเบซเบเบฒเบเปƒเบ™เบ—เบปเปˆเบงเบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡. เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบ™เบถเปˆเบ‡เบกเบตเบฅเบฐเบšเบปเบšเบซเป‰เบญเบ‡เบเบฒเบ™เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เบปเบ”เบชเบญเบš, เปƒเบ™เบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเบกเบต PROD.

เบเบฒเบ™เบชเป‰เบฒเบ‡เป€เบŠเบตเบšเป€เบงเบตเบขเบนเปˆเปƒเบ™เบˆเบธเบ”เบซเบ™เบถเปˆเบ‡เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบ™เบตเป‰:

เบˆเบฒเบ "เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™" เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux

เปƒเบ™เปเบกเปˆเปเบšเบš VM, CentOS เปเบกเปˆเบ™เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบท /etc/resolv.conf เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡, เบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเปเบกเปˆเบ™เบœเปˆเบฒเบ™ Ansible.

CMDB - Excel.

เบ–เป‰เบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบกเปˆเบ™เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบฎเปˆเบฒเบ‡เบเบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบ„เบฑเบ”เบฅเบญเบเป€เบ„เบทเปˆเบญเบ‡ virtual, OS เป„เบ”เป‰เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เปƒเบชเปˆเบกเบฑเบ™เป‚เบ”เบเปƒเบŠเป‰ Cobbler - เบ—เบตเปˆเบขเบนเปˆ MAC เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆ Cobbler config, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบขเบนเปˆ IP เบœเปˆเบฒเบ™ DHCP, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ OS. เบ–เบทเบเป€เบžเบตเปˆเบก.

เปƒเบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”เบžเบงเบเป€เบฎเบปเบฒเบžเบฐเบเบฒเบเบฒเบกเป€เบฎเบฑเบ”เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบ™ Cobbler. เปเบ•เปˆเป€เบกเบทเปˆเบญเป€เบงเบฅเบฒเบœเปˆเบฒเบ™เป„เบ›, เบชเบดเปˆเบ‡เบ™เบตเป‰เป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบšเบฑเบ™เบซเบฒเบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบ—เบตเปˆเบ—เบฑเบ‡เป„เบ›เบซเบฒเบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบญเบทเปˆเบ™เป†เปเบฅเบฐเบฅเบฐเบซเบฑเบ” Ansible เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบฐเบเบฝเบก VMs.

เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ™เบฑเป‰เบ™, เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบผเบฒเบโ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เบงเปˆเบฒ Ansible เป€เบ›เบฑเบ™โ€‹เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบ—เบตเปˆโ€‹เบชเบฐโ€‹เบ”เบงเบโ€‹เบ‚เบญเบ‡ Bash เปเบฅเบฐโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰ skimp เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบญเบญเบโ€‹เปเบšเบšโ€‹เป‚เบ”เบโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ shell เปเบฅเบฐ sed. Bashsible เป‚เบ”เบเบฅเบงเบก. เปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบ–เป‰เบฒ playbook เบชเปเบฒเบฅเบฑเบšเป€เบซเบ”เบœเบปเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เบกเบฑเบ™เบเปเปˆเบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เบฅเบถเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เปเบเป‰เป„เบ‚ playbook เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡. เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเป‰เบงเบšเปเปˆเบกเบตเบเบฒเบ™เบชเบฐเบšเบฑเบšเบ‚เบญเบ‡เบชเบฐเบ„เบฃเบดเบš, เบšเปเปˆเบกเบตเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบšเบšเบžเบปเบเบžเบฒ.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เบšเบฒเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบ™เป€เบŠเบตเบšเป€เบงเบตเบ—เบฑเบ‡เปเบปเบ”:

  1. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ›เปˆเบฝเบ™โ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เปƒเบ™โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เปเบกเปˆโ€‹เบ‚เปˆเบฒเบโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบขเบนเปˆโ€‹เปƒเบ™โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เป€เบซเบ”โ€‹เบœเบปเบ™ / เบชเบนเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹. เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบšเปเปˆเปเบกเปˆเบ™เปƒเบ™เบกเบทเป‰เบซเบ™เบถเปˆเบ‡ - เบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เปเบฅเบฐเบเบปเบ”เบซเบกเบฒเบเบ‚เบญเบ‡เบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ–เบทเบเบ™เปเบฒเป„เบ›เปƒเบŠเป‰เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบญเบฒเบ”เบˆเบฐเบ—เปเบฒเบฅเบฒเบเปเบฅเบฐเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบซเบกเปˆ - เบˆเบฒเบเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเบฑเบš OS เบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡.
  2. เบเบฒเบ™เปเบเป‰เป„เบ‚เบกเบฑเบ™เบขเบนเปˆเปƒเบ™ Ansible
  3. เบžเบงเบเป€เบฎเบปเบฒเปเบเป‰เป„เบ‚เบกเบฑเบ™เบขเบนเปˆเปƒเบ™ Cobbler
  4. เป€เบฎเบฑเบ”เป€เบฅเบทเป‰เบกเบ„เบทเบ™ N เป€เบงเบฅเบฒเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเปˆเบชเบปเบกเป€เบซเบ”เบชเบปเบกเบœเบปเบ™ / เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™

เป€เบžเบทเปˆเบญเปƒเบซเป‰เบ—เบธเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ„เปˆเบญเบ‡เปเบ„เป‰เบง, เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบ›เบฑเบ”เปƒเบˆเบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบ, เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡.

  • เบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เบฅเบฐเบซเบฑเบ” ansible, เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ
  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบžเบฒเบเปƒเบ™
  • เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เป‚เบ”เบโ€‹เบญเบตเบ‡โ€‹เปƒเบชเปˆโ€‹เบœเบปเบ™โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹เป€เบซเบ”โ€‹เบเบฒเบ™ / เบญเบธโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เป€เบซเบ”โ€‹
  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž, เบ—เบฑเบ‡เบžเบฒเบเปƒเบ™เปเบฅเบฐเบžเบฒเบเบ™เบญเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, PCI DSS เป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เบ”เป‰เบงเบเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเบกเปˆเบ—เบธเบเป†เบ›เบต

เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเบฐเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบ”เบตเบ™เบ—เบฒเบ‡

เบˆเปเบฒเบ™เบงเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ / เป‚เบ”เป€เบกเบ™ / เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบกเป€เบซเบ”เบœเบปเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™, เปเบฅเบฐเบกเบตเบˆเปเบฒเบ™เบงเบ™เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ. เปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบกเบฒเป€เบ–เบดเบ‡เบชเบฒเบกเบ—เบดเบ”เบ—เบฒเบ‡เบ—เบตเปˆเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ:

  1. เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบกเบฐเบ™เบธเบ”เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบŠเปเป‰เบฒเบŠเป‰เบญเบ™เบ„เบงเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบซเบผเบฒเบเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰.
  2. เบเบฒเบ™เป€เบฎเบฑเบ”เบŠเป‰เบณ. เบกเบฑเบ™เบ‡เปˆเบฒเบเบเบงเปˆเบฒเบซเบผเบฒเบเปƒเบ™เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡เป€เบกเบทเปˆเบญเบกเบตเบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒ. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบฐเบเบฝเบกเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ„เบงเบ™เบˆเบฐเบ„เบทเบเบฑเบ™เบขเบนเปˆเบ—เบปเปˆเบงเบ—เบธเบเปเบซเปˆเบ‡. เบ™เบตเป‰เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบตเบกเบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™ - เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ—เบตเปˆเบˆเบฐเบชเบดเป‰เบ™เบชเบธเบ”เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบœเบฐเบฅเบดเบ”เบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เบ„เปˆเบฒเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš.
  3. เบ„เบงเบฒเบกเบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบ„เบงเบฒเบกเป‚เบ›เปˆเบ‡เปƒเบชเบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ.

เบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบˆเบฐเป€เบžเบตเปˆเบกเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเบญเบ‡เบขเปˆเบฒเบ‡.

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฅเบทเบญเบ GitLab CE เป€เบ›เบฑเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบšเปเปˆเปเบกเปˆเบ™เบขเปˆเบฒเบ‡เบ™เป‰เบญเบเบชเปเบฒเบฅเบฑเบšเป‚เบกเบ”เบนเบ™ CI / CD เบ—เบตเปˆเบกเบตเปƒเบ™เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™.

เบซเบตเบšเบ‚เบญเบ‡เบ„เบงเบฒเบกเบฅเบฑเบš - Hashicorp Vault, incl. เบชเปเบฒเบฅเบฑเบš API เบ—เบตเปˆเบเบดเปˆเบ‡เปƒเบซเบเปˆ.

เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เปเบฅเบฐโ€‹เบžเบฒโ€‹เบฅเบฐโ€‹เบšเบปเบ”โ€‹เบšเบฒเบ” ansible โ€“ Molecule+Testinfra. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบˆเบฐเป„เบงเบ‚เบถเป‰เบ™เบซเบผเบฒเบเบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš ansible mitogen. เปƒเบ™เบ‚เบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ‚เบฝเบ™ CMDB เปเบฅเบฐ orchestrator เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ” (เปƒเบ™เบฎเบนเบšเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡ Cobbler), เปเบ•เปˆเบ™เบตเป‰เปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบกเบปเบ”, เป€เบŠเบดเปˆเบ‡เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบฅเบฐเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ•เบปเป‰เบ™เบ•เปเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบˆเบฐเบšเบญเบเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ:

เป‚เบกเป€เบฅเบเบธเบ™ + Testinfra
Ansible + Tower + AWX
เป‚เบฅเบเบ‚เบญเบ‡เป€เบŠเบตเบšเป€เบงเบต + DITNET (เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡)
เบ„เบนเบšเบฒ
Gitlab + GitLab runner
Hashicorp Vault

เบˆเบฒเบ "เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™" เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux

เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบเปˆเบฝเบงเบเบฑเบšเบšเบปเบ”เบšเบฒเบ” ansible. เปƒเบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเบซเบผเบฑเบ‡เบˆเบฒเบ refactoring เบซเบผเบฒเบเป†เบ„เบฑเป‰เบ‡, เบกเบฑเบ™เบกเบต 17 เบญเบฑเบ™. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ‚เปเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบ—เปเบฒเบฅเบฒเบ monolith เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบšเบปเบ”เบšเบฒเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”, เป€เบŠเบดเปˆเบ‡เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบ•เบปเบงเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ; เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเปเบ—เบฑเบ. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เปเบšเปˆเบ‡โ€‹เบžเบฒโ€‹เบฅเบฐโ€‹เบšเบปเบ”โ€‹เบšเบฒเบ”โ€‹เป‚เบ”เบโ€‹เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบ‡เบฒเบ™ - เป€เบ„เบทเบญโ€‹เบ‚เปˆเบฒเบโ€‹, เบเบฒเบ™โ€‹เบšเบฑเบ™โ€‹เบ—เบถเบโ€‹, เบเบฒเบ™โ€‹เบซเบธเป‰เบกโ€‹เบซเปเปˆโ€‹, เบฎเบฒเบ”โ€‹เปเบงโ€‹, เป‚เบกโ€‹เป€เบฅโ€‹เบเบธเบ™โ€‹เปเบฅเบฐโ€‹เบญเบทเปˆเบ™เป†โ€‹. เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบเบธเบ”เบ—เบฐเบชเบฒเบ”เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰. เบ‚เป‰เบญเบเบšเปเปˆเบขเบทเบ™เบขเบฑเบ™เบงเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡เบญเบฑเบ™เบ”เบฝเบง, เปเบ•เปˆเบกเบฑเบ™เป„เบ”เป‰เบœเบปเบ™เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ.

  • เบเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบˆเบฒเบ "เบฎเบนเบšเบžเบฒเบšเบ—เบญเบ‡" เปเบกเปˆเบ™เบŠเบปเปˆเบง!เบ‚เปเป‰เป€เบชเบเบ›เบฝเบšเบ•เบปเป‰เบ™เบ•เปเปเบกเปˆเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบฎเบนเป‰เบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™เบงเปˆเบฒเบฎเบนเบšเบžเบฒเบšเบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเบšเปƒเบ”เปƒเบ™เบ•เบญเบ™เบ™เบตเป‰, เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฐเบกเบฒเบฎเบญเบ”เบ—เบธเบเบฎเบนเบšเปƒเบ™เบŸเบฒเบก virtualization เบ—เบฑเบ‡เบซเบกเบปเบ”.
  • เปƒเบŠเป‰เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™เบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเปเบฅเบฐเบ•เบปเบเบฅเบปเบ‡เบเบฑเบšเบžเบฐเปเบ™เบเบญเบทเปˆเบ™เป†เบ—เบตเปˆเบ—เปˆเบฒเบ™เบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบชเปเบฒเบฅเบฑเบšเป„เบŸเบฅเปŒเบฅเบฐเบšเบปเบšเบ•เบปเป‰เบ™เบ•เปเบ•เบปเบงเบขเปˆเบฒเบ‡:
    1. เบ›เปˆเบญเบเปƒเบซเป‰ /etc/sysctl.conf เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ„เบงเบ™เบˆเบฐเบขเบนเปˆเปƒเบ™ /etc/sysctl.d/ เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปƒเบ™เป„เบŸเบฅเปŒเบ”เบฝเบง, เบเบณเบ™เบปเบ”เป€เบญเบ‡เบชเบณเบฅเบฑเบšเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปƒเบ™เป„เบŸเบฅเปŒเบญเบทเปˆเบ™.
    2. เปƒเบŠเป‰ override เป„เบŸเบฅเปŒเป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบซเบ™เปˆเบงเบเบ‡เบฒเบ™เบฅเบฐเบšเบปเบš.
  • เปเบกเปˆเปเบšเบš config เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเบฅเบงเบกเบžเบงเบเบกเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”; เบ–เป‰เบฒเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, เบšเปเปˆเบกเบต sed เบซเบผเบท analogues เบ‚เบญเบ‡เบกเบฑเบ™เบขเบนเปˆเปƒเบ™ playbooks
  • เบเบฒเบ™เบ›เบฑเบšเบ›เปˆเบฝเบ™เบฅเบฐเบซเบฑเบ”เบฅเบฐเบšเบปเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ:
    1. เปเบšเปˆเบ‡เปœเป‰เบฒเบงเบฝเบเบญเบญเบเป€เบ›เบฑเบ™เบซเบปเบงเปœเปˆเบงเบเบ—เบตเปˆเบกเบตเป€เบซเบ”เบœเบปเบ™ เปเบฅเบฐเบ‚เบฝเบ™เบ„เบทเบ™ monolith เปƒเบซเป‰เป€เบ›เบฑเบ™เบžเบฒเบฅเบฐเบšเบปเบ”เบšเบฒเบ”
    2. เปƒเบŠเป‰ linters! Ansible-lint, yaml-lint, เปเบฅเบฐเบญเบทเปˆเบ™เป†
    3. เบ›เปˆเบฝเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ! เบšเปเปˆเบกเบต bashable. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบญเบฐเบ—เบดเบšเบฒเบเบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบฅเบฐเบšเบปเบš
  • เบชเปเบฒเบฅเบฑเบšเบšเบปเบ”เบšเบฒเบ” Ansible เบ—เบฑเบ‡เบซเบกเบปเบ”, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปƒเบ™เป‚เบกเป€เบฅเบเบธเบ™เปเบฅเบฐเบชเป‰เบฒเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เบ•เปเปˆเบกเบทเป‰.
  • เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบเบฐเบเบฝเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš (เบŠเบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™เบกเบตเบซเบผเบฒเบเบเปˆเบงเบฒ 100), เบ›เบฐเบกเบฒเบ™ 70000 เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เป„เบ”เป‰เบ–เบทเบเบžเบปเบšเป€เบซเบฑเบ™. เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเป€เบ”เบทเบญเบ™เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบกเบฑเบ™.เบˆเบฒเบ "เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™" เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux

เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบฒเบฅเบฐเบšเบปเบ”เบšเบฒเบ” ansible เป„เบ”เป‰เบเบฝเบกเบžเป‰เบญเบก, templated เปเบฅเบฐเบเบงเบ”เบชเบญเบšเป‚เบ”เบ linters. เปเบฅเบฐเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ gits เป„เบ”เป‰เบ–เบทเบเบเบปเบเบ‚เบถเป‰เบ™เบกเบฒเบขเบนเปˆเบ—เบปเปˆเบงเบ—เบธเบเปเบซเปˆเบ‡. เปเบ•เปˆเบ„เปเบฒเบ–เบฒเบกเบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ•เปˆเบฒเบ‡เป†เบเบฑเบ‡เบ„เบปเบ‡เป€เบ›เบตเบ”เบขเบนเปˆ. เบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆ synchronize เบเบฑเบš scripts. เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒ:

เบˆเบฒเบ "เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™" เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ Linux

เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบกเบฒเบฎเบญเบ”, CI เป„เบ”เป‰เบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบง, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™, เบžเบฒเบฅเบฐเบšเบปเบ”เบšเบฒเบ”เบ–เบทเบเบกเป‰เบงเบ™เบญเบญเบ, เปเบฅเบฐเบ—เบปเบ”เบชเบญเบšเป‚เบ”เบเป‚เบกเป€เบฅเบเบธเบ™. เบ–เป‰เบฒเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต, เบฅเบฐเบซเบฑเบ”เป„เบ›เบซเบฒเบชเบฒเบ‚เบฒเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ™เปเบฒเปƒเบŠเป‰เบฅเบฐเบซเบฑเบ”เปƒเบซเบกเปˆเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡. เบ™เบตเป‰เปเบกเปˆเบ™เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡ stopper เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบกเบตเบชเบนเบ‡เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡เบเบฒเบเป€เบ›เบฑเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เบเบปเบ”เบซเบกเบฒเบเบ‚เบญเบ‡เบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒเบกเบตเบšเบปเบ”เบšเบฒเบ” - เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบšเปเปˆเป€เบ›เบฑเบ™เบญเบฑเบ™เบ•เบฐเบฅเบฒเบ, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเป„เบ›เบชเบนเปˆเบœเบปเบ™เบชเบฐเบ—เป‰เบญเบ™เบฎเป‰เบฒเบเปเบฎเบ‡.

เบเบฑเบ‡เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบซเบผเบฒเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบžเบงเบเป€เบฎเบปเบฒเบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เป€เบฅเบทเบญเบเบชเบฐเบ„เบฃเบดเบš Python เปเบšเบšเบเบณเบ™เบปเบ”เป€เบญเบ‡. เปเบฅเบฐเบชเปเบฒเบฅเบฑเบš CI ansible:

- name: create1.yml - Create a VM from a template
  vmware_guest:
    hostname: "{{datacenter}}".domain.ru
    username: "{{ username_vc }}"
    password: "{{ password_vc }}"
    validate_certs: no
    cluster: "{{cluster}}"
    datacenter: "{{datacenter}}"
    name: "{{ name }}"
    state: poweredon
    folder: "/{{folder}}"
    template: "{{template}}"
    customization:
      hostname: "{{ name }}"
      domain: domain.ru
      dns_servers:
        - "{{ ipa1_dns }}"
        - "{{ ipa2_dns }}"
    networks:
      - name: "{{ network }}"
        type: static
        ip: "{{ip}}"
        netmask: "{{netmask}}"
        gateway: "{{gateway}}"
        wake_on_lan: True
        start_connected: True
        allow_guest_control: True
    wait_for_ip_address: yes
    disk:
      - size_gb: 1
        type: thin
        datastore: "{{datastore}}"
      - size_gb: 20
        type: thin
        datastore: "{{datastore}}"

เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบกเบฒ, เบฅเบฐเบšเบปเบšเบเบฑเบ‡เบชเบทเบšเบ•เปเปˆเบ”เปเบฒเบฅเบปเบ‡เบŠเบตเบงเบดเบ”เปเบฅเบฐเบžเบฑเบ”เบ—เบฐเบ™เบฒ.

  • 17 เบžเบฒเบฅเบฐเบšเบปเบ”เบšเบฒเบ” Ansible เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เปเบ•เปˆเบฅเบฐเบžเบฒเบฅเบฐเบšเบปเบ”เบšเบฒเบ”เป„เบ”เป‰เบ–เบทเบเบญเบญเบเปเบšเบšเป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบกเบตเป€เบซเบ”เบœเบปเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ (เบเบฒเบ™เบ•เบฑเบ”เป„เบกเป‰, เบเบฒเบ™เบเบงเบ”เบชเบญเบš, เบเบฒเบ™เบญเบฐเบ™เบธเบเบฒเบ”เบœเบนเป‰เปƒเบŠเป‰, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เปเบฅเบฐเบญเบทเปˆเบ™เป†).
  • เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบšเบปเบ”เบšเบฒเบ”. เป‚เบกเป€เบฅเบเบธเบ™ + TestInfra.
  • เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡: CMDB + Orchestrator.
  • เป€เบงเบฅเบฒเบชเป‰เบฒเบ‡เป€เบŠเบตเบšเป€เบงเบตเปเบกเปˆเบ™ ~ 30 เบ™เบฒเบ—เบต, เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ” เปเบฅเบฐ เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบ‚เบญเบ‡เปเบ–เบงเปœเป‰เบฒเบงเบฝเบ.
  • เบชเบฐเบ–เบฒเบ™เบฐเบ”เบฝเบงเบเบฑเบ™/เบเบฒเบ™เบ•เบฑเป‰เบ‡เบŠเบทเปˆเบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เปƒเบ™เบ—เบธเบเบžเบฒเบเบชเปˆเบงเบ™ - playbooks, repositories, virtualization เบญเบปเบ‡เบ›เบฐเบเบญเบš.
  • เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป€เบŠเบตเบŸเป€เบงเบตเบ›เบฐเบˆเปเบฒเบงเบฑเบ™เบ”เป‰เบงเบเบเบฒเบ™เบชเป‰เบฒเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบšเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™.

เบ‚เป‰เบญเบเบซเบงเบฑเบ‡เบงเปˆเบฒเป€เบฅเบทเปˆเบญเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ•เปเปˆเบœเบนเป‰เบ—เบตเปˆเบขเบนเปˆเปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบ”เบตเบ™เบ—เบฒเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ—เปˆเบฒเบ™เปƒเบŠเป‰ stack เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบญเบฑเบ™เปƒเบ”?

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com