ServerAdmin.ru
32.4K subscribers
1.18K photos
73 videos
29 files
3.19K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru

Ресурс включён в перечень Роскомнадзора
Download Telegram
Среди бесплатных серверов с реализацией протокола S3 долгое время безоговорочным лидером был MinIO. Он был простой, функциональный, с открытым исходным кодом. Для базовых задач self-hosted размещения все брали его и не забивали себе голову. Разработчики сначала урезали возможности бесплатной версии, а потом и вовсе перестали её разрабатывать и поддерживать. И теперь однозначного лидера нет, и что выбирать - не понятно.

Я попробовал разобраться с этим вопросом, причём не только с помощью ИИ, но и изучив некоторые материалы самостоятельно, банально погуглив и почитав материалы, обсуждения.

🔹Первое, что приходит на ум - Ceph. Это мощное, зрелое, кластерное решение от трёх узлов и до десятков, а возможно и сотен. Хотя можно и на один узел развернуть. Там есть в том числе S3, но сравнить его с MinIO язык не поворачивается. Это разного масштаба и архитектуры системы.

🔹SeaweedFS - относительно старый для этой ниши продукт. Я про него слышал ещё лет 5 назад как альтернативу MinIO. Он вполне стабильный и зрелый. По функциональности не уступает MinIO. Есть много статей с внедрением SeaweedFS в крупных компаниях, либо с его использованием как основы для своего самописного решения. Можно без особых опасений брать и пользоваться, но есть одно НО. Это фактически продукт одного человека. Будет ли кто-нибудь дальше поддерживать этот проект, если автору в какой-то момент всё это надоест - неизвестно.

🔹RustFS - свежий продукт, который начали активно пилить после ограничений MinIO. На основе некоторых тестов считается, что он очень быстрый. Написан же на Rust 😎. На деле у него совсем недавно был вот такой вот нюанс - в коде открытого проекта RustFS обнаружен предопределённый токен доступа. Сразу понятен подход к разработке и выкатке релизов. Официально всё ещё в бете. Пишут китайцы. Как по мне, пока всё это выглядит не очень. Надо хотя бы стабильного релиза подождать и посмотреть, что в итоге навайбкодят китайцы.

🔹Garage - более зрелый продукт по сравнению с RustFS. Пишется небольшой французской компанией с 2020 года. Тоже, кстати, на Rust. Легко разворачивается, настраивается как для маленького проекта на одной ноде, так и в небольшой кластер из нескольких. Есть веб интерфейс для управления, оператор для кубера, поддерживается фактор репликации, сжатие, дедупликация. То есть выглядит всё это как простое стабильное решение с базовой функциональностью для этой задачи. Мне показалось это на текущий момент оптимальное решения для замены MinIO.

Отдельно отмечу то, что тоже рассматривал, но не стал включать в список, так как показалось не очень актуальным. Но может кому-то приглянётся:
- S3 на базе Vitastor.
- Zenko CloudServer, Vitastor его использует, про cloudserver я ранее писал заметку.
- s4core - свежий проект навайбкоденный одним человеком, по описанию всё красиво, на практике не понятно, как будет работать, отзывов не нашёл.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#s3
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍76👎1
Практически всегда, когда стоит вопрос покупки жёсткого диска для различных задач, я отдаю предпочтение линейке WD Red. Она периодически меняет свой состав. С появлением моделей Red Pro отдаю предпочтение именно им. Хотя сейчас имеет смысл внести поправочку. Раньше отдавал предпочтение. Сейчас посмотрел цены, вопросов стало больше. Разница между Plus и Pro существенная. Но в целом это всё равно будет линейка WD Red.

На картинке выше пример одного сервера под бэкапы, где стоят эти диски. У некоторых наработка 13+ лет. Один из таких начал сыпать в мониторинг Current_Pending_Sector. 14 штук уже набралось, решил поменять его, заодно посмотрел статистику остальных дисков. Они там собраны в RAID6. Самые старые диски уже 2 переезда на новое железо пережили. Менялась платформа, а диски оставались. Рейд, собранный в mdadm, спокойно переезжает на новое железо. Просто переносишь диски и инициализируешь массив. Mdadm видит собранный массив на старых дисках и просто запускает его. Все разделы, данные, сохраняются.

