ISPsystem, прости и прощай! Почему и как мы написали свою панель управления серверами



Мы «Хостинг технологии» и 5 лет назад запустили VDSina — первый vds хостинг, созданный специально для разработчиков. Мы стремимся сделать его удобным, как DigitalOcean, но с русской поддержкой, способами оплаты и серверами в России. Но DigitalOcean это не только надежность и цена, это еще и сервис.

Софт от ISPsystem оказался веревкой, которая связывала нам руки на пути к крутому сервису. Три года назад мы использовали биллинг Billmanager и панель управления серверами VMmanager и быстро поняли, что оказывать хороший сервис без своей панели практически нереально.

Как ISPsystem убивал удобство
Баги
Мы не могли сами пофиксить баг — каждый раз приходилось писать в чужую поддержку и ждать. Решение любой проблемы требовало реакции сторонней компании.

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

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

Каждый апдейт был лотереей: приходилось прикрывать биллинг и приносить жертвы богам обновлений — пару раз апдейт вызывал даунтайм на минут 10-15. Наши админы в это время седели на глазах — мы никогда не знали, сколько продлится даунтайм и не могли спрогнозировать, когда ISPsystem решит выпустить новый апдейт.

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

Неудобный интерфейс панели
Всё было разделено на разные панели и управлялось из разных мест. Например, клиенты платили через Billmanager, а перезагружать или переустанавливать VDS им приходилось в VMManager. Нашим сотрудникам тоже приходилось переключаться между окнами, чтобы помочь клиенту, проверить нагрузку на его сервере или посмотреть, какую ОС он использует.

Такой интерфейс отнимает время — и наше, и клиентов. Ни о каком удобстве, как у DigitalOcean, в такой ситуации речи не идёт.

Короткие лайфциклы с частым обновлением API
Мы писали собственные плагины — например, плагин с дополнительными способами оплаты, которых нет в VMManager.

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

Нельзя дорабатывать
Точнее можно, но крайне неэффективно. Лицензионные ограничения не дают вносить изменения в исходники, можно только писать плагины. Максимум плагинов — какие-то элементы меню, пошаговый мастер. ISPsystem заточены на универсальность, а нам нужны были специализированные решения.

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

И начали разработку.

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

Шаг 1. Серверный агент
Серверный агент — это веб-сервер на питоне, который управляет библиотекой libvirt, которая, в свою очередь, управляет гипервизором Qemu-kvm.

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

По идее libvirt можно было управлять прямо из биллинга, но это требовало слишком много дополнительного кода и мы решили разнести эти функции между агентом и биллингом — биллинг просто делает запросы агенту через JSON API.

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

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

Шаг 2. Биллинг
Для нашего разработчика Алекса это была уже не первая панель управления — Алекс в хостинге давно, поэтому он в целом понимал, что нужно клиенту и что нужно хостеру.

Биллинг мы и называем между собой «панелью управления»: в нем не только деньги и услуги, но и управление ими, поддержка клиентов и многое другое.

Для перехода с софта ISPSystem, необходимо было полностью сохранить клиентам предыдущий функционал, перенести все финансовые действия пользователей из старого биллинга в новый, а также все услуги и связи между ними. Мы изучили что есть в текущем продукте, потом решения конкурентов, в основном DO и Vultr. Посмотрели на недостатки и преимущества, собрали отзывы людей, которые работали со старыми продуктами от ISPsystem.

В новом биллинге использовали два стека: классический PHP, MySQL (а в будущем планируется перейти на PostgreSQL), Yii2 в качестве фреймворка на бекэнде и VueJS на фронте. Стеки работают независимо друг от друга, разрабатываются разными людьми, а общаются с помощью JSON API. Для разработки тогда и сейчас мы используем PHPStorm и WebStorm от JetBrains и нежно их любим (ребята, привет!)

Панель спроектирована по модульному принципу: модули платёжных систем, модуль регистраторов доменов или, например, модуль SSL-сертификатов. Можно легко добавить новую функцию или убрать старую. Задел на расширение заложен архитектурно, в том числе и в обратную сторону, «к железу».

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

Шаг 3. Интерфейс
Интерфейс — наше командное детище.


Сначала мы посмотрели, что будет, если сделать надстройку над API ISPsystem, ничего кардинально не меняя в интерфейсе. Вышло так себе и мы решили всё сделать с нуля.

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

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

Фронтенд
Панель решили сделать SPA приложением — нетребовательной к ресурсам и с быстрой загрузкой данных. Наш фронтендер Артыш решил писать ее на Vue — на тот момент Vue только появился. Мы предположили, что фреймворк будет развиваться динамично, как React, через какое-то время коммьюнити Vue разрастется и появится море библиотек. Мы поставили на Vue и не пожалели — теперь добавить на фронт новые функции, которые уже запрограммировали на бекенде занимает мало времени. Подробнее про фронтенд панели мы расскажем в отдельной статье.

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

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

