Обновить

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

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

Что модемная эпоха дала современным протоколам и нашим привычкам

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

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

Читать

Аварийные учения в Kubernetes: выключили часть нод и проверили, переживут ли это сервисы

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

Многие уверены, что если сервис поднят в кластере — значит, он защищён от любых потрясений инфраструктуры, и, если что-то случится, Kubernetes "сам всё поднимет". Но на деле есть нюанс. Реальная устойчивость и грамотный disaster recovery появляются только на стыке платформы, клиентской логики и конфигурации сервисов. А обнаружить узкие места возможно только во время инцидентов или плановых аварийных учений. Так мы и поступили: выключили 30% нод в production кластере и посмотрели, что будет.

В статье разберём — почему именно 30%, какие сбои и узкие места всплыли в ходе учений, а также какие сделали выводы и мы, как команда Kubernetes, и прикладные команды.

Читать далее

Настройка личных серверов через Docker Compose

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

В январе 2023 мне пришла в голову идея: а почему бы не управлять своими серверами так же, как я управляю своими проектами — через docker compose up.
Довольно быстро стало понятно, что до меня в эту сторону массово не ходили, если кто так уже делает, то делает это молча… т.е. на все детские грабли на этом пути мне придётся наступить лично.
А вот вам повезло: если тоже захотите пойти в эту сторону, то у вас уже есть и эта статья и пример конкретной реализации.

Кому этот подход может подойти? Тут должны сойтись звёзды несколько факторов:

● Нужно быть программистом, хорошо знакомым с docker-compose.yml.
● Нужно иметь 1-5 личных серверов — не важно, дома или на обычном/облачном хостинге, настоящий ли это сервер или свой десктоп/ноут, выполняющий заодно и функции «сервера».
● Нужно иметь достаточно опыта настройки этих серверов вручную по ситуации, чтобы появилось понимание недостатков этого подхода и желание внедрить IaC (перенести конфигурацию серверов в git и сделать её легко воспроизводимой).
● Но главное — нужно не быть админом, которому Ansible привычнее. 😄

Читать далее

Горячие клавиши Claude Code: полный разбор

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

Разбираем все горячие клавиши Claude Code — что делает каждая, когда нажимать и где подвох. Этот AI-ассистент работает прямо в командной строке и напичкан сочетаниями, о которых большинство пользователей даже не подозревает. Двойной Escape откатывает изменения в коде, Ctrl+B отправляет задачу в фон, а Shift+Tab переключает режим работы на лету. Мы разобрали каждую клавишу до винтика: в каком сценарии пригодится, где конфликтует с tmux или браузером и как переназначить под себя.

Читать далее

Linux + видеокарты AMD в играх оказались лучше Windows 11. Как такое вообще возможно

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

Когда-то фраза «игры на линуксе» звучала примерно как «рыбалка в ванне». Технически, наверное, реализуемо, но зачем - непонятно. Тем более что Linux всегда был системой для серверов, разработчиков и бородатых сисадминов, которые считали компиляцию ядра формой медитации. Но последние опыты показали, что считать геймерской ОС исключительно Windows по меньшей мере неправильно. Потому что в играх и на некоторых конфигурациях пингвин показал себя гораздо лучше.

Читать далее

Как в Авито построили систему мониторинга BGP

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

Всем привет! Меня зовут Антон Ильичев, я сетевой инженер в Авито. В этой статье расскажу, зачем мы централизованно собираем и анализируем маршрутную информацию с сетевых устройств, причём тут протокол BMP и как устроена наша система мониторинга. В конце вас будет ждать лаба на docker-compose, которую вы можете запустить у себя и посмотреть на систему в действии.

Статья будет полезна в первую очередь сетевым инженерам, командам SRE и мониторинга, которые отвечают за доступность и качество сервиса.

Читать далее

Хаос в объектах: испытания Garage и SeaweedFS

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

С конца 2025 года известная многим, кто работает с object storage, система Minio начала издавать тревожные сигналы: разработчики полностью перестали принимать новые правки, прекратили обновлять Docker образ, убрали веб-интерфейс из опенсорсной версии, а с 13 февраля проект на GitHub полностью заморожен и стал архивом. Можно провести связь с покупкой Broadcom компании VMware, которой и принадлежит Minio, и последующим выжиманием денег из клиентов.

Но мы не будем строить теории, есть вопрос интереснее: кто убережёт наши объекты, если не Minio? Давайте попробуем узнать на примере Garage и SeaweedFS. Мы будем бросать эти системы об стену, и смотреть, что получится на выходе. Так работает chaos testing. Наверное.

Читать далее

Как мы провели «пересадку сердца» у бегущего марафон, миграция 50 000 АРМ с ALSE 1.7 на 1.8 через Ansible без простоя

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

Привет, Хабр. Я Александр Габидуллин, старший инженер внедрения в Группе Астра. Основная часть моей работы — автоматизация установки и разворачивания наших продуктов. Нередко заказчик ставит задачу, для которой нет готового «коробочного» решения — тогда я создаю своё.

