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
				
			- Обновлена версия в README.md - Обновлена версия во всех файлах docs/ - Обновлена версия в dockerfiles/README.md - Обновлена версия в roles/*/QUICKSTART.md - Подготовка к версии 3.0.0 с Kubernetes поддержкой Автор: Сергей Антропов Сайт: https://devops.org.ru
		
			
				
	
	
		
			151 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			151 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Быстрый старт - Роль Ping
 | ||
| 
 | ||
| **Автор:** Сергей Антропов  
 | ||
| **Сайт:** https://devops.org.ru  
 | ||
| **Версия:** 3.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
 |