Открыть список
Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Работа с виртуальными машинами KVM. Введение

Виртуализация
Как и обещал, начинаю серию статей о том, как мы делали услугу аренды выделенных серверов на базе KVM.

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

Читать дальше →
Всего голосов 45: ↑43 и ↓2 +41
Просмотры71.8K
Комментарии 38

Работа с виртуальными машинами KVM. Лимитирование ресурсов виртуальной машины

Виртуализация


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

Читать дальше →
Всего голосов 42: ↑39 и ↓3 +36
Просмотры26.4K
Комментарии 14

локальная компиляция без лагов

Программирование
Abstract: использование cgroups для ограничения прожорливости компилятора по процессору и диску.

Лирика


Дано:
программист 1шт,
ноутбук с ноутбучным диском на 5200 rpm — 1шт,
исходных файлов на хаскеле 300 шт
Файлы coffee-script (будущий JS) — 300 шт
время компиляции — 40 минут.

Задача: компилировать в бэкграунде не ставя всю систему в состояние «ад и погибель». Можно даже ценой увеличения времени сборки до 50-60 минут.

Решение?

cgroups

Читать дальше →
Всего голосов 64: ↑51 и ↓13 +38
Просмотры8.1K
Комментарии 19

Контейнеризация на Linux в деталях — LXC и OpenVZ. Часть 1

Блог компании FASTVPS LLC
Всем привет!

В прошлой статье мы начали разговор о преимуществах контейнерной изоляции (контейнеризации), теперь мне бы хотелось углубится в технические аспекты реализации контейнеров.


Читать дальше →
Всего голосов 48: ↑44 и ↓4 +40
Просмотры38.5K
Комментарии 159

Kill switch для OpenVPN на основе iptables

Информационная безопасность
Tutorial
Известно, что при подключении к открытым Wi-Fi сетям ваш трафик может быть легко прослушан. Конечно, сейчас всё больше и больше сайтов используют HTTPS. Тем не менее, это ещё далеко не 100%. Возникает естественное желание обезопасить свой трафик при подключении к таким открытым Wi-Fi сетям.

Популярное решение этой проблемы — подключение через VPN. В таком случае ваш трафик передается в зашифрованном виде до VPN-сервера, и уже оттуда идет в интернет.

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

В этой статье я расскажу, как можно этого избежать.

Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Просмотры26.2K
Комментарии 12

Механизмы контейнеризации: cgroups

Блог компании Selectel
Tutorial
механизмы контейнеризации

Продолжаем цикл статей о механизмах контейнеризации. В прошлый раз мы говорили об изоляции процессов с помощью механизма «пространств имён» (namespaces). Но для контейнеризации одной лишь изоляции ресурсов недостаточно. Если мы запускаем какое-либо приложение в изолированном окружении, мы должны быть уверены в том, что этому приложению выделено достаточно ресурсов и что оно не будет потреблять лишние ресурсы, нарушая тем самым работу остальной системы. Для решения этой задачи в ядре Linux имеется специальный механизм — cgroups (сокращение от control groups, контрольные группы). О нём мы расскажем в сегодняшней статье.
Читать дальше →
Всего голосов 26: ↑24 и ↓2 +22
Просмотры52.2K
Комментарии 4

DevOps придумали разработчики, чтобы админы больше работали

Блог компании okmeter.ioНастройка LinuxСистемное администрированиеОблачные вычисления

Еще 4 года назад использование контейнеров в production было экзотикой, но сейчас это уже норма как для маленьких компаний, так и для больших корпораций. Давайте попробуем посмотреть на всю эту историю с devops/контейнерами/микросервисами ретроспективно, взглянуть еще раз свежим взглядом на то, какие задачи мы изначально пытались решить, какие решения у нас есть сейчас и чего не хватает для полного счастья?


Я буду в большей степени рассуждать про production окружение, так как основную массу нерешенных проблем я вижу именно там.

Читать дальше →
Всего голосов 95: ↑91 и ↓4 +87
Просмотры41.1K
Комментарии 62

Открытый вебинар «Механизмы контейнеризации Linux»

Блог компании OTUSНастройка LinuxСистемное администрирование
Всем привет!

Делимся новым открытым уроком, который провёл Александр Румянцев — преподаватель курса «Администратор Linux». На вебинаре разбиралось современное состояние механизмов контейнеризации и контейнеризация cgroups и cgroups-based, как она реализована в ядре, что такое namespace и почему cgroups — это группы.


Ждём комментарии и вопросы тут или можете задать их преподавателям сегодня на дне открытых дверей.
Всего голосов 23: ↑21 и ↓2 +19
Просмотры5.6K
Комментарии 1

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

Настройка LinuxСистемное программированиеСетевые технологииОтладкаРазработка под Linux

Продолжаем серию статей про BPF — универсальную виртуальную машину ядра Linux — и в этом выпуске расскажем о том, какие типы программ BPF существуют, и как они используются в реальном мире капиталистического чистогана. Кроме этого, в конце статьи приведено некоторое количество ссылок, в частности, на две с половиной существующие книжки про BPF.


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


Если вы хотите узнать, как именно BPF помогает эффективно решать задачи защиты от DDoS атак, распределения нагрузки на серверы, реализации сетевого стека kubernetes, защиты систем от нападения, эффективной трассировки систем 24x7 прямо в проде и многие другие, то добро пожаловать под кат.


image

Читать дальше →
Всего голосов 31: ↑31 и ↓0 +31
Просмотры4.9K
Комментарии 8

Определение состояния Memory Pressure в Linux

Системное программирование*nixРазработка под Linux

Memory pressure -- это состояние, когда системе не хватает свободной памяти. Обычно его разделяют на moderate и critical. Moderate -- это когда памяти "мало, но пока еще жить можно", и дальнейшие выделения памяти могут вызвать проблемы с отзывчивостью из-за активной работы со swap-файлов или сбросов системных буферов и кэшей. Critical -- этап уже более серьезный, означающий "еще чуть-чуть, придет OOM-killer и начнет убивать процессы".

"Для чего нам это знать и контролировать?" -- на этот вопрос ответ будет в зависимости от того, что именно вы разрабатываете. Известный всем браузер Chromium (на котором основан Google Chrome), например, придерживается тактики "используем всю доступную память": если что-то можно забуферизовать и закэшировать в ОЗУ для ускорения работы, оно обязательно будет сделано. Зато при наступлении moderate memory pressure кэши и буферы очищаются, чтобы освободить пространство для работы других приложений, а при наступлении critical memory pressure браузер начинает выгружать фоновые вкладки, чтобы не допустить активации OOM-киллера.

Итак, поехали.
Всего голосов 32: ↑32 и ↓0 +32
Просмотры8.9K
Комментарии 12