В целом, это типичная картинка для этих дисков. Они чаще всего работают долго, стабильно, надёжно. Если проблемы возникают, то в смарте они как правило тоже присутствуют. Не припоминаю, чтобы хоть раз подобный диск отработал меньше 3-4 лет. Вроде было разок, но тогда ещё работал их сервисный центр, гарантийный диск менялся без вопросов на новый. Можно было курьером отправить. А гарантия была вроде бы 5 лет. Сейчас, к сожалению, такой гарантии производителя уже нет, только от магазина 1-2 года. Там уже как повезёт с заменой.

Единственное, на что обращаю внимание - это чтобы тип записи точно был CMR, а не SMR. Был один момент с этими дисками, когда производитель начал жулить и врать про тип записи и скорость вращения. Но быстро одумался и вроде бы больше эта история не повторялась.

Эти диски можно брать б.у., если продавец демонстрирует SMART продаваемого диска.

#железо
👍78👎7
😑 Дешевле - не значит выгоднее. Почему выбор по цене в итоге обходится дороже?

Когда выбирают серверы, обычно сравнивают железо: ядра, память, диски, цена за стойку. Инструменты управления уходят на второй план — и зря. Именно они определяют, сколько часов админ потратит на обслуживание в ближайшие 3–5 лет.

✔️На сайте сравнили сервера Dell и Supermicro.

Спешим поделиться их отличиями в:
ℹ️ Прошивках и BIOS
ℹ️ Телеметрии и интеграции
ℹ️ Конфигах и масштабах
ℹ️ Безопасности


Позаботьтесь о вашем сисадмине сегодня, чтобы он не уволился завтра

🖥 Полное сравнение с цифрами и таблицами — читайте у нас на сайте

Реклама. ООО "ИТЕЛОН". ИНН 7701527528. erid: 2W5zFJ7Xv4q
Please open Telegram to view this post
VIEW IN TELEGRAM
1👎10👍7
Размышлял тут на днях над судьбой сайта и статей на нём. Наткнулся на любопытный комментарий. Не припоминаю, чтобы он раньше привлекал моё внимание. Странно, что пропустил. Как вам такое мыслеизливание:

Капец, по вашей инструкции сбросил настройки на заводские и всё пинги не получаю от маршрутизатора! Спасибо за отличную статью и микротик говно для задротов с хвостиками, заваленными джинсами с кучей корманов и пивными животами! Маршрутизатор не советую, берите zyxel с keenetic os! Всё для людей сделано!


По-моему любой роутер после сброса настроек на заводские теряет в том числе и сетевые настройки. Это как бы база. Неужели в Зухеле по-другому?

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#юмор #mikrotik
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍121👎4
🔝 ТОП постов за прошедший месяц июнь. Все самые популярные публикации по месяцам можно почитать со соответствующему хэштэгу #топ. Отдельно можно посмотреть ТОП за прошлые года: 2023 и 2024 и 2025.

Пользуясь случаем, хочу попросить проголосовать за мой канал, так как это открывает некоторые дополнительные возможности по настройке: https://t.me/boost/srv_admin.

В этот раз в топ по реакциям (отрицательным) попала рекламная публикация. Это вообще первый раз за всю историю ведения канала (9 лет). Обычно рекламу проматывают и не реагируют на неё. Для тех, кто не совсем понимает эту кухню немного поясню, как на деле выглядит публикация рекламы.

Крупных брендов чаще всего представляют рекламные агентства. С ними в обязательном порядке заключается договор. Некоторые договора на несколько публикаций в течении нескольких месяцев. Иногда договор действует до полугода. У меня есть определённые требования к тексту рекламы, чтобы она выглядела нормально, но всё не учесть. Иногда бывают перфомансы, которые маркетологи считают заслуживающими внимания. Просто так отказаться от публикации нельзя.

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

📌 Больше всего пересылок:
◽️5 полезных настроек Proxmox (323)
◽️PatchMon для контроля за обновлениями (225)
◽️Обновление сертификатов Microsoft в UEFI (218)
◽️Обновление BIOS в Supermicro (213)

📌 Больше всего комментариев:
◽️Реалии найма в IT (292)
◽️Let's Encrypt следует ссанкциям США (166)
◽️Переезд серверной и отказ оборудования (97)
◽️ExplorerPatcher для Windows 11 (88)

📌 Больше всего реакций:
◽️Проблемы с запуском KeePass (221)
◽️Помехи с сигналом в Ethernet от наводок 380В (216)
◽️Обновление BIOS в Supermicro (205)

📌 Больше всего просмотров:
◽️Прикол в настройке Asterisk (10260)
◽️Let's Encrypt следует ссанкциям США (10135)
◽️Настройка Fwknop (9115)

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#топ
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍40👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Kuber Community Day возвращается

30 июля в Москве все неравнодушные к технологии встречаются на инженерной конференции Kuber Community Day.

На сцене выступят практики из Ænix, MWS, «Райффайзенбанка», «СберЗдоровья», «Лаборатории Числитель», «Почтатех», «Инфосистемы Джет», Hilbert Team и других компаний.

Что вас ждет:
◾️доклады без маркетинга: 30 спикеров расскажут об использовании ИИ в Kubernetes, мониторинге контейнеров, обзоре инструментов экосистемы, получении сертификаций и пр.;
◾️мастер-класс по созданию Kubernetes-оператора: в конце все участники задеплоят его в кластер Yandex Managed Kubernetes;
◾️arch dating: короткие встречи с опытными специалистами, где можно обсудить технические и карьерные вопросы;
◾️научпоп: рассказ о кибернетическом подходе к управлению сложностью от Александра Нозика, директора центра научного программирования.

Форматы: офлайн и онлайн.

Участие бесплатное, регистрация обязательна.
👍8👎1
У меня основной инструмент взаимодействия с ИИ - агент OpenCode. Мне в целом привычна и удобна работа в консоли, особенно для решения конкретных прикладных задач. Я тут же могу проверить решение - запустить, подключиться к другому серверу и т.д. Но иногда не хватает веб интерфейса для некоторых задач. У opencode есть свой встроенный веб интерфейс, но он мне совершенно не понравился. Неудобный.

Не так давно я смотрел обзор агента Coddy от автора. Мне он показался интересным, запомнил. И вот дошли руки попробовать. Сразу скажу, что он мне понравился и я оставил его себе для работы. К сожалению, у меня нет возможности пользоваться и сравнивать разные агенты, коих сейчас выходит очень много. В Coddy просто есть сразу всё, что лично мне нужно.

Что понравилось в Coddy и что он умеет:

▪️Простой инструмент из одного бинарника, конфига и папок со скилами, сессиями, кроном и т.д. Его легко запускать, переносить, обновлять.
▪️Три режима работы: ACP (взаимодействие агентов), HTTP (работаете в браузере), Gateway (взаимодействие через Telegram или другой мессенджер). Все три режима используют единое хранилище сессий. Например, в браузере можно посмотреть, что вы делали в других сессиях.
▪️Куча основных инструментов уже встроены: чтение файлов, запуск команд, ssh соединения, поиск через поисковики, анализ сайтов и т.д.
▪️Простой и лаконичный веб интерфейс. Ничего лишнего.
▪️Можно подключать все популярные llm, в том числе локальные.
▪️Нормально работает с локальными моделями, так как по умолчанию почти не расходует контекст на свою работу.
▪️Вся функциональная современная база есть: rules, sheduler, skills, mcp, long-term memory между сессиями или глобальная.
- По умолчанию всегда спрашивает, прежде чем что-то выполнять.

Что не понравилось:

◽️Не показывает статистику по генерации ответа. Не видно, какая была скорость генерации токенов для локальных моделей.
◽️Добавлять настройки через веб интерфейс неудобно.
◽️Результат работы планировщика можно посмотреть только в консоли, либо я не понял, где и как искать результаты работы в веб интерфейсе.
◽️Запросы на выполнение той или иной команды иногда почему-то выводятся где-то вверху в чате, хотя сам чат уже уехал вниз. Похоже на какой-то баг.

В общем, мне этот агент показался удобным, чтобы в одном месте собрать всю работу с llm. Поставил coddy на постоянку, буду использовать вместе с opencode, первого для работы в браузере, второго - в консоли.

На картинках мои примеры работы с локальной моделькой omnicoder-9b. Я её долго мучал. Она шустро у меня работает и не сказать, что сильно тупая. Если аккуратно подойти к настройке, то многие админские задачи сможет выполнять. Например, проверять регулярно какие-то логи с хостов и формировать отчёт.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#ai
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64👎5
Небольшой практический совет для тех, кто собирает или планирует собирать логи Docker контейнеров в Loki. У меня был подробный цикл заметок по этой теме:

1️⃣ Установка, настройка Loki, сбор логов Docker контейнеров
2️⃣ Сбор системных логов Linux (syslog и journald) с помощью Alloy
3️⃣ Сбор логов Postfix и пример создания дашборда для них
4️⃣ Сбор журналов Windows.
5️⃣ Приём логов Syslog с помощью Vector
6️⃣ Отключение сбора статистки в Alloy

Также есть общая статья со всеми этими темами. Мне нравится эта система. Я её сейчас постоянно использую. Скорее всего больше не буду настраивать ELK, так как для моих задач мне Loki хватает, хотя она и менее функциональная, но проще в настройке и меньше требует ресурсов.

Во время изучения Loki собирал логи с помощью встроенного плагина докер - grafana/loki-docker-driver. Он удобен в первую очередь тем, что можно в каждом конкретном контейнере указать, что логи отправляются в Loki. Примерно так:

  logging:
   driver: loki
   options:
    loki-url: "http://192.168.137.30:3100/loki/api/v1/push"
    loki-retries: 2
    loki-max-backoff: 800ms
    loki-timeout: 1s
    keep-file: "true"
    mode: "non-blocking"

Благодаря этому можно выбирать, какой контейнер и куда отправляет логи. Если вам нужны логи только от одного контейнера, а у вас их крутится 10, то этот драйвер будет в самый раз.

Но у такого подхода есть существенные минусы, с которыми я столкнулся:

1️⃣ Сам по себе драйвер - отдельная сущность. И если в нём будут ошибки, то у вас не запустятся контейнеры, которые от него зависят. И я эти ошибки ловил. Не всегда и не везде, но иногда было так, что этот драйвер по какой-то причине не запускался. Причём быстро выяснить причину не удавалось. Просто не запускался автоматически loki.sock после перезагрузки хоста. Лечилось ручным запуском. Причина была не в том, что Loki недоступен.

2️⃣ За плагином надо отдельно следить и обновлять. Причём обновление требует перезапуска самой службы Docker со всеми вытекающими последствиями в виде остановки или перезапуска контейнеров в зависимости от их настроек. Это если у вас не включен параметр live-restore. С ним контейнеры не будут перезапускаться вместе со службой. По умолчанию этот параметр не активен. С ним есть свои нюансы.

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

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#docker #logs #loki #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍56👎1
Синхронизация двух разнесённых хранилищ с файлами - нетривиальная задача, особенно если они состоят из десятков и сотен тысяч файлов. Сделать копию данных и регулярно синхронизировать - полдела. Нужно ещё как-то их сравнивать, чтобы убедиться в том, что данные в обоих местах идентичны. Мало того, что при передаче данные могут повредиться, так они ещё и со временем могут протухать из-за bit rot (битовое гниение на хранилищах) или silent corruption (повреждения из-за памяти, контроллеров, неисправных кабелей и т.д.)

С bit rot я лично сталкивался, так что это не гипотетическая ситуация. Хотя в моём случае это не приводило к каким-то проблемам, так как протухали очень старые данные, которые по сути никому уже и не нужны, а хранятся просто так, на всякий случай. Но где-то это может быть критично.

По моему опыту хранилища на несколько терабайт данных с сотнями тысяч файлов быстрее всего синхронизировать с помощью rsync. Я так обычно и делаю. У меня много заметок на этот счёт в канале. Особенность rsync в том, что он умеет быстро сравнивать хранилища и находить только изменившиеся файлы, учитывая размер файла и mtime. На основе этих данных формирует список разнящихся файлов и копирует только их.

Такой подход не страхует от повреждения файлов во время передачи. Хотя сетевые протоколы содержат собственные механизмы контроля целостности, файлы могут повредиться, например, из-за неисправной памяти, контроллеров или других аппаратных сбоев. Даже если ваше хранилище защищено от bit rot, гарантировать поступление точной копии файла оно не может. Нужны дополнительные проверки.

Rsync, как и некоторые другие подобные программы, могут сверять контрольные суммы файлов. Но это очень длительный процесс, если хранилище большое. В момент передачи данных делать это нецелесообразно. Процесс может растянуться на дни. Не так давно я в локальной сети сравнил два хранилища объёмом в 1ТБ, где хранятся ~100 тыс. файлов. У меня процесс длился в районе 20-ти часов.

Подсчитывать контрольные суммы для сравнения логичнее локально и отдельно от передачи, разнеся эти процессы по времени. Если синхронизация выполняется раз в день, то сравнение можно делать раз в неделю/месяц. Для этого есть много различных программ. Я недавно увидел анонс одной из них - precizer, поэтому и решил написать об этой теме. Ранее мне был знаком скрипт bitrot, который делает примерно то же самое, но не так изящно.

