push
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
## Установка Ansible
|
||||
Ansible работает через питон, по этому необходимо установить его:
|
||||
```
|
||||
apt update && apt upgrade -y
|
||||
apt install python3 python3-pip python3-venv -y
|
||||
```
|
||||
Установка виртуального окружения:
|
||||
```
|
||||
python3 -m venv
|
||||
source venv/bin/activate
|
||||
```
|
||||
И устанавливаем Ansible:
|
||||
```
|
||||
pip install ansible
|
||||
ansible --version
|
||||
```
|
||||
<img src="assets/image_1777451283920.jpg" width="auto">
|
||||
|
||||
## Настройка Ansible
|
||||
Готово.
|
||||
Ansible используем ssh для подключения, лучше всего и безопаснее использовать ssh-ключ, создадим его:
|
||||
```
|
||||
ssh-keygen
|
||||
```
|
||||
<img src="assets/image_1777451977808.jpg" width="auto">
|
||||
У меня ключ уже создан
|
||||
Расположение:
|
||||
```
|
||||
/home/<user>/.ssh/id_ed25519.pub # публичный ключ
|
||||
/home/<user>/.ssh/id_ed25519 # приватный ключ
|
||||
```
|
||||
|
||||
Перекидываем публичный ssh-ключ на наш тестовый стенд:
|
||||
```
|
||||
ssh-copy-id -i ~/.ssh/ed25519.pub ansible@172.16.13.101
|
||||
```
|
||||
<img src="assets/image_1777454341479.jpg" width="auto">
|
||||
Готово.
|
||||
|
||||
## Первые шаги
|
||||
Мы можем сделать начальную структуру проекта Ansible через команду:
|
||||
```
|
||||
ansible-galaxy role init my-project
|
||||
```
|
||||
<img src="./assets/image_1777454975978.jpg" width="auto">
|
||||
Коротко про каждую:
|
||||
1. defaults - в main.yml хранятся дефолтные переменные с которыми запускается роль
|
||||
2. vars - main.yml задаются переменные
|
||||
3. tasks - сами задачи, плейбуки
|
||||
4. handlers - это обработчики изменений, если ваша роль выполнялась, что-то изменила, потому что оно не соответствовало описанию плейбука, то будет вызван хендлер, если его описали
|
||||
5. templates - шаблоны
|
||||
6. files - хранение файлов, конфигов
|
||||
7. tests - тесты, можно проверять работу плейбуков, не применяя к серверам, локально в среде
|
||||
|
||||
После подключения Ansible делает сбор фактов, узнает полную информацию о системе, какая ОС, архитектура, ip адреса и так далее.
|
||||
|
||||
Reference in New Issue
Block a user