Новое Распределяем каналы MAX по категориям и территориям. Читать новость
Открытый канал ID 76942758012253

/home/kostik/toxic ☣

Весь мир
Открыть в MAX

Публикации за период

По реакциям

Поиск и вся лента — после бесплатной регистрации. Свои даты — по подписке; владелец канала видит их бесплатно. Сортировка по реакциям — по подписке. Зарегистрироваться

Загрузка…

Репост из «ServerAdmin.ru | Linux | DevOps»

Давно задумал изучить и внедрить какую-нибудь централизованную платформу для управления разнородными задачами, типа запуска скриптов, плейбуков, каких-то загрузок, проверок, обновлений и т.д. Основная задача - замкнуть все кроны и таймеры на хостах на единое управление. Дополнительная - туда же и плейбуки засунуть, чтобы всё было в одном месте.

Программ такого рода много - Cronicle, Rundeck, Kestra, Airflow, Dagu и многие другие. Плюс, подобное можно реализовать на базе любой платформы для CI/CD, либо веб интерфейсе для Ansible. Я ранее немного использовал Rundeck и ещё какую-то похожую программу, но уже забыл название. В этот раз решил остановиться на Dagu.

💡 Рассказываю, почему выбрал именно Dagu:

▪️Максимально простая система - один бинарник на Go, который включает в себя и веб интерфейс.
▪️Вся конфигурация в текстовом виде, в том числе набор задач, формат - yaml, идеально для IaC, никаких СУБД и лишних сущностей, легко бэкапить и переносить.
▪️Настройки можно делать как через веб интерфейс, так и напрямую в текстовых файлах, изменения применяются сразу.
▪️Мне в целом понравился веб интерфейс, визуализация этапов workflow и сама концепция программы.
▪️Современный продукт, развивается, обновляется, есть интеграция с LLM, встроен MCP.
▪️Понравилось, как сохраняется и просматривается вывод в консоль от запущенных скриптов, удобно проверять и дебажить.

Я развернул и пока попробовал программу на своих скриптах, которые запускаются по крону на различных серверах. Первая задача - перенести их все на Dagu в его планировщик, а из кронов серверов убрать.

Понравилось, что можно сразу все свои костыли и велосипеды засунуть в Wrokflow, как есть. Выполнение скрипта по SSH выглядит примерно так:



steps:
 - id: start_backup_via_ssh
  action: ssh.run
  with:
   user: backup
   host: 192.168.137.9
   key: /root
/.ssh/id_ed25519
   shell: "/bin/bash -o pipefail"
   command: /root/sites-backup/sites-rsync.sh



Показал максимально простой пример подключения к серверу и запуска скрипта. Весь его вывод сохраняется и потом доступен к просмотру. В Dagu есть профили, куда можно добавлять переменные и секреты и потом использовать их в настройках задач. Есть интеграция с провайдерами Vault, Kubernetes, AWS и д.р. Можно отправлять уведомления через различные каналы - почта, мессенджеры, вебхуки и т.д.

Задачи, соответственно, выстраиваются в последовательность, которая может ветвиться. Сначала делаем подготовку, потом какое-то действие, потом отправляем отчёт, в случае ошибки делаем что-то другое. Пока у меня вся логика зашита в скриптах, но если по мере использования и изучения Dagu понравится, то логику буду дробить на шаги и реализовывать уже в рамках Workflow самой программы. Это будет и удобнее, и нагляднее.

В качестве действий - огромный набор возможностей:
◽️ Shell команды и скрипты на хостах с подключением по SSH
◽️ Управление Docker, Kenernetes
◽️ Использование JavaScript прямо в этапах workflow
◽️ Запросы по HTTP, SMTP, SFTP, S3, Rclone, команды GIT, SQL запросы
◽️ Интеграция с LLM моделями для использования их в задачах
◽️ Использование локального браузера для парсинга страниц сайтов
◽️ Сохранение артефактов, файлов, архивов, шаблонов
◽️ Ветвление и различные маршруты
◽️ Ручное подтверждение человеком того или иного действия

Мне показалось, что тут есть всё, что надо для разнородных задач. Я уже прикинул, как можно бэкапить и делать проверки. Например, дампим базу данных, передаём на сервер бэкапов, с тестового сервера забираем бэкап, распаковываем, заливаем в базу, делаем проверочный запрос. Для этого делаем два workflow - бэкап и проверка.

Как я уже сказал, подобная функциональность много где есть. Тот же n8n много задач закрывает, которые я задумал сделать в Dagu. Но последний по совокупным возможностям и относительной простоте мне показался более подходящим для моих разнородных задач. Буду изучать и использовать. Если всё получится, потом ещё напишу про него.

#devops #cicd
Просмотры: 5
Перейти в пост Открыть в MAX Сообщить о неточности
Анекдотическое свидетельство

[anecdotal evidence]

https://habr.com/ru/companies/otus/articles/747938/#id22

https://ru.wikipedia.org/wiki/Анекдотическое_свидетельство

Ряд исследований в ходе экспериментов пришли к выводам о том, что аргументы с использованием анекдотических свидетельств оказывались более убедительными по сравнению с теми, где приводились в подтверждение статистические данные. Причина того, что участники экспериментов делали выбор в пользу аргументов с анекдотическим свидетельствами, различные исследователи нашли в том, что анекдотические свидетельства более наглядны, а потому могут казаться более понятными и убедительными в сравнении со статистическими данными.
Просмотры: 10
Перейти в пост Открыть в MAX Сообщить о неточности

Репост из «Эй ай надзор»

🛠 Open-Source стек для ИИ-архитектора: 5 репозиториев, формирующих модульный ландшафт разработки

Эпоха закрытых монолитных инструментов разработки уступает место декомпозированному открытому стеку. Современная агентная система требует разделения на независимые уровни: эффективный инференс, единый слой данных, гибкий рантайм оркестрации и стандартизированные протоколы взаимодействия.

Разбираем 5 open-source проектов, которые закрывают ключевые системные потребности архитектуры агентных пайплайнов.

🧠 1. Инференс на ограниченных ресурсах: AirLLM
• Репозиторий: [AirLLM](https://github.com/lyogavin/airllm)
• Архитектурный профиль: Виртуальная память для больших моделей.
• В чем суть: Вместо того чтобы удерживать всю сеть в VRAM (что требует кластеров уровня H100 для моделей 70B–405B), AirLLM реализует послойную загрузку весов (layer-by-layer paging) с диска в память по требованию.
• Где применять: Идеально для локальных задач, где latency не критичен, но важна глубина рассуждений без потери точности от жесткого квантования: автономный оффлайн-аудит кода, фоновая валидация спек и научный анализ.

🗄 2. Слой состояния и шина интеграций: Supabase
• Репозиторий: [Supabase](https://github.com/supabase/supabase)
• Архитектурный профиль: Unified AI Data Plane + нативные MCP-серверы.
• В чем суть: Проект давно перерос статус «open-source Firebase». Сегодня это готовый бэкенд для агентных систем: PostgreSQL, векторное расширение `pgvector`, хранилище артефактов и Edge Functions.
• Ключевая фича: Supabase активно внедряет серверы [Model Context Protocol (MCP)](https://modelcontextprotocol.io). Агенты (в Claude Code, Cursor или OpenCode) получают стандартизированный, безопасный доступ к базам и бессерверной логике без написания кастомных CRUD-обвязок.

⚡️ 3. Модульные среды агентного исполнения: OpenCode и Continue
• Репозитории: [OpenCode](https://github.com/anomalyco/opencode) и [Continue](https://github.com/continuedev/continue)
• Архитектурный профиль: Провайдеро-независимые агентные рантаймы.
• В чем суть: Проприетарные кодинг-ассистенты привязывают команду к единому вендору и непрозрачной обработке контекста.
• Архитектурная ценность: Continue заложил основы интеграции локальных моделей и кастомных контекст-провайдеров в IDE. OpenCode развивает этот подход в сторону мультиагентности: поддержка одновременной параллельной работы нескольких агентов над репозиторием, авто-компрессия длинных контекстов и полная свобода в выборе моделей (от локальных весов до OpenRouter).

🌐 4. Независимый контур веб-навигации: Ladybird
• Репозиторий: [Ladybird](https://github.com/LadybirdBrowser/ladybird)
• Архитектурный профиль: Независимый движок браузера с нуля.
• В чем суть: Проект разрабатывает собственный движок рендеринга и JavaScript-интерпретатор без зависимостей от Chromium или WebKit.
• Архитектурный прицел: Для автономных web-browsing агентов это перспектива получить легкий, строго стандартизированный и изолированный браузерный сэндбокс для скрапинга и автоматизации без корпоративной телеметрии и раздутого легаси.

🎯 Вывод для архитектора

Агентная инженерия окончательно переходит к модульности:
`Compute Layer (AirLLM) → State & MCP Plane (Supabase) → Orchestration Harness (OpenCode)`.

Не связывайте архитектуру сквозным вендор-локом на закрытые экосистемы. Открытые протоколы и компоненты позволяют собирать гибкие, аудируемые и независимые AI-системы уже сегодня.

#AIArchitecture #OpenSource #AgenticAI #LLMOps #SystemDesign #MCP #DataEngineering #DevTools
Просмотры: 93
Перейти в пост Открыть в MAX Сообщить о неточности
Закон Конвея — «Организации проектируют системы, которые копируют структуру коммуникаций в этой организации».

Современная трактовка закона — «Если архитектура системы и архитектура организации противоречат друг другу, победу одерживает архитектура организации»


На практике, проектирование структуры организации и разработка программного обеспечения — две стороны одной медали, и обе они должны выполняться одной и той же компетентной группой людей. 
Просмотры: 67
Перейти в пост Открыть в MAX Сообщить о неточности
Изменения и перемены - они такие, а вы как думали?

Придется пройти через базовый защитный механизм стадий принятия:

Отрицание. «Такое просто невозможно, это не соответствует действительности!»

Гнев. «Почему я? Несправедливость!»

Торг. «Найдется способ улучшить положение! Разработаю план, согласно которому буду делать все необходимое!»

Депрессия. «Выхода нет, все бесполезно и бессмысленно».

Принятие. «Придется принять неизбежное и готовиться к тому, что произойдет».

Отрицание, гнев, торг, депрессия - все эти этапы помогут нам выйти на принятие и готовность к будущему.

Будьте открыты новым возможностям и готовы к переменам!
Просмотры: 82
Перейти в пост Открыть в MAX Сообщить о неточности
ВКонтакте Телеграм Одноклассники
Избранное в datool.ru

Следите за каналом в личном кабинете

Зарегистрируйтесь в datool.ru, чтобы добавить канал «/home/kostik/toxic ☣» в избранное и отслеживать его показатели.

Зарегистрироваться
Для владельцев каналов

Подтвердите свой канал

Войдите или зарегистрируйтесь в datool.ru, затем добавьте нашего бота в канал по инструкции в личном кабинете. После проверки владения замок исчезнет и вам станет доступно управление каналом.

Войти или зарегистрироваться

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти