Обновить

Администрирование

Сначала показывать
Порог рейтинга
Уровень сложности

Решение для автоматизированной установки сетевых принтеров в гетерогенной среде

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели9.4K

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

Но для начала, что имеем?

Офис на 300 человек и очень разношёрстный парк техники, MacOS, GNU/Linux и конечно Windows 10 и 11. Для первых двух развернут Cups а вот для вторых он не подходит, не буду распинаться почему :-)...

6 принтеров:
- 3шт. Kyocera ECOSYS M3145dn
- 1шт. Kyocera ECOSYS M4132idn
- 1шт. HP PageWide 377dw MFP
- 1шт. HP LaserJet MFP M426fdn
- 1шт. Kyocera ECOSYS MA4000cix

Для начала накидал кратко то, что собираюсь реализовать (aka ТЗ):

- Желание подключать пользователям Win принтера в один клик, а лучше чтобы этот клик и вовсе они сами делали;
- Ставится принтер должен с понятным именем для конечного пользователя
- Подключение по TCP/IP;
- И самое главное - Использование оригинальных драйверов производителя, во избежание каких либо конфликтов с форматом и для доступа к более широкому спектру настроек.

Придумалось следующее решение...

Читать далее

Основы работы с Terraform в Selectel на примере Managed Kubernetes

Уровень сложностиСложный
Время на прочтение13 мин
Охват и читатели8.2K

Привет! На связи Андрей Иванов, старший системный администратор по облачным продуктам. Очень часто к нам обращаются клиенты по вопросам автоматизации работы с инфраструктурой. Лучший подход для подобных задач — IaC (Infrastructure as Code), когда весь комплекс элементов и их взаимодействие описывается с помощью кода, вместо настройки вручную. 

Самый известный инструмент для этого — Terraform от компании HashiCorp, который стал отраслевым стандартом для воплощения IaC в жизнь. Сегодня рассмотрим принципы работы с ним, а в качестве примера создадим кластер Managed Kubernetes версии 1.33.5.

Читать далее

Битва в облаках: тестируем скорость популярных хранилищ с помощью Rclone

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели7.8K

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

Читать далее

Некрокомпиляция или как собрать OpenWatcom для QNX4 под Debian 12 и прикрутить его к Eclipse

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели6.8K

Меня зовут Ярослав Бомбов и я более 30 лет занимаюсь созданием АСУТП. Как вы понимаете жизненные циклы в АСУТП штука длительная и иногда возникают задачи что-то добавить в систему работающую уже лет 20. И именно такой случай произошел - возникла необходимость изменить код в контроллере под управлением QNX4.

Можно конечно было поговорить на тему "вы в каком морге этого Франкенштейна получали туда и обращайтесь", но при ближайшем рассмотрении оказалось что код мой собственный ;). Самое простое решение открыть mcedit, что-то поправить и собрать в самом QNX4, но для начала надо вспомнить разобраться как все работает, а это удобней делать в современных IDE. Поиск бинарников OpenWatcom (OW) под линукс дал ровно два архива которые в моей системе не заработали. Поэтому решено действовать по принципу - лучше день потерять, потом за пять минут долететь.

Полетели

Патчим Chrome «на лету» для работы с YouTube (вторая часть)

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели27K

Салют, Хабр! В предыдущей статье "Патчим Chrome для работы с YouTube" заменой всего 8 байт в файле chrome.dll мы добились работоспособности YouTube, правда работает это не у всех, но у многих. Теперь напишем программу, которая ищет непропатченный процесс Chrome в ОЗУ компьютера и меняет его прямо "на лету". Права администратора при этом не требуются.

За основу возьмём проект https://github.com/glmcdona/Process-Dump/releases/tag/v2.1.1 который умеет дампить любой процесс на диск. Для этого запустим Chrome и сдампим на диск с использованием утилиты pd64.exe из этого проекта.

Читать далее

MySQL в Uber

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели8.9K

Как поддерживать свыше 2300 кластеров MySQL без заметных простоев? В Uber это решают разделением на плоскости данных, управления и обнаружения и строгим приведением фактического состояния к desired state. В материале — анатомия control plane (Odin, Cadence, контроллер с правилами), как устроены плавные и аварийные переключения primary, замена узлов и онлайн-изменения схемы; как discovery на etcd и реверс-прокси даёт стабильный VIP; как наблюдаемость, CDC (Storagetapper→Kafka→Hive) и бэкапы закрывают эксплуатацию. ФВ фокусе — инженерные решения, которые позволяют удерживать 99,99% доступности без ручной магии.

