Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΡ€Π·ΠΈΠ½ΡƒΠŸΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚ΡŒ
Найти Π² Π”Π·Π΅Π½Π΅
Π£Ρ€ΠΎΠΊΠΈ Linux

πŸ› οΈ Как Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСстированиС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π² Linux с Ansible

πŸ› οΈ Как Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСстированиС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π² Linux с Ansible ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ! πŸš€ ВсС ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ наша инфраструктура Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° ΠΊΠ°ΠΊ часы, Π° ошибки Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅. БСгодня расскаТу ΠΎ ΠΌΠΎΡ‰Π½ΠΎΠΌ инструмСнтС β€” Ansible, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π±Π΅Π· ошибок! Π—Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ? - Быстрая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ - ΠŸΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ошибок ΠΏΠ΅Ρ€Π΅Π΄ Π΄Π΅ΠΏΠ»ΠΎΠ΅ΠΌ - ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сотнями сСрвСров Как устроСно тСстированиС? - БоздаСшь ΠΏΠ»Π΅ΠΉΠ±ΡƒidΡ‹ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ состояния - Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ assert для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ - ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΡˆΡŒ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, статус сСрвиса ΠΈΠ»ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ nginx Π·Π°ΠΏΡƒΡ‰Π΅Π½, пиши: - name: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° nginx hosts: localhost tasks: - name: Π£Π±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ nginx Π·Π°ΠΏΡƒΡ‰Π΅Π½ ansible.builtin.systemd: name: nginx state: started register: nginx_status - name: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° статуса nginx ansible.builtin.assert: that: - nginx_status.changed == False - nginx_status.result.status == 'active' Благодаря Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρƒ Ρ‚Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρˆ

πŸ› οΈ Как Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСстированиС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π² Linux с Ansible

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ! πŸš€ ВсС ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ наша инфраструктура Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° ΠΊΠ°ΠΊ часы, Π° ошибки Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅. БСгодня расскаТу ΠΎ ΠΌΠΎΡ‰Π½ΠΎΠΌ инструмСнтС β€” Ansible, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π±Π΅Π· ошибок!

Π—Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ?

- Быстрая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

- ΠŸΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ошибок ΠΏΠ΅Ρ€Π΅Π΄ Π΄Π΅ΠΏΠ»ΠΎΠ΅ΠΌ

- ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сотнями сСрвСров

Как устроСно тСстированиС?

- БоздаСшь ΠΏΠ»Π΅ΠΉΠ±ΡƒidΡ‹ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ состояния

- Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ assert для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ

- ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΡˆΡŒ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, статус сСрвиса ΠΈΠ»ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ nginx Π·Π°ΠΏΡƒΡ‰Π΅Π½, пиши:

- name: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° nginx

hosts: localhost

tasks:

- name: Π£Π±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ nginx Π·Π°ΠΏΡƒΡ‰Π΅Π½

ansible.builtin.systemd:

name: nginx

state: started

register: nginx_status

- name: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° статуса nginx

ansible.builtin.assert:

that:

- nginx_status.changed == False

- nginx_status.result.status == 'active'

Благодаря Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρƒ Ρ‚Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΡˆΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅, Π½ΠΎ ΠΈ тСстированиС инфраструктуры, дСлая Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΈ прСдсказуСмой.

А Ρ‚Ρ‹ ΡƒΠΆΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π» ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² своСй инфраструктурС? Или всё Π΅Ρ‰Π΅ дСлишься ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€ΡƒΠΊΠ°ΠΌΠΈ?

____

ΠŸΡ€ΠΈΠ³Π»Π°ΡˆΠ°Π΅ΠΌ тСбя ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° нашим Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»ΠΎΠΌ https://t.me/LinuxSkill β€” Ρ‚Π°ΠΌ Π΅Ρ‰Ρ‘ большС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… статСй, Π° Π² Π±ΠΎΡ‚Π΅ https://t.me/gradeliftbot β€” вакансии для систСмных администраторов.

ΠŸΡ€ΠΎΠΊΠ°Ρ‡Π°ΠΉ свои скилы ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠΈ, Ρ‡Ρ‚ΠΎ Ρ‚Ρ‹ β€” мастСр Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ!

πŸ“© Π—Π°Π²Ρ‚Ρ€Π°: Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Fail2Ban Π·Π° 5 ΠΌΠΈΠ½ΡƒΡ‚! Π’ΠΊΠ»ΡŽΡ‡ΠΈ πŸ”” Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ!