Как стать автором
Поиск
Написать публикацию
Обновить
180.27

Серверное администрирование *

Установка, настройка, обслуживание

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

Монтирование и управление LVM-томами на Android Linux Deploy. Часть 2

Время на прочтение6 мин
Количество просмотров3.7K

В этом руководстве мы рассмотрим создание и монтирование LVM томов на рутованном устройстве Android. Это вторая часть моего проекта «Резервный сервер на Android», но она будет на 80% состоять из работы с LVM и лишь на 20% с UrBackup/Linux Deploy. Первая часть доступна здесь.
Читать дальше →

Сравнение производительности ASP.NET Core-проектов на Linux и Windows в службе приложений Azure. Продолжение

Время на прочтение4 мин
Количество просмотров6K
В моём предыдущем материале речь шла о сравнении производительности ASP.NET Core-приложений, запускаемых в Windows и в среде Linux + Docker, работающих в службе приложений Azure. Эта тема интересна многим — поэтому я решил написать продолжение.



Я снова провёл испытания, используя подход, отличающийся от прежнего лучшей воспроизводимостью, такой, который даёт более надёжные результаты. Теперь я генерирую веб-нагрузку на серверы с помощью облачных инструментов Azure Cloud Agents, применяя Visual Studio и VSTS. И, более того, в то время как ранее я выполнял тесты с использованием HTTP, теперь тестирование проводилось с применением HTTPS.
Читать дальше →

Установка Visual Studio Code в облаке

Время на прочтение7 мин
Количество просмотров22K

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

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

Wireguard для Kubernetes и удобные GUI

Время на прочтение4 мин
Количество просмотров26K

Can I just once again state my love for [WireGuard] and hope it gets merged soon? Maybe the code isn't perfect, but I've skimmed it, and compared to the horrors that are OpenVPN and IPSec, it's a work of art.

Linus Torvalds, on the Linux Kernel Mailing List

Уверен, что многие уже слышали про Wireguard. Некоторые даже щупали вживую. Мне он вполне понравился в продакшене как по производительности, так и по простоте настройки. Да, там нет миллиона загадочных конфигураций на все случаи жизни как у OpenVPN и XFRM+StrongSwan в IPSEC VPN. Он прост и лаконичен как в коде, так и в конфигах. Жирным и неповоротливым он станет еще нескоро. Короче, такой позитивный вариант сценария «сжечь легаси и написать все как надо».

Я решил не писать очередной гайд «как я поставил Wireguard», а поделиться некоторыми полезными утилитами. Некоторые с очень удачным, на мой вкус GUI, что уместно для сервисов со множеством пользователей. Разберем использование этого VPN для связи между нодами в разных кластерах Kubernetes, несколько web-GUI для генерации и пару полезных ресурсов.

Разрабатываем самый удобный в мире* интерфейс для просмотра логов

Время на прочтение6 мин
Количество просмотров19K

Если Вам приходилось когда-нибудь пользоваться веб-интерфейсами для просмотра логов, то Вы наверняка замечали, насколько, как правило, эти интерфейсы громоздки и (зачастую) не слишком-то удобны и отзывчивы. К некоторым можно привыкнуть, некоторые совсем ужасны, но, как мне кажется, причина всех проблем заключается в том, что мы неправильно подходим к задаче просмотра логов: мы пытаемся создать веб-интерфейс там, где лучше работает CLI (интерфейс командной строки). Мне лично очень комфортно работать с tail, grep, awk и прочими, и поэтому для меня идеальным интерфейсом для работы с логами было бы что-то аналогичное tail и grep, но которое при этом можно было использовать для чтения логов, которые пришли с множества серверов. То есть, конечно же, читать их из ClickHouse!


*по личному мнению хабрапользователя youROCK

Читать дальше →

Как мы разгребаем зоопарк из 5 размещений в дата-центрах

Время на прочтение9 мин
Количество просмотров11K
Начиналось всё с системника в общаге МГУ и обычного хостинга, на котором размещалось наше расписание электричек, которое многие из вас видели. И перекладывания файлов по ночам, чтобы уложиться в лимиты нагрузки. Потом появились первые сервера. Они получали тройной трафик на майские, отчего сразу ложились. Точнее, мы не знаем, какой трафик они получали, потому что ложились именно на тройном от обычного.



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

Сейчас мы стоим в 4 физически разных ЦОДах, соединённых кольцом тёмной оптики, размещая там 5 независимых пулов ресурсов. И так получилось, что если в одну из кроссовых попадёт метеорит, то у нас тут же отвалится 3 этих пула, а оставшиеся два не потянут нагрузку. Поэтому мы занялись полной ребалансировкой, чтобы навести порядок.
Читать дальше →

Мой опыт работы с Plesk

Время на прочтение6 мин
Количество просмотров5.9K
Хочу поделиться некоторыми впечатлениями о нужности или ненужности такой вещи, как контрольная панель для коммерческого односерверного веб-проекта при наличии очень part time админа. История началась пару лет назад, когда знакомые знакомых попросили меня сопроводить покупку бизнеса — новостного сайта — с технической точки зрения. Нужно было слегка вникнуть, что на чем работает, проследить, чтобы все необходимые реквизиты были переданы в надлежащем виде и объеме, и стратегически прикинуть, что можно улучшить.


Сделка состоялась, скрипач стал не нужен. Конец. На самом деле нет.
Читать дальше →

Проблемы в системе журналирования событий безопасности ОС Windows

Время на прочтение12 мин
Количество просмотров37K


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

Выявленные проблемы проверялись на Windows 7 Максимальная (русская версия), Windows 7 Professional (английская версия), Windows 10 Pro (русская версия), Windows Server 2019 Datacenter (русская версия). Все операционные системы были полностью обновлены.
Читать дальше →

Как выбрать VPS

Время на прочтение9 мин
Количество просмотров11K
О том, зачем нужен и какой бывает веб-хостинг читайте в нашем посте «Хостинг: варианты, сравнения, пользовательская статистика». Здесь же мы сразу перейдём к теме статьи, название которой содержательней любого вступления. 



Конечно, в статье мы будем приводить примеры из своей практики, одновременно рассказывая про услуги RUVDS. Но главная цель поста — дать вам исчерпывающий чек-лист по выбору хостинг-провайдера и настройке конфигурации арендуемого вами виртуального выделенного сервера VPS или VDS.

Первая волна пострадавших от уязвимости Exim. Скрипт для лечения

Время на прочтение5 мин
Количество просмотров22K
Уязвимость с RCE в Exim уже довольно сильно нашумела, и довольно сильно потрепала нервы системным администраторам по всему миру.

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

Работает на серверах с ОС Centos, RHEL, Debian, Ubuntu при наличии установленного почтового сервера Exim.
Читать дальше →

Полное руководство по Prometheus в 2019 году

Время на прочтение11 мин
Количество просмотров383K


DevOps- и SRE-инженеры уже, наверное, не раз слышали о Prometheus.


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


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


Что такое Prometheus?
Зачем он нужен?
Чем он отличается от других систем?


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

Метод CASE: гуманный мониторинг

Время на прочтение8 мин
Количество просмотров7.2K


Дзииииииинь! На часах 3 утра, вы смотрите чудесный сон, и вдруг — звонок. На этой неделе вы дежурите, и, видимо, что-то случилось. Автоматизированная система зовет разобраться, в чем дело. Это важный момент управления современными компьютерными системами, но давайте посмотрим, как сделать уведомления удобнее для людей.


Знакомьтесь с философией мониторинга, родившейся за несколько десятилетий моих дежурств в разных командах по мониторингу. На нее во многом повлияла настоящая библия от Роба Еващука My Philosophy on Alerting (Моя философия уведомлений), включенная в книгу по Google SRE, и книга Джона Олспо Considerations for Alert Design (Замечания по настройке оповещений).


Келли Данн, Ариджит Мукхерьи и Максим Петаццони — спасибо за помощь в редактировании поста.


Что такое CASE?


Я решил придумать красивую аббревиатуру, как у метода USE Брендана Грегга или метода RED Тома Уилки. Я зову это метод CASE. Он описывает четыре момента, на которые нужно обратить внимание при работе с автоматическим мониторингом:

Как удаленка ускоряет инновации на GitLab

Время на прочтение4 мин
Количество просмотров8.1K

На GitLab удаленка — это не бизнес-риск, а конкурентное преимущество.



Я менеджер продуктов на GitLab. Обычно занимаюсь стадией планирования в жизненном цикле DevOps. Я пришел в ноябре 2016 и с тех пор любуюсь, какими семимильными шагами развивается GitLab как продукт и как команда. Многие новички спрашивают меня за кофе о культуре GitLab, особенно об удаленке, ведь мы только так и работаем. Со временем мои взгляды менялись, и я хочу рассказать, почему удаленка кажется мне не препятствием, а конкурентным преимуществом. Во всяком случае, для GitLab.

Читать дальше →

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

Уязвимость runC, затрагивающая Kubernetes, Docker и containerd

Время на прочтение2 мин
Количество просмотров5.5K
Сообщество Linux занято сейчас устранением недавно обнаруженной уязвимости, которая касается средства для запуска контейнеров runC, используемого Docker, CRI-O, containerd и Kubernetes.

image

Уязвимость, получившая идентификационный номер CVE-2019-5736, даёт заражённому контейнеру возможность перезаписать исполняемый файл runC на хосте и получить к нему root-доступ. Это позволяет такому контейнеру получить контроль над хостом и даёт атакующему возможность выполнять любые команды.
Читать дальше →

Glusterfs + erasure coding: когда надо много, дешево и надежно

Время на прочтение8 мин
Количество просмотров15K
Гластер в России мало у кого есть, и любой опыт интересен. У нас он большой и промышленный и, судя по дискуссии в прошлом посте, востребованный. Я рассказывал о самом начале опыта переноса бекапов с Enterprise хранилища на Glusterfs.

Это недостаточно хардкорно. Мы не остановились и решили собрать что-то более серьёзное. Поэтому здесь речь пойдёт о таких вещах, как erasure coding, шардинг, ребалансировка и её троттлинг, нагрузочное тестирование и так далее.



  • Больше теории волюмы/сабволюмы
  • hot spare
  • heal / heal full / rebalance
  • Выводы после ребута 3 нод (никогда так не делайте)
  • Как влияет на нагрузку сабволюма запись с разной скоростью от разных ВМ и shard on/off
  • rebalance после вылета диска
  • fast rebalance

Читать дальше →

Resolve IP адресов в Linux: понятное и детальное описание

Время на прочтение12 мин
Количество просмотров138K

Настройка сетевого взаимодействия сервисов не самая простая задача и часто осуществляется без глубокого понимания как требуется настраивать систему и какие настройки на что влияют. После миграции сервисов в docker контейнерах с centos 6 на centos 7 я столкнулся со странным поведением вебсервера: он пытался присоединиться к сервису по IPv6, а сервис же слушал только IPv4 адрес. Стандартный совет в такой ситуации — отключить поддержку IPv6. Но это не поможет в ряде случаев. Каких? В этой статье я задался целью собрать и детально объяснить как приложения resolve'ят адреса.

Читать дальше →

Пара историй про RAID’ерский беспредел

Время на прочтение4 мин
Количество просмотров17K


В эфире продолжение нашей пятничной рубрики про сбои, отказы и прочие факапы. Если пропустили наши предыдущие рассказы, то вот ссылки: один, два, три. А сегодня мы расскажем про неприятности с RAID в одном «маленьком, но гордом» ЦОДе.
Читать дальше →

Грабли при переездах на виртуальную платформу с физического железа

Время на прочтение6 мин
Количество просмотров15K


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

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

Вот, например, база данных размещается на 7K-дисках и на слабой виртуальной машине. Почему так? Потому что нужную производительность оценили в среднем. А в реальном бизнесе среднего не бывает: обычно это цепочка мелких пиков между практическим отсутствием нагрузки. У магазинов ночью мало что происходит, у НИИ — между длинными расчётами.

Расскажу чуть больше про типичные ситуации.
Читать дальше →

Кармическая несовместимость и прочие превратности судьбы сервисного инженера

Время на прочтение4 мин
Количество просмотров11K


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

TeamCity 2017.2: 100 бесплатных билд конфигураций, Docker, .NET CLI, композитные билды и улучшения в Kotlin DSL

Время на прочтение4 мин
Количество просмотров15K
Привет, Хабр! На прошлой неделе мы выпустили новую версию нашего CI и CD сервера: TeamCity 2017.2! Как вы, наверняка, поняли из заголовка, она полна не только новой функциональностью, но и преподнесет приятный сюрприз тем, кто пользуется бесплатной (Professional) версией. Но обо всем по порядку.

Прежде всего, список всех улучшений, как всегда, очень внушительный – ознакомьтесь с ним после прочтения этого поста, если захотите подробностей. Здесь же мы остановимся на самых “вкусных” фичах последнего релиза.

TeamCity 2017.2 released

100 билд конфигураций


После обновления до версии 2017.2 все пользователи TeamCity Professional будут приятно удивлены — вместо стандартных 20 билд-конфигураций TeamCity теперь предоставляет 100! Это доступно абсолютно бесплатно каждому пользователю версии 2017.2. Никаких подводных камней. Для не знакомых с терминологией, билд-конфигурация (build configuration) в TeamCity – это то же самое, что и job в терминах Jenkins.
Читать дальше →

Вклад авторов