Организация Хостинга

Материал из ISPWiki
Перейти к: навигация, поиск

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

Статья актуальна на ноябрь 2015 года

Шаг 1. Выбор направления

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

С чего начать? Выбор за вами:

  • Виртуальный хостинг у разных компаний стоит в среднем дешевле, чем VDS. При этом, если вашим клиентам нужно только размещать на нем сайт, этот вариант для них будет идеальным
  • VDS подойдет для требовательного пользователя и стоит дороже. Но для старта в таком случае понадобится больше средств
  • На одном и том же оборудовании всегда можно создать больше услуг shared hosting, чем VDS
  • Для того чтобы продавать выделенные серверы, нужно больше всего средств, но такая услуга подойдет самым требовательным клиентам. Многие высоконагруженные проекты требуют переноса сервиса с локальных серверов в "облако"

Шаг 2. Выбор оборудования

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

  • свой домен (например, TheCompany.ru ) и сайт-витрина
  • биллинговая система

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

Для установки биллинга вам понадобится

  • Сервер - виртуальный или выделенный. Для старта рекомендуем использовать VDS, т.к. это дешевле и его проще масштабировать. Также вы сможете перенести ваш биллинг на выделенный сервер, если ресурсов будет не хватать. Для начала рекомендуем использовать VDS с виртуализацией KVM, 2 Гб оперативной памяти, 50 Гб жесткого диска
  • SSL Сертификат - необходимое условие, т.к. вы будете принимать оплату
    • Рекомендуем использовать для биллинга домен вида bill.thecompany.ru - это позволит клиентам четко понимать, что они находятся в личном кабинете. Также при использовании простого поддомена вам будет удобно отправлять клиентов в личный кабинет по телефону.
    • Рекомендуем использовать Wildcard сертификат - это позволит для всех ваших серверов использовать один и тот же сертификат

Виртуальный хостинг

Вам понадобится выделенный сервер. Для старта подойдет простой сервер, например: E3-1231v3 \ 8 Гб оперативной памяти \ Диск SATAx2000Гб

Хостинг VDS

Вам понадобится

  • Выделенный сервер с поддержкой аппаратной виртуализации. Например, на процессоре Intel Xeon E5. Сервер E5-2630v2 \ 64Гб RAM позволит запустить до 55 VDS. Тут нужно учитывать, что оперативной памяти нужно столько, сколько вы выделите для VDS.
  • Своя подсеть IPv4 адресов или несколько разных IPv4 адресов, чтобы выделять их виртуальным серверам

Хостинг выделенных серверов

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

Однако этот сервер должен находится в одном ДЦ с вашими серверами

Самое основное - понадобятся выделенные сервера. Их можно

  • либо заказывать по одному у других продавцов выделенных серверов (тогда управлять ими будет ваш биллинг и не потребуется отдельная панель)
  • либо приобрести
    • сервера с поддержкой удаленного управления (IPMI\iLo\DRAC и т.д.)
    • место в стойке в дата-центре
    • управляемый коммутатор

Шаг 3. Выбор ПО

Для управления серверами и автоматизации всех процессов потребуется специализированное программное обеспечение

В данной статье мы будем использовать ПО ISPsystem. Чтобы заказать лицензию на перечисленные ниже продукты, зарегистрируйтесь на https://my.ispsystem.com/ Затем на главной странице нажмите "Заказать услугу"

Организация Хостинга order.png

Для всего ПО у ISPsystem есть бесплатные версии, при этом

  • у ISPmanager функционал ничем не ограничен. Панель бесплатна на две недели для любого IP, который еще не получал бесплатную лицензию. Проверить можно здесь
  • у остальных панелей есть ограничения по количеству чего-то, но не по продолжительности использования. Например, для BILLmanager - можно добавить только 50 клиентов, но в остальном панель ничем не отличается от платной

Общее ПО, для любого направления

В независимости от того, какое направление в предоставлении услуг вы выберете, вам понадобится следующее ПО:

Биллинг

Будем использовать BILLmanager простой версии

  • Регистрация клиентов
  • Автоматизация обработки заказов и услуг
    • Поддержка популярных регистраторов доменов, и центров сертификации
    • Создание и управление виртуальным хостингом на основе ISPmanager
    • Создание и управление хостингом VDS на основе VMmanager
    • Автоматизация работы выделенных серверов на основе DCImanager
  • Прием платежей
    • Банковских
    • Яндекс.Деньги
    • Webmoney
    • И других популярных платежных систем
  • Ведение отчетности
  • Прием и обработка запросов от клиентов


Чтобы установить BILLmanager на наш VDS

  • установите на VDS операционную систему CentOS 7 x64
  • следуйте рекомендациям этой статьи