Precizer для максимального быстродействия написана на чистом Си, компилируется в одиночный бинарник, проста в использовании. Производительность в основном зависит от работы дисковой подсистемы, так как файлы приходится полностью читать. Обычно это узкое место. Результаты анализа файлов хранит в SQLite. Если её прервать, а потом запустить снова, она продолжит работу, не потеряв всё то, что сделала ранее. Это отличный инструмент для фоновой проверки хранилищ по расписанию.

Работает примерно так:

# precizer --progress --database=share1.db /mnt/share1
# precizer --progress --database=share2.db /mnt/share2
# precizer --compare share1.db share2.db

В базах share1.db и share2.db хранится относительный путь файла, его хэш SHA512 и метаданные (размер, ctime и mtime). Последующие запуски для обновления базы выполняются с ключом --update, чтобы заново не пересчитывать хэши к неизменившимся файлам.

Решений подобной задачи может быть несколько. Передача и сравнение файлов - только одно из них. Можно передавать снепшоты файловых систем, или систем хранения, если они это поддерживают. Например, снепшоты zfs или lvm и потом их сравнивать. Можно хранить данные в формате чанков, как это делает, к примеру, restic или borg и делать проверки на уровне чанков. Итоговое решение нужно выбирать по месту в зависимости от того, какая архитектура хранения и бэкапов используется. Уровень файлов имеет свои недостатки, но удобен, так как вы в случае чего сразу имеете живую копию данных, которую сможете использовать без преобразования или каких-то ещё дополнительных действий.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#backup
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍71👎2
Смотрю иногда ютуб канал Будни сантехника. Не знаю зачем, просто нравится. Кое-что полезное узнал - как правильно наматывать фум ленту и сантехническую нить, как канализацию правильно делать и т.д. Живущим в частном доме эта информация не лишняя, особенно если у них всё на полипропилене 😁.

Так вот, послушал выступление этого сантехника на слёте сантехников (прикиньте, такие тоже бывают). Он там рассказал забавную вещь. Автор называет себя настоящим фанатом своего дела и рассказывает, как приезжая на отдых, он уже на второй день смотрит, как у него радиатор подключен в номере, заглядывает в ревизионные люки, проверяет кондиционер и т.д. Постоянно думает о своей работе и делах - как что улучшить, общается в чатах и т.д. Сделал себе мастерскую, краны там крутит, тестирует.

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

Я давно знаю эту свою проблему. Разучился отдыхать. Надо заново учиться. Всё время в делах, заботах, что-то делаю, придумываю, планирую и т.д. Это не сказать, что плохо, но уже крайность, от которой надо уходить обратно в сторону нормы. Как минимум для сохранения здоровья. Часто ночами засиживаюсь, настраивая что-то в своей серверной. Прикиньте, каким надо быть фанатом, чтобы весь день настраивать сервера на работе, а перед сном - у себя дома.

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

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
👍116👎6
Вернулся из небольшого отпуска. Последняя публикация была на эту тему не просто так. На прошлой неделе скомканное расписание получилось, потому что пришлось заранее всё в планировщик добавить в более сжатом формате. Когда постоянно работаешь, привыкаешь. И если работа тебе не ненавистна, то в целом всё нормально. А вот после отпуска вкатываться в рабочий график - прям мучение. Иногда кажется, что лучше совсем не ходить в него, чтобы потом не приходилось привыкать обратно.

Для разгона решил закончить свою старую тему с ИБП, так как лично для меня она получилась поучительной. Напомню, для тех, кто не читал прошлую публикацию. Я подключил сервер, у которого блок питания с Active PFC к линейно-интерактивному ИБП. В итоге при переходе на батареи сервер аварийно выключался и не мог стартовать при работе от батарей, уходил в циклическую перезагрузку.

Существуют разные мнения на этот счёт. Насколько я понял проблему, суть там вот в чём. В линейно-интерактивном ИБП при переходе на питание от батарей происходит кратковременное снижение и в моменте пропадание напряжения, на которое БП с APFC реагирует резким повышением потребляемого тока. И если в ИБП нет достаточного запаса по мощности, либо если переключение чуть увеличено от базовых значений, он выключается. Это основная причина проблем, а не плохой синус, как считал я, и как писали некоторые люди, а так же ИИ.