Шаг 4. Тестирование и схема миграции
Когда все завелось и прошли первые тесты, встал вопрос миграции. Первым делом мы поставили биллинг и начали тестировать его работу с серверным агентом.

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

Приходилось тестировать и перепроверять буквально все, так как данные сливали в одну новую базу из трёх старых: Billmanager, VMmanager и IPmanager менеджера. Пожалуй, тестовые миграции — самое сложное, с чем мы столкнулись в процессе разработки новой панели.

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

Затем мы разослали письма клиентам с адресом новой панели и биллинга и сделали редирект.

В итоге: IT’S ALIVE!

Хэппиэнд
С первых часов работы своего софта мы почувствовали все прелести перехода. Код был полностью наш и с удобной архитектурой, а интерфейс — чистым и логичным.
Первый отзыв после запуска новой панели


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

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

Что дальше?
Мы растём, растёт количество данных, клиентов, данных клиентов. На бекенд пришлось добавить Memcached-сервер и два менеджера очередей с разными задачами. На фронтенде есть кэширование и свои очереди.

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

В следующей статье расскажем, как запускали Hi-CPU тариф: про железо, ПО, какие задачи мы решали и что у нас получилось.

vdsina.ru

Изменения правил лицензирования ПО компании Microsoft

Уведомляем Вас о том, что с 01.08.2019 вступают в силу изменения правил лицензирования Программного обеспечения компании Microsoft для ПО Windows Server.

Расчет стоимости лицензий определяется методом лицензирования по ядрам.

С новыми тарифами можно ознакомиться по ссылке: www.ihor.ru/documents/2019/soft-tariffs-01.08.2019.pdf

Debian 10 доступен уже сейчас!

Только что выпущенный на прошлой неделе, доступен на Contabo с сегодняшнего дня: Debian 10, кодовое имя Buster. Он доступен для всех наших VPS и выделенных серверов — просто выберите его во время процесса заказа. Если вы уже являетесь клиентом и хотите перейти на Debian 10, вы можете сделать это через нашу панель управления клиентами.

Кроме того, вы можете объединить Debian 10 с Webmin, Lamp, Webmin + LAMP и программным обеспечением Raid 1. Он еще не доступен для Plesk, но вскоре будет выпущен Plesk — мы просим вашего терпения.

Помимо Debian 10, мы предлагаем вам различные новейшие ОС Linux, а также Windows Server 2012 и 2016. Просто зайдите на наш веб-сайт и выберите нужный VPS или Root Server
contabo.com/?show=ssdvps
contabo.com/?show=rootserver

Изменение цен на домены RU и РФ с 01.08.2019



Здравствуйте.
С 1 августа изменится цена на ежегодное продление доменов в зонах RU/РФ. Новая стоимость продления составит 490 рублей за 1 год. Стоимость регистрации не изменится и останется 200 рублей за 1 год.

До 1 августа вы можете продлить по старой цене домены, регистрация которых заканчивается до 30 сентября.
Список ваших доменов: my.ihc.ru/dnsOrders/index

Актуальную стоимость регистрации и продления можно уточнить по адресу: www.ihc.ru/domains.html

От High Ceph Latency к Kernel Patch с помощью eBPF/BCC



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

Пару лет назад был разработан ещё один инструмент — eBPF. Он дает возможность трассировать ядро и пользовательские приложения с низким оверхедом и без необходимости пересборки программ и загрузки сторонних модулей в ядро.
lwn.net/Articles/740157/

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

Ceph Is Slow
В кластер Ceph добавили новый хост. После миграции части данных на него, мы заметили, что скорость обработки запросов на запись им гораздо ниже, чем на других серверах.

В отличие от других платформ, на этом хосте использовался bcache и новое ядро linux 4.15. Хост такой конфигурации использовался здесь впервые. И на тот момент было ясно, что корнем проблемы теоретически могло быть что угодно.

Investigating the Host
Начнем с того, что посмотрим, что происходит внутри процесса ceph-osd. Для этого воспользуемся perf и flamescope (подробнее о которых можно прочитать здесь):

Картинка говорит нам о том, что функция fdatasync() потратила много времени при отправке запроса в функции generic_make_request(). Значит, что, скорее всего, причина проблем где-то вне самого демона osd. Это может быть либо ядро, либо диски. Вывод iostat показывал высокую задержку обработки запросов bcache-дисками.

При проверке хоста мы обнаружили, что демон systemd-udevd потребляет большое количество времени CPU — около 20% на нескольких ядрах. Это странное поведение, так что нужно выяснить его причину. Так как Systemd-udevd работает с uevent’ами, мы решили посмотреть на них через udevadm monitor. Оказывается, генерировалось большое количество change-событий для каждого блочного устройства в системе. Это довольно необычно, поэтому нужно будет посмотреть, что генерирует все эти ивенты.