Выбираем для установки репозиторий stable и редакцию Advanced

Закажите SSL сертификат для всех ваших доменов, например здесь. Рекомендуем взять Comodo Essential SSL WildCard, т.к. один такой сертификат будет работать для домена thecompany.com и всех его поддоменов

DNSmanager

Чтобы в дальнейшем настроить для клиентов сервера имен, необходимо установить DNSmanager

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

Устанавливать будем на тот же сервер, что и BILLmanager

Следуйте рекомендациям статьи для установки DNSmanager

Выбираем для установки stable версию с использованием bind

IPmanager

Для того, чтобы BILLmanager 5 мог без проблем создавать услуги, необходимо установить IPmanager

Эта панель предназначена для хранения информации о ваших сетях и Ip адресах. Для старта можно воспользоваться бесплатной версией - в ней можно создать до 2048 ip

Устанавливать будем на тот же сервер, что и BILLmanager

Следуйте рекомендациям статьи для установки IPmanager

Выбираем для установки stable версию с использованием bind

Виртуальный хостинг

Чтобы автоматизировать процесс создания

  • пользователей
  • сайтов
  • доменов
  • почты
  • баз данных

на вашем сервере, воспользуемся ISPmanager Business и установим для него модуль CloudLinux

Почему не ISPmanager Lite? ISPmanager Business позволит в дальнейшем

  • Более гибко регулировать ограничения пользователей, а значит ваши тарифы будут более настраиваемыми
  • Расширять ваш бизнес: если ресурсы сервера закончатся, можно докупить такой же сервер и подключить его в систему
  • Использовать возможности CloudLinux
    • Если на сервере много клиентов, то это избавит вас от головной боли с разграничением ресурсов - CloudLinux отлично справляется с этой задачей. Ни один клиент не сможет использовать все ресурсы сервера, не давая другим клиентам работать
    • Различные версии PHP, в том числе и PHP 7, позволят вашим клиентам разместить на хостинге любой сайт

Установка

  • На сервер установите CentOS 7 x64
  • При установке разбейте диск так, чтобы больше всего места было в / (корень)
    • /var/www - сюда сохраняются данные пользователя
    • /var/lib - тут хранятся базы данных
    • /usr/local/mgr5 - тут хранится сама панель ISPmanager
  • Следуйте рекомендациям статьи для установки ISPmanager

Выбираем для установки stable версию ISPmanager Business

Хостинг виртуальных машин

Для того, чтобы автоматизировать процессы

  • создания виртуальных серверов
  • установки на них ОС
  • перезагрузки, включения, выключения
  • сбора статистики

на вашем сервере, воспользуемся VMmanager

Здесь стоит остановится на различиях между версиями VMmanager

  • KVM - в основе лежит виртуализация qemu-kvm. Это позволяет создавать виртуальные машины, полностью отделенные от других на одном узле кластера. Так называемая "Аппаратная виртуализация". Это позволит вашим клиентам установить на VDS любую ОС по желанию, а значит более гибко подойдет их желаниям. Но для вас это означает, что на одном физическом сервере можно будет разместить где-то 20-30 VDS
  • OVZ - в основе лежит виртуализация OpenVZ. Виртуальные машины здесь разграничиваются на уровне ядра по процессам. Это позволяет быстро создавать VDS из готовых шаблонов, но установить можно только Linux. На одном физическом сервере в таком случае возможно разместить около 50-100 VDS
  • Cloud - это версия VMmamager KVM, о которой подробнее сказано в статье . Это позволит вам автоматически восстановить работу VDS клиентов, если один из ваших серверов выйдет из строя. Однако для создания такого отказоустойчивого кластера понадобится более дорогое оборудование
    • от 3 серверов для создания кластера для VMmanager
    • отдельные сервера-хранилища, для хранения дисков VDS
    • очень быстрая сеть между всеми серверами

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

Установка

  • На сервер установите CentOS 6 x64
  • Разбейте диск так, чтобы больше всего места было в / (корень)
  • Следуйте рекомендациям статьи для установки VMmanager

Выбирайте для установки stable версию VMmanager KVM

Хостинг выделенных серверов

Для того, чтобы автоматизировать

  • Учет серверов
  • Установку на них ОС
  • Перезагрузку, включения\выключения
  • Сбора статистики

воспользуемся DCImanager

