Привет! Давненько мы не писали статей, хотя новостей и анонсов накопилось предостаточно…
В последнем мы рассказывали про новую линейку тарифов, которая появилась вместе с новым хранилищем Яндекс в myBI Connect. Это было прошлым летом, всего-то 10 месяцев назад.
“Всего-то” потому что нашему сервису вот-вот стукнет 7 лет, а до его появления примерно 2-3 года мы работали с Azure и Power BI в качестве основных инструментов при работе с отчетностью. То есть история взаимодействия с Микрософт у нас достаточно большая, но ход событий в последнее время подталкивает всех быть гибкими, поэтому в этой статье обсудим наши технические обновления и планы относительно использования разных хранилищ.
Итак, мы долгое время “накапливали” пользователей, используя ресурсы Azure. Исторически это облако было выбрано не случайно - при проектировании решения наш технический директор Сергей, пробовал множество различных вариантов, об этом мы писали еще в одной из первый статей о создании сервиса.
Долгое время этот ресурс нас полностью устраивал и мы занимались своим планомерным развитием, но в начале прошлого года мы осознали, что по сути загнали себя в “технологическую зависимость” от Azure и Power BI, к которым был привязан myBI Connect.
Наша технологическая команда смогла достаточно быстро сориентироваться и примерно за месяц мы развернулись на ресурсах Яндекс Облако, создали возможность заводить новые проекты там под управлением PostgreSQL, а далее реализовали возможность миграции данных из Azure.
Но тут появилась другая загвоздка - базы под управлением Яндекс Облако имеют неподходящий сертификат для облака Microsoft, что не позволяет обновлять данные в отчетах напрямую из БД, только через локальный шлюз, грубо говоря это локальный компьютер, который получает данные из хранилища Яндекс и передает их в Power BI для визуализации в отчетах. Многие наши пользователи вполне успешно перешли на этот вариант использования сервиса, однако, назвать его полноценной удобной заменой Azure было сложно.
На этом технические специалисты не остановились, как вы уже, наврено, знаете, и настроили собственные сервера баз данных в ресурсах Яндекс Облако. Это позволило нам установить корректный сертификат, вместе с которым облачный Power BI подключается и обновляет данные штатно без шлюза. Данные в этом случае также находятся в Яндекс Облако в СУБД PostgreSQL, более месяца этот вариант используется нашими клиентами - “полет нормальный”.
Вернемся к Azure. В связи с ужесточением законодательства относительно трансграничной передачи персональных данных, нам пришлось ограничить выгрузку источников, содержащих такие данные, на зарубежные сервера. К таким источникам относятся все CRM-системы (amoCRM, Битрикс24, YClients, RetailCRM) и системы коллтрекинга (Comagic, CallTouch, Callibri, CallKeeper, Calltracking). Это почти половина наших источников, а если смотреть по популярности, то даже большая часть от всех подключенных в сервисе.
Напомню, базы MS Azure, которые используются в России находятся в Северной Ирландии. Кстати, если, используя наш или какой-либо другой сервис, вы работаете с персональными данными в Power BI и публикуете отчеты в вебе - по сути вы самостоятельно инициируете трансграничную передачу, которая в общем случае по закону запрещена “по дефолту”. Будьте аккуратны в выборе системы и данных, с которыми работаете.
Кроме этого за последний год мы наблюдали очень странное поведение этого облака:
- несколько раз мы наблюдали продолжительные периоды недоступности серверов;
- некоторые источники переставали отдавать данные, если запросы отправлялись с иностранных серверов.
Нам остается только делать догадки, с чем эти проблемы были связаны, но большого позитива и уверенности в том, что Azure будет продолжать работать стабильно они у нас не вызывали.
В итоге, пользователи, выбирающие Azure получали:
- сильно усеченный набор источников и необходимость менять хранилище, если появится желание подключить CRM;
- БД с потенциальными проблемами с доступностью;
- туманные перспективы дальнейшего присутствия Azure в России.
На нашей стороне остается молчаливый мониторинг баз - “молчаливый”, потому что за их падениями мы можем только наблюдать, а кроме этого - витиеватые способы оплаты и завышенная стоимость.
С некоторыми колебаниями мы все таки решили “стрелять в ногу” и отключать Azure для всех новых пользователей. Решение далось нам трудно - мы накапливали пользователей в Azure последние 7 лет, но выглядело вполне логичным с точки зрения технологий и возможностей. Однако сейчас, спустя месяц, сомнения ушли и начал формироваться более привлекательный вектор развития.
За месяц после отключения мы не получили никаких раздосадованных комментариев пользователей - при создании проектов никто не хотел разворачивать БД в Azure. Из это сделали вывод, что в текущих условиях пользователи тоже понимают, что Azure - решение ненадежное, и делают выбор в сторону нашего сервера. На текущий момент доля наших пользователей, использующих Azure уже не так велика и составляет менее 25%.
Остался последний шаг. Технически, да и в целом операционно, нам не очень удобно содержать сервис в разных облаках: нужно обновлять сразу несколько, поддерживать разные СУБД, поддерживать несколько систем взаимодействия с базами и много других менее интересных для описания, но весьма затратных по времени, которыми была обременена техническая команда.
В результате мы пришли к выводу, о том, что окончательно отключать Azure просто необходимо, как бы мы не привыкли к нему. В течение грядущих нескольких месяцев мы будем последовательно отключать пулы баз данных пользователей, уведомляя их предварительно и заблаговременно, предлагая пользователям бесплатный переезд на нашу БД и обновление тарифной линейки.
По нашему мнению, это позволит нам развиваться быстрее и более “целенаправленно”, не распыляясь на разные облака и технологии.