CloudLinux — разделяй и властвуй

    CloudLinux

    Одной из наиболее распространенных хостинговых услуг является так называемый виртуальный хостинг (англ. shared hosting), при котором множество веб-сайтов располагаются на одном сервере. Обычно каждый сайт занимает отдельную папку на сервере, но при этом для управления всем множеством сайтов используется единое ПО (веб-сервер, сервер баз данных и т.п.).

    Shared hosting сопряжен с некоторыми техническими проблемами. Довольно часто имеет место ситуация, когда увеличение потребления ресурсов одним пользователем становится причиной замедления работы или даже недоступности всего сервера. Описанную проблему иногда называют «проблемой плохого соседа».

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

    В чем заключаются преимущества использования CloudLinux?


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

    Какие технологии лежат в основе CloudLinux?


    Разграничение ресурсов между пользователями осуществляется с помощью технологии LVE (Lightweight Virtual Environment). Она обеспечивает полную изоляцию процессов (приложений) каждого пользователя от других. Кроме того, для каждого пользователя можно установить следующие ограничения:
    • на потребление мощности процессора;
    • на ограничение числа используемых процессорных ядер;
    • на использование физической памяти;
    • на использование виртуальной памяти;
    • на скорость дискового ввода-вывода;
    • на количество одновременно выполняемых процессов;
    • на создание новых процессов.


    Помимо LVE CloudLinux включает в себя и другие инструменты для контроля над пользовтелями и ресурсами сервера.
    Инструмент MySQL Governor позволяет контролировать и ограничивать использование общего для всех пользоветелей MySQL сервера баз данных. С его помощью можно создать своего рода «облачный MySQL», который несколько пользователей могут использовать одновременно, не мешая друг другу.

    Инструмент CageFS (слово cage значит «клетка») создает для каждого пользователя свою собственную, изолированную от других пользователей и корневой ФС, виртуальную файловую систему. Это позволяет ограничить доступ процессов одного пользователя к данным других пользователей и самого сервера.

    Если вы являетесь клиентом хостинг-провайдера, вы можете проверить, использует ли он CloudLinux, выполнив команду uname -a. На экран будут выведены название и версия ядра. Если в этом названии присутствуют буквы «lve», то ваш провайдер с большой долей вероятности использует CloudLinux.

    $ uname -a
    Linux testsrv.selectel.ru 2.6.32-458.6.2.lve1.2.30.el6.x86_64 #1 SMP Fri Jul 12 15:02:22 EEST 2013 x86_64 x86_64 x86_64 GNU/Linux
    


    Способы работы с CloudLinux


    Изначально CloudLinux управляется с помощью интерфейса командной строки. Если вы предпочитаете использовать графический интерфейс (GUI), то систему можно интегрировать с такими панелями управления хостингом, как cPanel, Parallels Plesk, DirectAdmin, ISPManager, Webmin, Interworx. Никакой дополнительной настройки при этом не требуется.

    Посмотреть, как выглядит интеграция с панелью управления на примере Plesk Panel, можно на скриншотах приведенных в спойлере.

    Скриншоты
    После установки CloudLinux в списке плагинов Plesk появятся два плагина LVE Manager и CageFS
    После установки CloudLinux в списке плагинов Plesk появятся два плагина LVE Manager и CageFS.

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

    Настройки ограничений клиентов в LVE Manager. Ограничения пользователя могут наследоваться от его сервис-плана или могут быть настроены индивидуально для каждого пользователя
    Настройки ограничений клиентов в LVE Manager. Ограничения пользователя могут наследоваться от его сервис-плана или могут быть настроены индивидуально для каждого пользователя.

    Текущая нагрузка по клиентам в LVE Manager
    Текущая нагрузка по клиентам в LVE Manager.

    Вкладка Packages (сервис-планы с терминологии Plesk) - пример интеграции тарифных планов в панели управления с ограничениями в LVE Manager
    Вкладка Packages (сервис-планы с терминологии Plesk) — пример интеграции тарифных планов в панели управления с ограничениями в LVE Manager.

    Управление ограничениями для сервис-плана. Эти ограничения применятся для всех пользователей с таким сервис-планом
    Управление ограничениями для сервис-плана. Эти ограничения применятся для всех пользователей с таким сервис-планом.


    Сколько стоит CloudLinux?


    Селектел является официальным партнером CloudLinux, аренда лицензии доступна для выделенных серверов и серверов произвольной конфигурации по цене 400 руб/мес.

    Услуга аренды лицензии CloudLinux отлично дополняет уже существующие наши услуги для организации хостинга: аренда выделенных серверов и аренда лицензий Parallels.

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

    Для тех кто не может комментировать посты на Хабре, но хотел бы узнать больше о CloudLinux, приглашаем к нам в блог.
    Селектел 149,13
    Компания
    Поделиться публикацией
    Похожие публикации
    Комментарии 12
    • +3
      CL пока довольно сыр для использования в продакшене.
      Вот прежде всего из-за таких историй (http://forums.cpanel.net/f391/server-hangs-253991.html), на дату публикации можно не смотреть, багофичи остались. При использовании лимитов система очень сильно теряет в стабильности(но выигрывает в безопасности, ага).
      • +3
        Во время тестирования мы тоже столкнулись с небольшими багами. Однако, подержка приятно удивила, воркэраунды были предоставлены в тот же день, а баги были пофикшены и выпущены в бета релизах в течение недели-двух (часть уже в стэйбле). Опять же вся поддержка на русском языке, что особенно важно при разборе сложных или/и срочных проблем.
        Лично я остался очень доволен от общения с ребятами из CloudLinux.
        • 0
          Вам как-то очень везёт… Может потому что для ISP поддержка другого уровня?
          • 0
            К сожалению, мне не известна система приоритезации тикетов в их техподдржке. Возможно, мы просто отправляли очень подробные багрепорты, и сами баги были просты для локализации и исправления.
      • +1
        Одним из оптимальных решений описанной выше задачи является использование пряморукого персонала, знакомого с KVM / OpenVZ.
        Fixed!
        • +3
          Допустим, у вас самый обычный шаред. Расскажите как вы будете пытаться относительно честно резать ресурсы? Аккаунтинг «по факту», когда отдельный аккаунт уже всё положил, а задача найти виноватого не рассматриваем.
          Интересует решение, аналогично CL. Для шареда.
          • НЛО прилетело и опубликовало эту надпись здесь
            • 0
              Я прекрасно знаком с cPanel, это уже решение «по факту».
              Вы можете резать кол-во процессов, процессы по памяти. но это не решает проблему.
        • +1
          Ещё есть betterlinux (и пока всё ещё бесплатный, хотя обещали сделать платным ещё с начала года), но он тоже ещё сырой.
          • 0
            Я вот одного не понимаю, почему оно содержит Cloud в названии, ведь облака — это же объединение многих машин в одну вычислительную среду и распределение нагрузки между ними, а тут наоборот — разделение одной машины на несколько сред. Как по мне, так это название — тупо нечестный маркетинг, вводящий Людей в заблуждение, на самом деле это прямо таки AntiCloudLinux ))
            Заметте — они решают проблему избыточной нагрузки не масштабированием, а лимитированием — это же совсем не облачный подход
            • 0
              Всё верно. Вы строите единую облачную систему, а лимитирование контейнеров необходимо для разделения ресурсов серверов между различными клиентами.
            • 0
              3 года прошло а все тот же багодром, периодичеки встает таким «клешнеруким животным» что хоть вешайся… уже сил нет никаких терпеть эти глюки, то поддержка говрит вот мы новое ядро выкатили там все устранили, тут опять по новой куча 500-х у юзеров с ошибкой:

              SoftException in Application.cpp CageFS jail error Error while executing /usr/sbin/lve_root_setup


              при попытке все это дело реинитнуть через cagefsctl все вообще умерло, при попытке вообещ выключить --disablecagefs севрак засыпал консоль

              Message from syslogd@srv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#21 stuck for 23s! [httpd:838352]

              Message from syslogd@srv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#22 stuck for 23s! [php:839591]

              Message from syslogd@ssrv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#23 stuck for 23s! [php:839577]

              Message from syslogd@srv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#2 stuck for 22s! [lve_init_thread:939]

              Message from syslogd@srv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#3 stuck for 22s! [exim:839248]

              Message from syslogd@srv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#4 stuck for 22s! [exim:838685]

              Message from syslogd@srv1 at Apr 7 18:36:12 ...
              kernel:BUG: soft lockup - CPU#5 stuck for 22s! [php:839578]


              И опять умер… седой станешь в продакшен с такими багами

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

              Самое читаемое