Чем различаются версии?

  • Essential - самая простая версия. Подойдет для тех, у кого еще нет своего ЦОД. Позволяет выполнять базовые функции: установка ОС, статистика трафика, учет серверов
  • Progressive - подойдет любой компании, у которой есть свои стойки в ДЦ. Дополнительно к Essential позволяет: автоматически искать свободные сервера, собирать статистику по питанию серверов, управлять VLAN
  • Enterprise - ищите полнофункциональное ПО для управления дата-центром? Тогда эта панель для вас. Дополнительно к функциям версии Progessive есть: построение карты ДЦ, учет списанного и заказ нового оборудования, мониторинг состояния инженерной инфраструктуры. А самое главное - разработчик изготовит под ваш заказ индивидуальную разработку, которая нужна именно вам

В нашем примере у нас нет своих стоек, так что воспользуемся DCImanager Essential. В бесплатной версии доступна установка до 5 серверов

У вас должны быть собственные сервера либо арендованные у провайдера с возможностью удаленного управления по протоколам IPMI. Иначе использовать DCImanager нет смысла

Установка

  • На сервер установите CentOS 7 x64
  • Следуйте рекомендациям статьи для установки DCImanager

Выбирайте для установки stable версию DCImanager Essential

Шаг 4. Настройка

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

Обратите внимание, что все панели ISPsystem тесно интегрируются друг с другом, поэтому важно подключать всё в определенной последовательности

Для примера мы будем использовать сервер с ip 172.31.223.13 для BILLmanager+IPmanager+DNSmanager. Затем привяжем к этому серверу домены bill.thecompany.com и ns1.mycompany.com

DNSmanager и IPmanager

Так как DNSmanager и IPmanager у нас установлены на один сервер, то порядок будет такой:

  1. Начальная настройка DNSmanager
  2. Начальная настройка IPmanager
  3. Подключение панелей к IPmanager

ISPmanager

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

Ограничение\Название тарифа Alpha Bravo Charlie
RAM(Мб) 256 512 1024
Место на диске (Гб) 1 5 10
Мощность процессора (% от ядра) 25 50 75
Количество сайтов (шт) 5 10 15
Трафик (Мб\мес) 200 500 1000
Баз данных (Шт) 5 10 15
Почтовых ящиков (Шт) 5 10 15

Будем использовать сервер с ip 185.60.134.117. Затем привяжем к этому серверу домен isp.thecompany.com

Порядок настройки будет такой:

  1. Начальная настройка
  2. Подключение IPmanager
  3. Подключение DNSmanager

VMmanager

Также определимся с тарифами, которые мы бы хотели создать. Для примера создадим такую сетку:

Ограничение\Название тарифа Unaone Bissotwo Terrathree
Количество ядер CPU (Шт) 1 2 3
RAM (Мб) 512 1024 2048
Место на диске (Гб) 10 30 50
Входяший трафик (Mbit\s) 10 30 50
Исходяший трафик (Mbit\s) 10 30 50

Для примера мы будем использовать сервер с ip 172.31.223.20. Затем привяжем к этому серверу домен vm.thecompany.com

Порядок настройки:

  1. Начальная настройка
  2. Настроим адрес для VMmanager

DCImanager

В качестве тарифов для DCImanager будут выступать конфигурации ваших серверов. Для примера добавим сервер E3-1230-8G-2x1000SATA

Будем использовать сервер с ip 172.31.223.49. Затем привяжем к этому серверу домен dci.thecompany.com

Порядок настройки:

  1. Начальная настройка
  2. Настроим адрес для DCImanager
  3. Добавление серверов в DCImanager

BILLmanager

Порядок настройки:

  1. Начальная настройка
  2. Подключение IPmanager
  3. Подключение DNSmanager
  4. Настройка шлюзов сообщений
  5. Настройка защиты от мошенничества
  6. Подключим наш сервер обработки
  7. Подключение к платежных системам
  8. Настройка продажи доменов
  9. Настройка продажи SSL сертификатов на примере ResellerClub
  10. Настройка перепродажи лицензий ISPsystem
  11. Настройка шаблонов документов и сообщений
  12. Настройка адреса для BILLmanager
  13. Настройка интеграции с сайтом

Шаг 5. Дополнительные возможности

С помощью ПО ISPsystem можно также предложить вашим клиентам "отказоустойчивость"

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

VMmanager Cloud

Вместо VMmanager KVM можно воспользоваться версией Cloud. Для этого понадобится

  • Как минимум три физических серверов для старта
  • Отдельный сервер для хранения дисков виртуальных машин. Тут лучше также использовать кластер серверов, например мы рекомендуем использовать Ceph

На основе этого создается отказоустойчевый кластер:

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

ISPmanager Business

Узлы кластера ISPmanager можно расположить на VDS в VMmanager Cloud. Это позволит

  • более гибко использовать имеющиеся мощности серверов
  • забекапить\восстановить целый узел сразу
  • перевозить VDS на другие физические сервера. Например, в другой ДЦ
  • при падении сервера, на котором расположены VDS, все автоматически переедет на другой узел кластера