Пришёл именно к этому мнению, потому что видел довольно много отзывов, когда у людей сервера нормально работали от линейно-интерактивных ИБП. Думаю, что там либо запаса по мощности хватало, либо БП не так активно увеличивали ток из-за более кратковременного перехода, поэтому и не происходило отключение. Но в любом случае однозначная рекомендация - сервера с APFC должны быть запитаны от онлайн ИБП.

Я в итоге и купил (за 13700 р.) один из таких, практически самый дешёвый - FinePower MIX ONLINE 1000VA, он же DEXP MIX ONLINE 1000VA. Он же и под другими брендами продаётся, но внешний вид у них у всех один и тот же. Я его уже настроил, протестировал. Работает нормально. Выбрал именно его, потому что дешёвый, и потому что не увидел каких-то явно плохих отзывов. В целом у всех он работает нормально. Проблема лично у меня возникла с софтом под Linux. У меня не получилось его завести, хотя я видел отзывы, когда у людей получалось. В зависимости от бренда, под которым он продаётся, у него может быть разная прошивка и протокол обмена данными. У меня ни через NUT, ни через его родной софт под Linux, он не заработал.

Немного помучался и завёл всё через виртуальную машину на винде. У меня он всё равно к гипервизору подключен. Там софт нормально работает. Он тушит по SSH гипервизор. Мою супермикру этот ИБП держит в районе 15-20 минут. Если верить его дисплею, то нагрузка обычно ~150Вт. Для моих задач этого ИБП достаточно. Рекомендовать его не буду из-за кривого софта, но за эти деньги другой не купить. Плюс, он шумит вентилятором, но мне не критично, так как стоит в нежилом помещении. Если бы не этот вентилятор, то был бы отличный вариант для домашнего онлайн ИБП для компьютера под виндой.

В итоге сервер работает от этого онлайн ИБП, а остальные компьютеры - от линейно-интерактивных. И всё в порядке. То есть проблемы в явном виде с этим ИБП не было. Он просто не совместим с конкретным сервером, как и большинство его собратьев такого же типа.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#железо
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61👎4
Мы заперли AI-агента в комнате.
Сможет ли он выбраться?

Этот воркшоп не про очередного чат-бота, который красиво отвечает на вопросы.

Мы соберём AI-агента на LangChain v1 и поместим его в виртуальную смертельно опасную квест-комнату. Игра началась!

У агента будут инструменты: он сможет осматривать предметы и выполнять игровые действия через Function Calling.

А мы выступим в роли кукловода и будем давать ему подсказки через интерком. И наша цель вовсе не в том, чтобы ИИ успешно нашёл выход…

На воркшопе разберём:
— как быстро собрать логику AI-агента на обновлённом LangChain;
— как подключать инструменты для выполнения действий через Tool Calling;
— как сохранять память между ходами;
— как создать REST-интерфейс на FastAPI;
— как устроены архитектура и развёртывание такого агента.

В игровой форме разберём основные механики создания AI-приложений и дадим возможность бесплатно запустить своего агента через наш LLM-прокси.

📅 16 июля в 19:00 по МСК

👉 Регистрация в боте - https://t.me/inz_infra_bot?start=210212

Реклама, ООО Инженеркатех, ИНН 9715483673, erid: 2SDnjecUTkX
👍10👎3
Есть разные способы автоматической доставки необходимых пакетов софта на целевые сервера: ansible или аналоги, bash, в частности с помощью bashible, cloud-init, различные ci/cd системы со своими агентами. Во всех этих системах первое, что приходит в голову, сформировать список необходимых пакетов и передавать его на установку. В случае необходимости, список можно менять.

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

В зависимости от ситуации, можно использовать тот или иной подход. У каждого есть как свои плюсы, так и минусы. Например, если список пакетов хранится в ansible и часто меняется, придётся постоянно обновлять список в переменной и пушить эти изменения в репозиторий. Если они несущественны и не требуют отдельного учёта, проще менять мета-пакет, не затрагивая код ролей или плейбуков. Например, если вы ведёте набор софта для настройки рабочей станции на Linux. Там будет масса всего для установки. Удобно всё это завернуть в один мета-пакет workstation и менять именно его.

Мета-пакеты во всю представлены в стандартных репозиториях. Самый популярный мета-пакет - linux-image-amd64, который обновляет ядро. Посмотреть его состав можно так:

# apt show linux-image-amd64
.....
Description: Linux for 64-bit PCs (meta-package)
.....

Набор инструментов build-essential, оболочки gnome, xfce4, kde - это всё тоже мета-пакеты. Узнал о них совершенно случайно не так давно. Сколько лет настраиваю линуксы, всегда пакеты по одному ставил, храня списки в переменных.

Собрать свой мета-пакет очень просто. Покажу на примере мета пакета deb-base с набором программ, которые я обычно ставлю на все сервера:

# mkdir -p ~/deb-base/DEBIAN
# nano ~/deb-base/DEBIAN/control

Package: deb-base
Version: 1.0
Architecture: all
Maintainer: Vladimir <root@serveradmin.ru>
Depends: sudo, curl, wget, htop, rsync, unattended-upgrades, net-tools, lsof, iftop
Description: Base Debian server configuration

# dpkg-deb --build deb-base

Получил на выходе мета-пакет deb-base.deb, у которого в зависимостях sudo, curl, wget, htop, rsync, unattended-upgrades, net-tools, lsof, iftop. При установке мета-пакета они все будут установлены:

# apt install ./deb-base.deb

Причём эти пакеты устанавливаются по-отдельности, их можно как обычно посмотреть через dpkg:

# dpkg -l | grep iftop

В случае необходимости любой из установленных пакетов можно удалить как обычно через apt. Если изменить список пакетов и версию в файле control, пересобрать мета-пакет и запустить:

# apt upgrade ./deb-base.deb

То в систему будет добавлено то, чего не хватает из зависимостей в мета-пакете. Если ты свои пакеты хранишь в локальном репозитории, то изменения приедут на целевые сервера с плановым обновлением.

Работают мета-пакеты просто и прозрачно, используя для создания встроенный в deb дистрибутивы менеджер пакетов dpkg. Есть и другие инструменты для этого, но этот проще всего.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍112👎3
С недавнего времени стал дома работать на стационарном компьютере. При этом остался довольно производительный ноутбук с 32 ГБ памяти и дискретной видеокартой. Иногда его включаю для различных задач и оставляю рядом на столе.

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

Я взял open source программу Deskflow. Она поддерживает все популярные системы, а для винды есть в том числе портабельная версия, работающая без установки. Запустил её на компе и на ноуте. Компьютер сделал сервером, так как клавиатура и мышь подключены к нему. На ноутбуке запустил Deskflow в режиме клиента.

Клиент подключается к серверу и в такой связке они используют одну клавиатуру и мышь. Плюс, объединяется буфер обмена. Работает всё это очень удобно, как-будто у вас к системнику подключены два монитора. Просто ведёте мышку к краю экрана монитора и она переходит на экран ноутбука. Работает всё чётко и быстро. Никаких проблем и задержек. Мне очень понравилось.

Раньше вообще не знал, что существуют такие программы. Не было в них нужды.

Deskflow миниатюрна, написана на C++ с GUI на QT. Этим объясняется её кроссплатформенность. Я так понимаю, можно разные системы подключать - Windows, Linux, macOS. У меня обе машины на винде, так что я пробовал только на ней. В настройках ничего не настраивал, только TLS отключил. В своей локалке он мне не нужен.

Сюда бы ещё добавить передачу файлов. Пробовал через буфер - не работает. Буфер только для текста, файлы, даже небольшие, передавать не получается.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX 😩

#remote
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍243👎1
Мысль про магистратуру у тебя, скорее всего, уже была. Может, даже не раз

Магистратура «Управление внедрением ИИ в бизнес» от «Школы 21» и МИФИ — для тех, кто давно понял: ИИ меняет бизнес быстрее, чем кажется.

Что внутри:
🔹 живые сценарии применения ИИ — конкретные решения для бизнеса, не абстрактные алгоритмы
🔹 управление бизнесом и понимание технологий — чтобы говорить с разработчиками на одном языке
🔹 реальные проекты от компаний прямо во время учёбы
🔹 диплом МИФИ — технического вуза с серьёзной инженерной репутацией.

Что ты будешь изучать:
🔹 основы ИИ, машинного обучения и работы с данными
🔹 Python, нейросети и базовые инженерные инструменты
🔹 продуктовый подход: гипотезы, метрики, запуск ИИ-решений
🔹 экономику и эффективность внедрения ИИ в бизнес
🔹 проектирование и внедрение ИИ-систем в компаниях

Все подробности и заявка — на сайте.
👎12👍3