Forwarded from ServerAdmin.ru
На прошлой неделе читал статью про ansible-cmdb. Понравился инструмент. Раньше про него не слышал. Он довольно просто устроен, особенно для тех, кто знает и регулярно использует Ansible в инфраструктуре. Собственно, ansible-cmdb работает на базе Ansible.
Поясню, для тех, кто не в курсе и не работает с Ansible. У неё есть список хостов, куда она имеет доступ по SSH. Соответственно, с помощью Ansible можно ходить по хостам, что-то там делать, собирать информацию. Ansible-cmdb использует вывод модуля setup, который заходит на хосты и собирает о них информацию в так называемые ansible_facts. A ansible-cmdb берёт эту информацию и оформляет в наглядную html страницу.
Как я уже сказал, если вы уже используете Ansible, вам ничего пояснять и настраивать не надо. Просто берёте файл с инвентарём, проходите по нему модулем setup и строите отчёт примерно так:
Теперь расскажу, как собрать информацию о хостах для тех, кто вообще не знаком и не настраивал Ansible. Я не буду рассказывать, как с ней работать, а просто по шагам покажу, как вам собрать информацию со своих хостов, даже если вы не хотите изучать и далее использовать Ansible. Хотя, разумеется, современному админу или девопсу крайне желательно уметь с ней работать.
Настраивать всё буду в Debian 12. Рекомендую использовать для этого отдельную виртуалку или контейнер. Ставим необходимые пакеты:
У ansible-cmdb есть собранный deb пакет. Я изначально использовал его. Но так и не смог заставить работать. Я не знаю, что там за версия python нужна, но у меня постоянно были какие-то ошибки в коде. Залез в репозиторий, в Issues, увидел там похожие ошибки и решение в виде установки через pip, а не из пакета.
Поставил в итоге следующим образом. Это не рекомендованный способ, но для демонстрации работы и простоты делаю так. Когда разберётесь и решите, что вам этот инструмент нужен, устанавливайте и запускайте его через venv. А пока ставим:
Теперь нам нужно подготовить конфигурацию ansible. Добавляю минимальную конфигурацию в файл
И создаю так называемый инвентарь
Передаю в переменную конфигурацию Ansible:
Создаю сертификат, по которому буду подключаться к хостам:
Копирую его на хосты в authorized_keys:
Проверяю, видит ли ansible хосты в инвентаре, всё ли верно настроено:
Всё в порядке, собираем факты:
Если всё в порядке, и в директории появились текстовые файлы с информацией о хостах, то строим по ним html страничку:
Копируем overview.html к себе на компьютер и смотрим браузером. Получили наглядный список, где в выпадающем списке подробная информация о хостах.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #ansible
Поясню, для тех, кто не в курсе и не работает с Ansible. У неё есть список хостов, куда она имеет доступ по SSH. Соответственно, с помощью Ansible можно ходить по хостам, что-то там делать, собирать информацию. Ansible-cmdb использует вывод модуля setup, который заходит на хосты и собирает о них информацию в так называемые ansible_facts. A ansible-cmdb берёт эту информацию и оформляет в наглядную html страницу.
Как я уже сказал, если вы уже используете Ansible, вам ничего пояснять и настраивать не надо. Просто берёте файл с инвентарём, проходите по нему модулем setup и строите отчёт примерно так:
# mkdir out# ansible -m setup --tree out/ all# ansible-cmdb out/ > overview.htmlТеперь расскажу, как собрать информацию о хостах для тех, кто вообще не знаком и не настраивал Ansible. Я не буду рассказывать, как с ней работать, а просто по шагам покажу, как вам собрать информацию со своих хостов, даже если вы не хотите изучать и далее использовать Ansible. Хотя, разумеется, современному админу или девопсу крайне желательно уметь с ней работать.
Настраивать всё буду в Debian 12. Рекомендую использовать для этого отдельную виртуалку или контейнер. Ставим необходимые пакеты:
# apt install python3-pip ansibleУ ansible-cmdb есть собранный deb пакет. Я изначально использовал его. Но так и не смог заставить работать. Я не знаю, что там за версия python нужна, но у меня постоянно были какие-то ошибки в коде. Залез в репозиторий, в Issues, увидел там похожие ошибки и решение в виде установки через pip, а не из пакета.
Поставил в итоге следующим образом. Это не рекомендованный способ, но для демонстрации работы и простоты делаю так. Когда разберётесь и решите, что вам этот инструмент нужен, устанавливайте и запускайте его через venv. А пока ставим:
# pip install ansible-cmdb --break-system-packages# ln -s /usr/bin/python3 /usr/bin/pythonТеперь нам нужно подготовить конфигурацию ansible. Добавляю минимальную конфигурацию в файл
~/.ansible/ansible.cfg[defaults]home = ~/.ansible/inventory = ~/.ansible/inventory.yamlremote_user = rootgather_facts = Trueprivate_key_file = ~/.ssh/id_ed25519host_key_checking = FalseИ создаю так называемый инвентарь
~/.ansible/inventory.yaml в терминологии Ansible со списком серверов, для которых будем делать отчёт. all: hosts: Debian12-VPS: ansible_host: 127.0.0.1 ansible_port: 22 Debian12-CT: ansible_host: 10.20.1.24 ansible_port: 22 Ubuntu24-CT: ansible_host: 10.20.1.21 ansible_port: 22Передаю в переменную конфигурацию Ansible:
# export ANSIBLE_CONFIG="$HOME/.ansible/ansible.cfg"Создаю сертификат, по которому буду подключаться к хостам:
# ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519 -C "$(whoami)@$(hostname)_$(date -I)"Копирую его на хосты в authorized_keys:
# ssh-copy-id root@127.0.0.1# ssh-copy-id root@10.20.1.24# ssh-copy-id root@10.20.1.21Проверяю, видит ли ansible хосты в инвентаре, всё ли верно настроено:
# ansible -i inventory.yaml all --list-hosts Debian12-VPS Debian12-CT Ubuntu24-CTВсё в порядке, собираем факты:
# mkdir ~/.ansible/out# ansible -m setup --tree ~/.ansible/out allЕсли всё в порядке, и в директории появились текстовые файлы с информацией о хостах, то строим по ним html страничку:
# ansible-cmdb ~/.ansible/out > overview.htmlКопируем overview.html к себе на компьютер и смотрим браузером. Получили наглядный список, где в выпадающем списке подробная информация о хостах.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #ansible
Как дать ИИ-агенту работать с данными и не потерять контроль: безопасный data-join через MCP, вместо создания DataLake #habr
https://habr.com/ru/articles/1052948/
Tags: Data-tools
Author: cyber_river
https://habr.com/ru/articles/1052948/
Tags: Data-tools
Author: cyber_river
Хабр
Как дать ИИ-агенту работать с данными и не потерять контроль: безопасный data-join через MCP, вместо создания DataLake
Это продолжение новых безопасных паттернов по работе с MCP, которые я для себя придумал, которые я описал в статье:...
Как безопасно настроить VPS-сервер и защитить сайт, бот и веб-приложение #habr
https://habr.com/ru/companies/amvera/articles/1052852/
Tags: безопасность веб-приложений, защита сайта, защита от ботов, защита от брутфорса, проверка безопасности сайта, проверка безопасности сервера, защита бота, проверка сайта на безопасность, проверка сайта на уязвимости, программная защита сервера
Author: VadimMichaylov (Amvera)
https://habr.com/ru/companies/amvera/articles/1052852/
Tags: безопасность веб-приложений, защита сайта, защита от ботов, защита от брутфорса, проверка безопасности сайта, проверка безопасности сервера, защита бота, проверка сайта на безопасность, проверка сайта на уязвимости, программная защита сервера
Author: VadimMichaylov (Amvera)
Хабр
Как безопасно настроить VPS-сервер и защитить сайт, бот и веб-приложение
С необходимостью запуска кода на сервере сегодня сталкиваются далеко не только профессиональные айтишники. В наше время популярна разработка через ИИ (Claude, Gemini, ChatGPT и др.). Любой человек с...
Многоэтапные сборки в Docker: как уменьшить образ с 1,2 ГБ до 50 МБ #habr
https://habr.com/ru/companies/netologyru/articles/1051714/
Tags: docker, multi-stage builds, dockerfile, оптимизация Docker-образа, alpine linux, node.js, контейнеризация, buildkit, distroless, cicd
Author: dungle (Нетология)
https://habr.com/ru/companies/netologyru/articles/1051714/
Tags: docker, multi-stage builds, dockerfile, оптимизация Docker-образа, alpine linux, node.js, контейнеризация, buildkit, distroless, cicd
Author: dungle (Нетология)
Хабр
Многоэтапные сборки в Docker: как уменьшить образ с 1,2 ГБ до 50 МБ
Знакомая для многих картина: вы написали микросервис, набросали классический Dockerfile из четырёх команд, запустили сборку и получили на выходе Docker-образ 1 ГБ, а иногда и больше. В единичном...
Как вернуть былую энергию после 40? Тренировки, образ жизни, чек-ап, пептиды #habr
https://habr.com/ru/articles/1053020/
Tags: здоровый образ жизни, пептиды, гормоны, тестостерон, тестостерон после 40 лет, тренировки после 40 лет
Author: Terentew
https://habr.com/ru/articles/1053020/
Tags: здоровый образ жизни, пептиды, гормоны, тестостерон, тестостерон после 40 лет, тренировки после 40 лет
Author: Terentew
Хабр
Как вернуть былую энергию после 40? Тренировки, образ жизни, чек-ап, пептиды
Много мужчин после 40 начинают задумываться, куда ушло их здоровье, былая энергия и напор и как это все вернуть? Давайте рассмотрим, какие инструменты у нас для этого есть. Здоровый образ жизни Сперва...
Цикл Junior DevOps #habr
https://habr.com/ru/articles/1053054/
Tags: junior, devops, development, linux, linux-сервер, roadmap, roadmap devops
Author: ProfPearo
https://habr.com/ru/articles/1053054/
Tags: junior, devops, development, linux, linux-сервер, roadmap, roadmap devops
Author: ProfPearo
Хабр
Цикл Junior DevOps
Часть 1. Кто такой DevOps, чем он занимается Постоянно на платформах по поиску работы появляется вакансии Junior DevOps, обычно требования к кандидату выглядит как большой список с десятками...
ИИшница для киборга #habr
https://habr.com/ru/articles/1053104/
Tags: ии, искусственный интеллект, боль, слоп
Author: SolidSnack
https://habr.com/ru/articles/1053104/
Tags: ии, искусственный интеллект, боль, слоп
Author: SolidSnack
Хабр
ИИшница для киборга
"Интуиция – это нечто такое, что опережает точное знание. Наш мозг обладает, без сомнения, очень чувствительными нервными клетками, что позволяет ощущать истину, даже когда она еще недоступна...
Незаменимый офис #habr
https://habr.com/ru/articles/1053102/
Tags: AI-агенты, корпоративный ИИ, LLM, информационная безопасность, проектное финансирование, ЦОД
Author: Akudlay_ru
https://habr.com/ru/articles/1053102/
Tags: AI-агенты, корпоративный ИИ, LLM, информационная безопасность, проектное финансирование, ЦОД
Author: Akudlay_ru
Habr
Андрей Кудлай aka Akudlay_ru
-
-
Андрей Кудлай aka Akudlay_ru. Authored 4 publications on Habr and posted 8 comments.
Студенты начали списывать на экзаменах при помощи умных очков с ИИ #habr
https://habr.com/ru/news/1053110/
Tags: студенты, экзамены, списывание, умные очки, искусственный интеллект, вузы
https://habr.com/ru/news/1053110/
Tags: студенты, экзамены, списывание, умные очки, искусственный интеллект, вузы
Хабр
Студенты начали списывать на экзаменах при помощи умных очков с ИИ
Студентов по всему миру начали уличать в том, что они используют функции умных очков для списывания на экзаменах. Проблема нарастает по мере того, как эти устройства становятся всё более доступными. В...
Выйди и зайди нормально: как звонок передается из Wi-Fi на LTE #habr
https://habr.com/ru/companies/vasexperts/articles/1051490/
Tags: handover, epdg, wifi calling, vowifi, ims, pgw, 5g, lte, volte, vas experts
Author: VAS_Experts_Team (VAS Experts)
https://habr.com/ru/companies/vasexperts/articles/1051490/
Tags: handover, epdg, wifi calling, vowifi, ims, pgw, 5g, lte, volte, vas experts
Author: VAS_Experts_Team (VAS Experts)
Хабр
Выйди и зайди нормально: как звонок передается из Wi-Fi на LTE
Вы начали звонок, когда были подключены по Wi‑Fi, выходите из помещения, Wi‑Fi пропадает, телефон переключается на LTE — а разговор продолжается, как будто ничего не произошло. Для пользователя...
Как скачать и настроить среду разработки для 1С: Элемент #habr
https://habr.com/ru/articles/1053126/
Tags: 1с_элемент, среда разработки 1с, установка 1С_Элемент, первый проект в 1С_Элемент, Java для 1С_Элемент, IDE_1С, туториал для 1С-разработчиков, разработка на 1С_Элемент, 1ce-installer.exe, Axiom JDK 17
Author: kron_1C
https://habr.com/ru/articles/1053126/
Tags: 1с_элемент, среда разработки 1с, установка 1С_Элемент, первый проект в 1С_Элемент, Java для 1С_Элемент, IDE_1С, туториал для 1С-разработчиков, разработка на 1С_Элемент, 1ce-installer.exe, Axiom JDK 17
Author: kron_1C
Хабр
Как скачать и настроить среду разработки для 1С: Элемент
Когда я впервые начал работать с «1С:Элемент», казалось, что установка среды - это самая простая часть. Скачать, установить, открыть - что может пойти не так? На практике оказалось, что именно на этом...
Git-конфликт своими руками: что происходит с историей на самом деле #habr
https://habr.com/ru/articles/1053136/
Tags: Git-конфликт, конфликт при merge, конфликт при git pull, как решить конфликт в Git, Git history, merge-коммит., конфликт, git, гит
Author: DanielSyrov
https://habr.com/ru/articles/1053136/
Tags: Git-конфликт, конфликт при merge, конфликт при git pull, как решить конфликт в Git, Git history, merge-коммит., конфликт, git, гит
Author: DanielSyrov
Хабр
Git-конфликт своими руками: что происходит с историей на самом деле
Привет, Хабр! Конфликты в Git заставляют немного паниковать, пока не научишься понимать, что именно происходит. Почему возник конфликт? Что я сделал не так? Не потеряю ли я свои изменения? И как...
Как сделать видео из фото: делюсь простыми способами для начинающих #habr
https://habr.com/ru/articles/1053150/
Tags: софт, видеоролик, фотография, слайд-шоу, программное обеспечение, работа с видео, работа с изображениями
Author: pokrovsk
https://habr.com/ru/articles/1053150/
Tags: софт, видеоролик, фотография, слайд-шоу, программное обеспечение, работа с видео, работа с изображениями
Author: pokrovsk
Хабр
Как сделать видео из фото: делюсь простыми способами для начинающих
«Карусельки уже никто не листает, лайков будет кот наплакал», — заявила кузина. И сразу поставила задачу: покажи, как сделать видео из фото с отчетного концерта ее танцевального ансамбля, а еще лучше...
PostmarketOS 26.06: что нового в Linux-дистрибутиве для смартфонов #habr
https://habr.com/ru/companies/ru_mts/articles/1052316/
Tags: linux, гаджеты
Author: kliment_01 (МТС)
https://habr.com/ru/companies/ru_mts/articles/1052316/
Tags: linux, гаджеты
Author: kliment_01 (МТС)
Хабр
PostmarketOS 26.06: что нового в Linux-дистрибутиве для смартфонов
Проект postmarketOS выпустил новую версию мобильного Linux-дистрибутива — 26.06 под кодовым названием Alpen Avocado. Он позиционируется как альтернатива Android для смартфонов, планшетов и других...
[Перевод] Мультиагентные системы как распределенное программное обеспечение #habr
https://habr.com/ru/companies/piter/articles/1052238/
Tags: автономные агенты, распределенные системы, отказоустойчивость, функциональное программирование, erlang, перевод
Author: ph_piter (Издательский дом «Питер»)
https://habr.com/ru/companies/piter/articles/1052238/
Tags: автономные агенты, распределенные системы, отказоустойчивость, функциональное программирование, erlang, перевод
Author: ph_piter (Издательский дом «Питер»)
Хабр
Мультиагентные системы как распределенное программное обеспечение
TLDR: Агенты все чаще используются с минимальным участием человека в управлении. Однако автономные агенты представляют собой типичные распределённые системы, в которых возможны многочисленные сложные...
Визуальный стек статейного сайта: типографика, цвет и комьюнити-слой #habr
https://habr.com/ru/articles/1053162/
Tags: css
Author: seberditbase
https://habr.com/ru/articles/1053162/
Tags: css
Author: seberditbase
Хабр
Визуальный стек статейного сайта: типографика, цвет и комьюнити-слой
Визуальный стек статейного сайта складывается из сотен мелких решений — от оси GRAD в шрифте до длительности анимации закрытия модального окна. Каждое такое решение либо работает на чтение, либо...
Как агентные системы и LLM меняют разработку #habr
https://habr.com/ru/companies/yoomoney/news/1053166/
Tags: митап, митапы в петербурге, конференция, искусственный интеллект, ai, ии-агенты, llm, митапы, доклады
https://habr.com/ru/companies/yoomoney/news/1053166/
Tags: митап, митапы в петербурге, конференция, искусственный интеллект, ai, ии-агенты, llm, митапы, доклады
Хабр
Как агентные системы и LLM меняют разработку
Приглашаем на ИИшную — бесплатный митап от ЮMoney и Сбера про практическое применение искусственного интеллекта в IT. Когда: 30 июня в 18:30 (мск). Можно присоединиться очно в Санкт-Петербурге или...
Как мой Telegram-парсер ослеп на проде: чиним пропуск лидов через Active Pull (Python, n8n, LLM) #habr
https://habr.com/ru/articles/1052104/
Tags: python, telethon, n8n, chatgpt, парсинг, лидогенерация, telegram api, архитектура
Author: chernyaevi
https://habr.com/ru/articles/1052104/
Tags: python, telethon, n8n, chatgpt, парсинг, лидогенерация, telegram api, архитектура
Author: chernyaevi
Хабр
Как мой Telegram-парсер ослеп на проде: чиним пропуск лидов через Active Pull (Python, n8n, LLM)
Мне понадобился двухконтурный парсер Telegram-чатов для лидогенерации (искать клиентов на услуги автоматизации и разработки ботов). Стек: Python (Telethon) на сервере ➔ Webhook ➔ n8n ➔ LLM (OpenAI) ➔...
Добавляем E2E шифрование в чат #habr
https://habr.com/ru/articles/1053030/
Tags: golang, e2ee, информационная безопасность, шифрование, криптография
Author: exploitick
https://habr.com/ru/articles/1053030/
Tags: golang, e2ee, информационная безопасность, шифрование, криптография
Author: exploitick
Хабр
Добавляем E2E шифрование в чат
Привет, хабр! В этой статье на примере простого чата реализуем E2E шифрование. Продолжаем нашу серию статей по сетевой разработке на Go. В прошлой статье мы писали простейший TCP-чат. Наши сообщения в...
Мой опыт запуска продукта на Product Hunt #habr
https://habr.com/ru/articles/1053194/
Tags: Product Hunt, запуск продукта, продвижение, стартап, соло-разработчик, маркетинг, расширение для браузера, индихакер
Author: Roman_2023
https://habr.com/ru/articles/1053194/
Tags: Product Hunt, запуск продукта, продвижение, стартап, соло-разработчик, маркетинг, расширение для браузера, индихакер
Author: Roman_2023
Хабр
Мой опыт запуска продукта на Product Hunt
Привет, коллеги! Хотел бы поделиться с вами своим опытом запуска моего расширения для браузера Mobile View , которое позволяет проверять адаптив непосредственно поверх десктопа, на такой площадке, как...