Подробнее
blog.selectel.ru/from-high-ceph-latency-to-kernel-patch-with-ebpf-bcc/

Приём оплат при помощи карт Visa / Mastercard без PayPal становится доступен напрямую до 5000 евро

  • Приём оплат при помощи карт Visa / Mastercard без PayPal становится доступен напрямую до 5000 евро
  • We start to accept payments by card Visa / Mastercard directly without PayPal up to 5000 EURO



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

Пока оплаты доступны на сумму до 5000 евро за одну транзакцию, и тем, кто платит больше, придётся делать несколько транзакций, создавая счета на пополнение баланса, а потом применяя баланс для оплаты счетов за услуги, либо оплачивать через PayPal или Wire Transfer на наш банковский счёт в Латвии. Но даже на 5000 евро у нас есть что купить!

За последний год мы ввели в строй новую площадку в Амстердаме с премиум-сетью по умолчанию (да, да, каждый стоечный свитч включён оптикой 2х10G от разных distribution-свитчей) и выделенными серверами c 128GB RAM от $99 в дата-центре Switch AMS11 (Equinix) Tier IV!

  • Только качественные транзитные провайдеры GTT/NTT Tier I. Стоимость коннективности напрямую в дата-центре 7000 евро за 1N 10G, мы предлагаем Вам 2N 10G за $4500, с возможностью подключения прямого канала в Китай от China Telecom по цене $20 / Mbps или 100 ТБ трафика практически бесплатно для выделенных серверов (бонус от нас);
  • NL или RU GEO IP практически без ограничений по количеству, цена не превышает $2 в месяц за адрес;
  • Возможность роутить свои подсети и перебрасывать адреса между серверами как Вам угодно, теперь при смене сервера или решения, IP-адрес можно сохранить!
  • Качественное железо Dell R730xd c 14-ядерными процессорами от $199 в аренду (средний срок окупаемости для нас 5.8 лет, что совсем не свойственно для многих провайдеров): Dell R730xd — 2x E5-2697v3 2.6GHz 14C / 64GB DDR4 / 4x960GB SSD / 1Gbps 100TB
  • Dell R420 — 2x E5-2430 2.2Ghz 6C / 128GB DDR3 / 2x960GB SSD / 1Gbps 100TB — от $99, как это удалось можно узнать из статьи: habr.com/ru/company/ua-hosting/blog/449908/ там же увидеть фотографии с новой площадки, но конечно же, скоро будет отдельная статья о дата-центре!
  • Cерверные накопители HDD (4TB SATA — WD4003FZEX), PCIe NVMe SSD (3.2 TB NVMe SSD (Samsung PM1725a PCIe 3.0 x 8 HHHL)- MZPLL3T2HMLS-00003), SSD (480GB Samsung SSD — MZ7LM480HMHQ-00005 и подобные);
  • Возможность построения 1G, 10G, 20G, 100G LAN и применения аппаратных firewall типа Fortigate.
Серверы можно выбрать здесь, их осталось совсем немного и доставки, вероятно, Вам нужно будет долго ожидать: ua-hosting.company/servers/nl

Но и это ещё не всё, мы предложили облачное решение от $4.99 уже с панелью ISP Manager Lite и удобным VM Manager для управления Вашим виртуальным сервером с МОМЕНТАЛЬНОЙ активацией и дешевыми NL / RU адресами на выбор: ua-hosting.company/cloudvps/nl

Всё становится проще и лучше, авточарджинг карт — в течени года, совсем скоро!

Но всё это стало возможным благодаря Вам — нашим клиентам. Спасибо, что позволяете развиваться и расти вместе с Вами. Успехов! И дайте нам знать, если будет желания достичь новых вершин вместе с нами — мы поможем!

Linxdatacenter получил лицензию ФСБ России на работы по шифрованию



Компания Linxdatacenter, международный эксперт в сфере высокотехнологичных решений по хранению данных, облачных сервисов и телекоммуникаций, сообщает о получении лицензии ФСБ России на комплекс видов деятельности по шифрованию данных (криптографии), в том числе в работе с информационными системами.

Данная лицензия распространяется на основные виды деятельности, перечисленные в Постановлении Правительства РФ от 16.04.2012 № 313 и ФЗ-99, и носит бессрочный характер.

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

Вопросы информационной безопасности носят сегодня особенно актуальный характер по ряду причин: на это влияет как растущий объем существующих видов данных, так и появление новых моделей взаимодействия людей, компаний и государства. Данные множатся, их ценность растет, они становятся привлекательным объектом новых видов атак со стороны злоумышленников. Ни одно дополнительное средство их защиты в этом свете нельзя рассматривать как избыточное, особенно когда речь идет о ЦОДе
комментирует Борис Меркулов, инженер по облачным решениям и информационной безопасности Linxdatacenter.

