diff --git a/docs/Что такое Ansible.md b/docs/1. Что такое Ansible.md similarity index 89% rename from docs/Что такое Ansible.md rename to docs/1. Что такое Ansible.md index 2e254fc..cc8a3a0 100644 --- a/docs/Что такое Ansible.md +++ b/docs/1. Что такое Ansible.md @@ -5,7 +5,7 @@ Ansible - это система управления конфигурацией Преимущества: 1. Не требует установки клиентов-агентов на целевые машины, использует только SSH протокол -2. Пишется на YAML, удобные язык конфигурации, поймет даже новичок +2. Пишется на yml, удобные язык конфигурации, поймет даже новичок 3. Есть портал с готовыми конфигурациями на "Ansiblr Galaxy", можно использовать готовое или же взять какие-то готовые решения себе в проект ## О его работе На главном admin-pc после установки должен быть конфигурационный файл "ansible.cfg", мы указываем там где располагается наш файл с хостами "hosts". @@ -14,4 +14,4 @@ Ansible - это система управления конфигурацией Так же мы будем создавать свои playbook.yaml. Простыми словами - это рецепт, некий алгоритм действий, то, что будет выполнять наш ansible на наших хостах из hosts. - + diff --git a/docs/2. Установка и настройка Ansible.md b/docs/2. Установка и настройка Ansible.md new file mode 100644 index 0000000..0a06a6f --- /dev/null +++ b/docs/2. Установка и настройка Ansible.md @@ -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 +``` + + +## Настройка Ansible +Готово. +Ansible используем ssh для подключения, лучше всего и безопаснее использовать ssh-ключ, создадим его: +``` +ssh-keygen +``` + +У меня ключ уже создан +Расположение: +``` +/home//.ssh/id_ed25519.pub # публичный ключ +/home//.ssh/id_ed25519 # приватный ключ +``` + +Перекидываем публичный ssh-ключ на наш тестовый стенд: +``` +ssh-copy-id -i ~/.ssh/ed25519.pub ansible@172.16.13.101 +``` + +Готово. + +## Первые шаги +Мы можем сделать начальную структуру проекта Ansible через команду: +``` +ansible-galaxy role init my-project +``` + +Коротко про каждую: +1. defaults - в main.yml хранятся дефолтные переменные с которыми запускается роль +2. vars - main.yml задаются переменные +3. tasks - сами задачи, плейбуки +4. handlers - это обработчики изменений, если ваша роль выполнялась, что-то изменила, потому что оно не соответствовало описанию плейбука, то будет вызван хендлер, если его описали +5. templates - шаблоны +6. files - хранение файлов, конфигов +7. tests - тесты, можно проверять работу плейбуков, не применяя к серверам, локально в среде + +После подключения Ansible делает сбор фактов, узнает полную информацию о системе, какая ОС, архитектура, ip адреса и так далее. + diff --git a/docs/images-for-md/1.png b/docs/assets/1.png similarity index 100% rename from docs/images-for-md/1.png rename to docs/assets/1.png diff --git a/docs/images-for-md/image_1777037707137.png b/docs/assets/image_1777037707137.png similarity index 100% rename from docs/images-for-md/image_1777037707137.png rename to docs/assets/image_1777037707137.png diff --git a/docs/images-for-md/image_1777037728737.png b/docs/assets/image_1777037728737.png similarity index 100% rename from docs/images-for-md/image_1777037728737.png rename to docs/assets/image_1777037728737.png diff --git a/docs/assets/image_1777451283920.jpg b/docs/assets/image_1777451283920.jpg new file mode 100644 index 0000000..69fd60a Binary files /dev/null and b/docs/assets/image_1777451283920.jpg differ diff --git a/docs/assets/image_1777451862070.jpg b/docs/assets/image_1777451862070.jpg new file mode 100644 index 0000000..69fd60a Binary files /dev/null and b/docs/assets/image_1777451862070.jpg differ diff --git a/docs/assets/image_1777451868133.jpg b/docs/assets/image_1777451868133.jpg new file mode 100644 index 0000000..6959d7b Binary files /dev/null and b/docs/assets/image_1777451868133.jpg differ diff --git a/docs/assets/image_1777451977808.jpg b/docs/assets/image_1777451977808.jpg new file mode 100644 index 0000000..1eb35a3 Binary files /dev/null and b/docs/assets/image_1777451977808.jpg differ diff --git a/docs/assets/image_1777454341479.jpg b/docs/assets/image_1777454341479.jpg new file mode 100644 index 0000000..158b1c2 Binary files /dev/null and b/docs/assets/image_1777454341479.jpg differ diff --git a/docs/assets/image_1777454495664.jpg b/docs/assets/image_1777454495664.jpg new file mode 100644 index 0000000..158b1c2 Binary files /dev/null and b/docs/assets/image_1777454495664.jpg differ diff --git a/docs/assets/image_1777454975978.jpg b/docs/assets/image_1777454975978.jpg new file mode 100644 index 0000000..8e99cac Binary files /dev/null and b/docs/assets/image_1777454975978.jpg differ