Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- roles/ping/QUICKSTART.md - обновлены команды Makefile, добавлены новые возможности - roles/devops/QUICKSTART.md - обновлены команды, добавлена версия 2.0.0 - Добавлены примеры проверки результатов в контейнерах - Обновлены примеры использования с актуальными командами - Добавлены разделы про теги и дополнительные возможности Автор: Сергей Антропов Сайт: https://devops.org.ru
151 lines
4.6 KiB
Markdown
151 lines
4.6 KiB
Markdown
# Быстрый старт - Роль Ping
|
||
|
||
**Автор:** Сергей Антропов
|
||
**Сайт:** https://devops.org.ru
|
||
**Версия:** 2.0.0
|
||
|
||
## Что делает роль?
|
||
|
||
Роль выполняет ping проверки подключения к сети. Отправляет пакеты на указанный хост и выводит результаты.
|
||
|
||
## Основные задачи роли:
|
||
|
||
1. **Выполнение ping** - отправляет пакеты на указанный хост
|
||
2. **Вывод результата** - показывает результаты ping
|
||
3. **Статистика** - выводит статус выполнения
|
||
4. **Дополнительная информация** - выводит полный вывод команды
|
||
|
||
## Быстрый запуск
|
||
|
||
### Тестирование роли
|
||
|
||
```bash
|
||
# Lint проверка
|
||
make role lint ping
|
||
|
||
# Тестирование с minimal preset (1 хост)
|
||
make role test minimal
|
||
|
||
# Тестирование с default preset (2 хоста)
|
||
make role test default
|
||
|
||
# Тестирование конкретной роли
|
||
make role test ping
|
||
```
|
||
|
||
### Использование в roles/deploy.yml
|
||
|
||
Роль уже добавлена в `roles/deploy.yml` и запускается вместе с остальными ролями:
|
||
|
||
```bash
|
||
# Запуск всех ролей
|
||
make role test minimal
|
||
|
||
# Запуск только с тегом ping
|
||
ansible-playbook -i inventory/hosts.ini roles/deploy.yml --tags ping
|
||
```
|
||
|
||
### Отдельное использование
|
||
|
||
```bash
|
||
# Прямой запуск playbook роли
|
||
ansible-playbook -i inventory/hosts.ini roles/ping/playbook.yml
|
||
```
|
||
|
||
## Переменные
|
||
|
||
| Переменная | По умолчанию | Описание |
|
||
|------------|--------------|----------|
|
||
| `ping_host` | `yandex.ru` | Целевой хост для ping |
|
||
| `ping_count` | `5` | Количество пакетов |
|
||
| `ping_interval` | `1` | Интервал между пакетами (сек) |
|
||
| `ping_timeout` | `10` | Таймаут (сек) |
|
||
| `ping_packet_size` | `64` | Размер пакета (байт) |
|
||
|
||
### Использование с кастомными параметрами
|
||
|
||
```yaml
|
||
- name: Тест ping
|
||
hosts: all
|
||
roles:
|
||
- role: ping
|
||
vars:
|
||
ping_host: google.com
|
||
ping_count: 10
|
||
ping_timeout: 5
|
||
```
|
||
|
||
## Теги
|
||
|
||
- `ping` - выполнение всех задач
|
||
- `test` - тестирование
|
||
- `debug` - отладочная информация
|
||
- `stats` - статистика
|
||
|
||
### Примеры использования тегов
|
||
|
||
```bash
|
||
# Только ping задачи
|
||
ansible-playbook -i inventory/hosts.ini roles/deploy.yml --tags ping
|
||
|
||
# Ping + debug
|
||
ansible-playbook -i inventory/hosts.ini roles/deploy.yml --tags "ping,debug"
|
||
|
||
# Только статистика
|
||
ansible-playbook -i inventory/hosts.ini roles/deploy.yml --tags stats
|
||
```
|
||
|
||
## Пример вывода
|
||
|
||
```
|
||
=========================================
|
||
Результат ping yandex.ru
|
||
=========================================
|
||
PING yandex.ru (87.250.250.242) 64(92) bytes of data.
|
||
72 bytes from yandex.ru (87.250.250.242): icmp_seq=1 ttl=57 time=5.24 ms
|
||
72 bytes from yandex.ru (87.250.250.242): icmp_seq=2 ttl=57 time=5.12 ms
|
||
72 bytes from yandex.ru (87.250.250.242): icmp_seq=3 ttl=57 time=5.08 ms
|
||
72 bytes from yandex.ru (87.250.250.242): icmp_seq=4 ttl=57 time=5.18 ms
|
||
72 bytes from yandex.ru (87.250.250.242): icmp_seq=5 ttl=57 time=5.21 ms
|
||
|
||
--- yandex.ru ping statistics ---
|
||
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
|
||
rtt min/avg/max/mdev = 5.080/5.166/5.240/0.057 ms
|
||
=========================================
|
||
Статус: УСПЕШНО
|
||
=========================================
|
||
```
|
||
|
||
## Проверка результатов
|
||
|
||
```bash
|
||
# Проверка через логи Molecule
|
||
docker logs $(docker ps -aq --filter "network=labnet" | head -1)
|
||
|
||
# Вход в контейнер для проверки
|
||
docker exec -it $(docker ps -aq --filter "network=labnet" | head -1) bash
|
||
|
||
# Внутри контейнера
|
||
ping -c 5 yandex.ru
|
||
```
|
||
|
||
## Поддерживаемые ОС
|
||
|
||
- ✅ Ubuntu 20.04, 22.04, 24.04
|
||
- ✅ Debian 9, 10, 11, 12
|
||
- ✅ CentOS 7, 8, 9
|
||
- ✅ RHEL 8, 9
|
||
- ✅ AlmaLinux 8, 9
|
||
- ✅ Rocky Linux 8, 9
|
||
|
||
## Дополнительная информация
|
||
|
||
- 📖 Полная документация: `roles/ping/README.md`
|
||
- 🧪 Тесты: `roles/ping/tests/test.yml`
|
||
- 📝 Примеры: `roles/ping/examples.yml`
|
||
|
||
---
|
||
|
||
**Автор:** Сергей Антропов
|
||
**Сайт:** https://devops.org.ru
|