Linxdatacenter проводит системную работу по повышению уровня безопасности систем хранения, обработки и передачи данных в своих дата-центрах. Лицензия ФСБ на шифрование стала новым этапом развития ИБ-компетенций Linxdatacenter, а ее получение совпадает с началом развития новых сетевых решений в практике компании, что позволит гарантировать высокое качество защиты данных с использованием передовых средств шифрования, одобренных на государственном уровне.

Получение лицензии ФСБ является продолжением органического роста компетенций Linxdatacenter в области ИБ. Несмотря на то, что такого рода лицензия не является обязательной для предоставления услуг ЦОД, спрос на наличие такой лицензии у сервис-провайдера остается стабильно высоким на протяжении последних нескольких лет. Зачастую это обусловлено требованиями тендеров на закупку услуг ЦОД, но и клиенты, приобретающие услуги вне тендерных процедур, крайне заинтересованы получать услуги по системе одного окна. Мы заинтересованы в расширении своего портфолио и реализации новых интересных и амбициозных проектов. В своей деятельности мы уделяем самое серьезное внимание соответствию наших рабочих процессов как лучшим международным стандартам, так и законодательству РФ. В конечном итоге от нашего совершенствования в этом направлении в выигрыше окажутся, прежде всего, клиенты, как новые, так и те, с кем мы давно сотрудничаем. Расширение нашей экспертизы поможет и тем, и другим в реализации стоящих перед ними задач
добавляет Ольга Ермакова, старший юрисконсульт и комплаенс специалист Linxdatacenter.

Краткая справка о Linxdatacenter
Linxdatacenter (штаб-квартира в Амстердаме, Нидерланды) – один из лидеров международного рынка высокотехнологичных ИТ-решений для бизнеса. География предоставления услуг Linxdatacenter охватывает рынки Центральной и Восточной Европы, России, Азии и Скандинавии.
Компания предоставляет облачные решения и сервисы в области хранения данных в собственных дата-центрах уровня TIER III в Москве и Санкт-Петербурге, а также на базе партнерских дата-центров в Варшаве, Шанхае и Гонконге. Портфолио Linxdatacenter включает услугу частного доступа к глобальным облачным сервисам, таким как Amazon Web Services и Google Cloud Platform. Дата-центры компании имеют сертификацию ISO 27001, ISO 9001, PСI DSS, SAP Cloud and Infrastructure и соответствуют стандарту Management & Operations Stamp of Approval (Uptime Institute). Опыт работы компании составляет более 18 лет.
Подробнее о решениях Linxdatacenter на сайте ru.linxdatacenter.com/

Не пропустите новые предложения на OVHcloud


Два новых способов сэкономить на серверах инфраструктуры
  • Наши серверы INF-4 теперь только $ 299/ месяц
  • Сохранить 50% в течение трех месяцев, на нашем INF-3 и INF-5 серверов!
Эти предложения действительны только в центрах обработки данных в США и не будут длиться долго. К услугам гостей бесплатный неограниченный трафик и защиту нашего собственного решения анти-DDoS с каждым сервером!
us.ovhcloud.com/products/servers/infrastructure-servers


Защищена ли ваша инфраструктура от угроз?
Данные являются одним из наиболее важных активов бизнеса имеет. Независимо от того, насколько вы подготовлены может быть, существует много угроз инфраструктуры, которые могут привести к потере, например данных: ошибка человека, вирусов и стихийных бедствий, таких как ураганы (которые в сезон). Будьте готовы с сильной стратегии резервного копирования.
us.ovhcloud.com/products/servers/storage-servers


Что вам нужно знать о RAID
В OVHcloud, мы всегда получать задаваемые клиентами о RAID. Что это? Как настроить? Зачем мне это нужно? Таким образом, мы полагали, что мы бы собрать эту информацию и обмениваться передовым опытом, когда речь идет о различных типах RAID.
us.ovhcloud.com/resources/blog/what-you-need-know-about-raid


Представляем новый Advance диапазон в Канаде и Европе
Откройте для себя новый диапазон Advance сервера в наших канадских и европейских центрах обработки данных (скоро в США)! Advance диапазон предназначен для малых предприятий, инвестирующих в универсальных серверах для размещения сайта электронной коммерции или критически важных бизнес — приложений. Специальные предложения в течение ограниченного времени. Учить больше о Advance.
www.ovh.com/world/dedicated-servers/advance
Примечание: Если вы только иметь счет США с OVHcloud, вам необходимо создать новую учетную запись во время процесса регистрации на ovh.com
Платежный, поддержка и OVH менеджер будет отдельно от счета в США.