К архитектуре

Развёртывание боевого кластера Cassandra. Часть 4

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели6K

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

1. Анализ рабочей нагрузки и требований
2. Разработка схемы данных
3. Настройка хостовых машин
4. Настройка конфигурации Cassandra
5. Настройка топологии кластера
= ВЫ НАХОДИТЕСЬ ЗДЕСЬ =
6. Подключение Prometheus Cassandra Exporter
7. Подключение Prometheus Node Exporter
8. Вывод всех метрик в Grafana
9. Проведение нагрузочного тестирования
10. Дополнительный тюнинг по результатам теста

В этой части мы возьмём простой советский...

Читать далее

150 млн чтений/с: как Uber усилил консистентность кэша

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели6.2K

150 млн чтений в секунду — итог скрупулёзной инженерии кэша. В этом кейсе Uber — как ужесточить консистентность без удушения записи: инвалидация «по пути записи» из слоя запросов, дедупликация по commit-timestamp из БД, сочетание TTL и CDC на бинлогах, плюс измерение «черствости» через Cache Inspector. Разобраны реальные источники stale-данных (лаг CDC, реплики, негативное кэширование) и компромиссы вроде read-your-writes — с практическими схемами, которые масштабируются до сотен миллионов RPS.

Читать кейс

Эффективный мониторинг облачных решений: первые шаги от метрик к асинхронным задачам

Время на прочтение8 мин
Охват и читатели4.5K

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

Меня зовут Юлия Рубцова, я ведущий менеджер продукта Yandex Monitoring. В этой серии статей я и мой коллега Владимир Гордийчук @gordiychuk рассказываем про реальные сценарии использования мониторинга облачных решений. Что вас ждёт: мы покажем, как настроить дашборды, быстро проверить гипотезы при расследовании инцидента, а в конце соберём лучшие практики для настройки мониторинга. 

Начнём с базы: что такое мониторинг, для чего он нужен, что такое золотые сигналы, как использовать гистограммы и перцентили. А уже затем рассмотрим сценарии мониторинга асинхронных задач.

Читать далее

Uptrace v2.0: как новый JSON-тип ClickHouse ускорил запросы по трейсам в 10 раз

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели4.6K

Uptrace v2.0 использует новый JSON-тип ClickHouse для хранения observability-данных. Результат: запросы по трейсам ускорились в 10 раз.

Делюсь практическим опытом внедрения: установка за 5 минут через Docker, настройка data transformations для обработки данных на лету, гибкие retention policies для экономии на хранении.

В статье:

Пошаговая инструкция от установки до production

Примеры кода на Node.js с OpenTelemetry

Кейсы настройки: снижение cardinality URL, парсинг данных, удаление PII

Чеклист для продакшена

Подходит для микросервисных архитектур на 5+ сервисов, где нужна скорость поиска по атрибутам трейсов.

Читать про 10x ускорение

Terraform Actions: Глубокое погружение

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели8.4K

Terraform Actions — это новая концепция, представленная в Terraform 1.14, которая позволяет выполнять операции вне стандартного рабочего процесса CRUD (Create-Read-Update-Delete). Это расширяет возможности Terraform, позволяя взаимодействовать с ресурсами способами, для которых раньше требовались другие инструменты, например Ansible.

Читать далее

Свой прокси DNS сервер для обхода санкций зарубежных сайтов(с использованием VPS)

Время на прочтение4 мин
Охват и читатели50K

Безусловно, тема обхода ограничений изнутри страны сейчас актуальна. Но что делать, если нужно открыть сайты, которые заблокировали пул IP-адресов из РФ? Например, было интересно создать аналог DNS‑сервера вроде comss, который открывает доступ к заблокированным AI, игровым серверам и тому подобному, с чем не смогут помочь обходы DPI (Возможно, эксперты напишут замечания в комментариях).

Один из возможных способов, который получилось реализовать у меня, представлен ниже.

Нам понадобится VPS в локации, через которую мы хотим быть видимы для нужных нам сервисов.

Для примера можно вспомнить Twitch, который заблокировал доступ к просмотру стримов в качестве 1080p и 1440p для пользователей из РФ.

Идём на страницу справки по бета‑тестированию качества 2k на Twitch и смотрим регионы, в которых оно доступно.

Читать далее

Сравнение Grafana и Dimension-UI на задаче мониторинга истории активных сессий

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6.8K

Недавно рассказывал про мониторинг истории активных сессий в базах данных Oracle, PostgreSQL, ClickHouse и MS SQL Server с использованием desktop-приложения Dimension-UI (link). В комментариях @KPSB92 задал вопрос о преимуществах/отличиях связки exporter Prometheus/Grafana и Dimension-UI, решил оформить ответ в эту небольшую статью.

Итак, возьмем для примера просмотр данных активных сессий в базе данных PostgreSQL и сравним визуализацию в Grafana и Dimension-UI. Посмотрим работу с интерфейсами обоих систем в динамике с помощью скринкастов.

Читать далее (трафик 21 Мб)

Ближайшие события

QuasarLinux: когда хочется свободы и удобства

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели8.1K

OpenRC + AUR + Wine с DXVK/VKD3D + модульный TUI-установщик. Всё это — QuasarLinux, основанный на Artix, но независимый от него.

Читать далее

Умный родительский контроль на MikroTik: Как разрешать доступ в интернет с вашего телефона

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.2K

Стандартные методы родительского контроля часто бывают неудобными: либо вы блокируете всё, кроме пары сайтов, либо тратите кучу времени на ручное ведение "белых списков". Этот метод предлагает элегантное и гибкое решение.

Идея проста: по умолчанию интернет на устройстве ребенка полностью заблокирован. Но как только вы заходите на какой-либо сайт или используете приложение на своем "контрольном" телефоне, его адрес автоматически добавляется в "белый список", и ребенок тут же получает к нему доступ. Вы управляете доступом, просто пользуясь своим телефоном.

Читать далее

Kubernetes 1.29.15 и GPU: как починить пропавшие видеокарты и настроить Time-Slicing

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели14K

В Ситидрайве Kubernetes обновляют регулярно — инфраструктура большая, и актуальность версий критически важна. После апгрейда до версии 1.29.15 один из GPU-узлов внезапно «забыл» о своей видеокарте, и нам пришлось срочно искать решение. В этой статье я расскажу, в чём была причина бага и как Time-Slicing помог повысить утилизацию GPU. Статья будет полезна всем, кто работает с GPU в Kubernetes и хочет избежать подобных сюрпризов в продакшене.

Читать далее

Как мы ускорили ввод новых узлов до 40 секунд: надёжная работа на spot-инстансах в Kubernetes с Karpenter

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7.3K

В нашей практике DevOps мы столкнулись с задачей оптимизации Kubernetes-кластера в AWS, включая перевод нагрузки на ARM64-инстансы с процессорами Graviton и эффективное использование spot-инстансов. Благодаря Amazon EKS и Karpenter нам удалось ускорить ввод новых узлов до всего 40 секунд и успевать переносить нагрузку при отборе узлов со стороны AWS. При этом мы сохранили привычный набор инструментов Deckhouse для мониторинга и управления — статья подробно рассказывает о нашем опыте и решениях.

Читать далее

Система персональных шпаргалок прямо в терминале

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели13K

Привет, Хабр! Часто ли Вы сталкиваетесь с необходимостью искать в закладках/заметках "ту самую" важную, но редко необходимую команду? git log, который Вы не использовали полгода или спасительный docker compose с десятком флагов. Нередко подобный поиск превращается в пятиминутный квест.

В статье напишем функцию cheat, которая дополнит терминал личной "базой знаний" с Вашим личным перечнем команд. Вводим cheat docker - получаем проверенный список команд мгновенно, без поиска в браузере и чтения мануалов.

Читать далее

Какой была бы Всемирная паутина, если бы вместо WWW был Gopher

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели38K

В начале 90-х Всемирная паутина (World Wide Web) вовсе не была единоличным хозяином сети. У неё был серьезный конкурент — протокол Gopher. Как изменилась бы наша цифровая реальность, если бы в конечном счёте он не утратил популярность? В статье расскажу, что такое Gopher, почему он уступил WWW, и каким мог бы стать современный интернет, если бы он развивался на базе этого протокола.

Читать

Я мигрировал свой монорепозиторий на Bun — вот мой честный отзыв

Время на прочтение2 мин
Охват и читатели12K

Недавно я перенёс Intlayer (решение для i18n) — монорепозиторий, состоящий из нескольких приложений (Next.js, Vite, React, design-system и т. д.) — с pnpm на Bun.

Кратко (TL;DR): если бы я знал заранее, я бы, вероятно, не делал этого.
Я думал, что это займёт пару часов. В итоге ушло около 20 часов.

Меня привлекло обещание «всё в одном» и впечатляющие показатели производительности.
Я попробовал, я собрал — всё билдилось молниеносно, круто.
Затем я сделал коммит… и столкнулся с первой проблемой.

Читать далее