Один из таких случаев — обновление парка из десятков тысяч рабочих станций с ALSE 1.7 на 1.8 без остановки бизнес-процессов.

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

В этой статье я расскажу, как мы создали Ansible-коллекцию, которая превратила рутинное обновление в промышленный процесс с 98.2% успешных запусков с первого раза.

Провести обновление тут...

Настройка Telegram MTProxy на 443 порту параллельно с работающим nginx

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

Если такой туториал уже был на Хабре — не вините строго, я не нашел, и мне, на удивление, понадобился большой бубен и пол дня чтобы настроить сабж.

Вводные:

1) у вас есть крохотная виртуалка на которой крутится nginx и пара сайтов. Конечно https и скорее всего let's encrypt — короче стандартный набор рядового девелопера.

2) вы бы хотели поднять телеграм-прокси, но так чтобы трафик на него был максимально похож на обычный https, а это значит 443 порт — но вы хотите чтобы nginx и ваши сайты продолжили работать как и раньше.

Если это про вас и для вас — вот объяснение механизма и небольшой туториал.

Читать далее

Как подружить .htaccess файл для популярных CMS с Nginx

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

Начну с небольшого вступления: зачем вообще нужен .htaccess файл?

.htaccess — это конфигурационный файл, который использует веб‑сервер Apache для задания специфических настроек для каждой отдельной папки сайта. Благодаря ему можно:

Читать далее

Как я проектирую OLTP-БД с нуля: принципы, trade-off'ы и архитектурные решения

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

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

В этой статье я открываю капот своей OLTP-базы данных, которую пишу с нуля на Rust.

Это не обзор готового коробочного решения, а честный рассказ про инжиниринг на раннем этапе. Я покажу, как абстрактные идеи вроде «fail-closed контрактов» превращаются в работающий код, почему я выбрал UNDO-log MVCC вместо Multi-version Heap и зачем всё это упаковывается в PostgreSQL-wire протокол. Архитектура ещё подвижна, и сейчас — лучшее время, чтобы обсудить её с теми, кто каждый день эксплуатирует БД в продакшене.

Заглянуть под капот движка

NSFW фильтр на основе большой языковой модели

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

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

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

Читать далее

24 контейнера на VPS за $30/мес: как я заменил облака одним сервером

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

24 контейнера на одном VPS за $30/мес: Elasticsearch, Redis, MySQL, nginx, headless Chrome, llama.cpp и еще 18 сервисов. Реальные docker-compose файлы, конфиги nginx, потребление RAM каждого контейнера и честный список того, что не работает. Сравнение стоимости с managed-сервисами в облаке.

Читать далее

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

Конференц-зал на минималках

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

Глядя на свои места работы и как организуются в них конференц-залы, понимаешь: сделаны они довольно топорно. Нет, я собрал не один зал, но это были богатые и не очень варианты. Многие фирмы не придают им значения из соображений экономии: обращаться к системному интегратору дорого, поэтому пусть будет как есть: телевизор и ноутбук. Интеграторы, действительно, мало не возьмут, за маленький проект не возьмутся, а сидеть у телевизора компанией из 20 человек и «ловить» микрофон – такое себе занятие.

И эта статья адресована в первую очередь сисадминам и техническим директорам небольших компаний, филиалов, где необходимо проводить брифинги, круглые столы, обучение сотрудников, но при этом денег на серьёзное оборудование выделять не охота. К сожалению, даже богатые компании не готовы на такие траты. И, если ваш зал не вмещает больше 30 человек, размером 6х12 м максимум, то вы подчерпнёте много интересных моментов.

Многие мои советы могут показаться абсурдными, но они пришли от опыта, который, как известно, сын ошибок трудных. И я сразу прошу любителей поспорить на тему «У меня всё нормально работает и без этого» придержать свои кейсы. Часто это «парадокс выжившего».

Если кратенько, то принципиальная схема зала будет выглядеть примерно так:

Схемки и советики

Citrix: как протокол из 90-х стал частью инфраструктуры, от которой не отказаться

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

Есть технологии, которые выбирают. А есть те, от которых уже не отказаться. Citrix — из второй категории. Он не побеждал в обзорах и не захватывал рынок агрессивным маркетингом. Он врастал в корпоративную инфраструктуру годами — тихо, глубоко и, по ощущениям многих ИТ-директоров, необратимо.

Банк с пятьюдесятью тысячами сотрудников обсуждает удалённый доступ — обсуждение начинается с Citrix. Фармацевтическая компания строит систему для клинических испытаний в двадцати странах — архитектор рисует схему с Citrix в центре. Государственное ведомство требует, чтобы данные не покидали периметр, но доступ был из любой точки — опять Citrix.

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

Читать далее

История одного Ransomware или как я спасал бизнес

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

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

Все началось с утреннего звонка коллеги - не может подключиться к корп сети через VPN, не проходит соединение. Ок, открываю Cisco AnyConnect, пытаюсь соединиться иии, действительно. Выдает какую-то ошибку (уже не помню какую), но при этом IP пингуется и я могу подключиться к циске через ASDM. Странно, конечно. Штош, придется ехать в серверную и смотреть на месте. Неспешно собираюсь, а в это время начинают поступать все новые звонки и сообщения. Возникает нехорошее предчувствие. Доезжаю до серверной, жму кнопочку на KVM, вижу работающий TS. Логинюсь на него и на рабочем столе вижу файл Your_files_have_been_encrypted.html

Я. Понял. Сразу. Все.

Достаю телефон, звоню генеральному и спокойно говорю: «Нас взломали». Все, точка невозврата. Начинается приключение.

Читать далее

Основы системного администрирования Linux: от командной строки до веб-сервера

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

Меня периодически спрашивают — как стать системным администратором? С чего начать изучать эти ваши линуксы?

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

А потом я подумал — это же про линукс. Здесь, когда какая-то утилита тебя не устраивает, ты пишешь yet another tool.

Поэтому я взял и написал книгу.

Это буквально для тех, кто делает (или собирается делать) самые первые шаги.
Начиная от "как пользоваться консолью", заканчивая базовым CI (Что? Да!).

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

Книга в markdown, готовый pdf в релизе.
https://github.com/strannick-ru/linux-book/

Читать далее

ocservice — bash инструмент для управления ocserv VPN сервером

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

Предыстория

У вас конечно же нет VPN сервера ocserv, но возможно у какого-то абсолютно незнакомого человека он есть — с десятками, а может сотней пользователей. И этот незнакомый человек наверняка знает эту боль: каждый раз при добавлении нового клиента нужно вспоминать команды, лезть в документацию, не забыть обновить CRL, правильно экспортировать .p12. Когда этот гипотетический человек в очередной раз забыл флаг --legacy в openssl и получил нечитаемый файл сертификата — он вероятно захотел бы какое-нибудь автоматизированное решение.

Я написал набор bash скриптов для этого человека, чтобы автоматизировать рутину. Скрипт изначально создавался именно под связку ocserv + easy-rsa, поэтому глубоко интегрирован с её структурой PKI. Потом я решил привести код в порядок и выложить — вдруг найдутся ещё люди, которым он пригодится.

Что такое ocservice

Я смотрел существующие решения — нашёл несколько репозиториев на GitHub, но все они заброшены 2-4 года назад и работают только с логин/пароль авторизацией через ocpasswd. Сертификаты не поддерживает никто. Есть популярный проект с веб-интерфейсом, но это совсем другая история: Docker, отдельный порт, база данных, и всё равно только логин/пароль без easy-rsa. Если вам нужно просто управлять пользователями прямо на сервере без дополнительной инфраструктуры — это избыточно.

ocservice — это набор интерактивных bash скриптов для управления ocserv прямо из командной строки. Никакого Docker, никаких веб-серверов и баз данных — только bash и стандартные инструменты которые уже есть на сервере. Главная особенность — полная интеграция с easy-rsa: создание сертификатов, экспорт в .p12, отзыв и обновление CRL всё это делается в несколько нажатий.

Читать далее

Как считать стоимость CPU, RAM и Storage во внутренней инфраструктуре (часть 2 из 5)

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

Меня зовут Дмитрий, я руковожу отделом ИТ-инфраструктуры и сервисов в Ви.Tech, IT-дочке ВсеИнструменты.ру. Когда у компании одновременно есть свои датацентры, частное облако и несколько публичных облаков, вопрос стоимости вычислительных ресурсов быстро перестает быть бухгалтерской формальностью. Без понятной модели невозможно нормально распределять затраты, сравнивать варианты размещения и объяснять, почему одна и та же виртуальная машина в разных контурах обходится по-разному.

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

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

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

Поэтому дальше я сосредоточусь именно на частных системах виртуализации и на простом примере покажу, как посчитать стоимость 1 ядра CPU и 1 GB RAM.

Для простоты будем считать, что кластер виртуализации состоит из однотипных серверов. Допустим, в каждом сервере установлены 2 CPU по 64 ядра и 1024 GB RAM. Тогда стоимость сервера складывается из стоимости памяти, стоимости процессоров и стоимости платформы, куда входит все остальное: сетевые карты, материнская плата, корпус, блоки питания и прочие компоненты.

Читать далее

Практика FinOps и ITFM: как считать, распределять и планировать ИТ-расходы (часть 1 из 5)

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

Меня зовут Дмитрий, я руковожу отделом ИТ-инфраструктуры и сервисов в Ви.Tech, IT-дочке ВсеИнструменты.ру. Когда в компании одновременно есть локальная инфраструктура, облако, общие платформенные сервисы и выделенные ресурсы под продукты, считать ИТ-расходы "в среднем по больнице" уже не получается. Мы пришли к модели, в которой у каждого ресурса есть понятные метки, владелец и правило аллокации. В этой части разберу, с чего такая модель вообще начинается.

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

FinOps и ITFM в этой логике не спорят друг с другом, а закрывают разные части одной задачи. FinOps помогает навести порядок в потреблении и расходах, особенно в облаке. ITFM дает более широкую рамку: как связать ресурсы, бюджеты, внутренние сервисы и центры ответственности.

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

Читать далее