Уход западных компаний из России резко повысил необходимость импортозамещения программного обеспечения для бизнеса. Сегодня специалисты крупных и средних компаний задумываются над вопросом: насколько реально отказаться от продуктов Microsoft? Опыт реализации проекта в ГК «Агат» показывает, что замена технологического стека на PostgreSQL и Linux не только не уменьшает производительность и отказоустойчивость крупных ИТ-систем, но и приносит дополнительные выгоды бизнесу.
2,5 тыс. онлайн пользователей 1С на PostgreSQL – уже реальность
Отказ от западного программного обеспечения – сегодня вопрос обеспечения безопасности российского бизнеса. Многие крупные и средние компании пользовались западными ERP-системами SAP, лицензии на которые продлить невозможно. Очевидным выходом является переход на 1С:ERP 8.3. (О возможностях такого перехода читайте «SAP-санкции. Возможности и угрозы российскому бизнесу»). Проблема осложняется необходимостью отказа и от других западных ИТ-продуктов, в том числе, и от систем управления базами данных (СУБД) Microsoft SQL Server, и от операционных систем Microsoft Windows Server. Но без СУБД работа никаких ERP-систем невозможна. СУБД MS SQL можно заменить на СУБД PostgreSQL, которое является Open Source – решением, развивается российской компанией Postgres Professional и включена в реестр российского программного обеспечения.
Насколько адекватна такая замена для бизнеса? Как она повлияет на производительность и отказоустойчивость ИТ-систем крупных и средних компаний? Опыт ООО «Протон», реализовавшей проект смены СУБД MS SQL на PostgreSQL в ГК «Агат» показал – инсталляция PostgreSQL беспроблемно работает при 2,5 тыс. одновременных сеансах в 1С. ГК «Агат» (один из крупнейших российских автодилеров, имеющий 57 дилерских центра в двенадцати регионах России) заказал смену СУБД Microsoft SQL Server на PostgreSQL еще в 2018 году. Главной целью проекта тогда было сокращение затрат на лицензионное ПО. Снижение рисков зависимости от одного поставщика (Vendor lock-in) рассматривалось лишь в качестве дополнительной цели. Проект давно реализован, и никаких проблем в ГК «Агат» не возникает.
1С успешно адаптирует к PostgreSQL типовые конфигурации
Как рассказал начальник технического блока компании «Протон» Денис Курманов, в 2018 году в России было сложно найти решения такого масштаба. Основная сложность тогда состояла в том, что было слишком мало «боевых» инсталляций 1С на PostgreSQL. Поэтому компания 1С реагировала на возникающие ошибки и проблемы интеграции 1С с СУБД PostgreSQL не так же оперативно, как делает это сейчас. Кроме того, Постгрес SQL более требователен к качеству кода, написанного для 1С. Поэтому даже незначительные ошибки в коде, которые пропускал MS SQL, в ряде случаев могут приводить к существенной деградации производительности системы и даже простоям. Типовые решения ERP-системы тестируются на совместимость с PostgreSQL специалистами 1С прежде, чем компания выложит новый релиз. Самописные же блоки разработчикам приходится тестировать и исправлять самостоятельно. Сегодня необходимая для этого информация имеется на профильных информационных ресурсах и на Портале информационно-технологической поддержки компании 1С. В 2018 году инженерам компании «Протон» многое приходилось изобретать заново.
При этом ГК «Агат» использует Систему управления автодилерским предприятием (СУАП) собственной разработки, которая включает в себя СРМ, систему оперативного учета, работу с первичной документацией и много других подсистем. Адаптировать к PostgreSQL конфигурацию, в которой реализована сложная бизнес-логика, и поменять в ней какие-то тонкие моменты, это, по словам директора по технологиям ГК «Агат» Игоря Иванова – высший пилотаж. «Такой работой должны заниматься самые квалифицированные, опытные и наиболее погруженные в процесс разработчики», – утверждает Игорь Иванов.
Всего на реализацию проекта ООО «Протон» потратило около года. Из них порядка шести месяцев потрачено на адаптацию самописных приложений 1С к PostgreSQL. Остальное время ушло на внедрение нового технологического стека в ИТ-систему ГК «Агат». «После проведения пилотного проекта на тестовом контуре, мы приступили к его реализации на типовых конфигурациях 1С, – вспоминает Денис Курманов. – Брали по нескольку баз данных бухгалтерии или зарплаты и переносили их, выявляли ошибки, пока базы не закончились. После переноса типовых конфигураций взялись за самописные блоки. Какое-то время системы работали параллельно. И лишь, когда всё было перенесено и протестировано, мы отключили Microsoft SQL Server».
Длительность проекта, по словам Дениса Курманова, была связана со спецификой бизнеса ГК «Агат». Если бы компания использовала только типовые решения, процесс переписывания и тестирования кода можно было бы исключить. В последние годы компания 1С проводит большую работу по интеграции своей системы с PostgreSQL и Linux. А потому инсталляция 1С на Свободном ПО существенно упростилась. Последняя платформа 1С ERP 8.3.20 работает под Linux и с PostgreSQL абсолютно стабильно. В малых компаниях, по опыту успешно реализованных специалистами ООО «Протон» проектов сменить Microsoft SQL на PostgreSQL можно за один-два дня.
Импортозамещение ПО не ограничивается переходом с MS SQL на PostgreSQL
Одновременно со сменой технологического стека с Microsoft SQL Server на PostgreSQL инженеры «Протон» перестраивали и архитектуру ИТ-системы ГК «Агат». Ранее она была развернута на отдельных (standalone) серверах. Сейчас это кластеризированое отказоустойчивое решение, где есть отказоустойчивый кластер серверов приложений 1С и отказоустойчивая кластеризация СУБД с асинхронной репликацией. Такое решение в принципе имеет совершенно другие показатели по отказоустойчивости и производительности, а потому Денис Курманов считает некорректным сравнение этих показателей 1С на MS SQL и Server на PostgreSQL – оба существенно возросли, но неясно, насколько повлияли на этот рост смена стека и изменение платформенного решения.
РИСУНОК Архитектура решения 1С на PostgreSQL в ГК «Агат»
В те же годы специалисты ООО «Протон» перевели 2 300 компьютеров ГК «Агат» с Microsoft Windows на ОС Linux. (Подробнее об этом проекте читайте «Агат» перешел на свободное программное обеспечение»). В настоящее время ГК «Агат» использует из всей линейки продуктов и сервисов Microsoft лишь корпоративную почтовую систему Microsoft Exchange. «Microsoft Exchange – это один из лучших и самых популярных продуктов Майкрософт. Он реально крутой, классный и бизнесу им удобно пользоваться, – рассказывает Денис Курманов. – Есть свободные альтернативы этой почтовой системе – Zimbra и её «форки». Но это тоже западный и тоже платный ИТ- продукт с ограниченным бесплатным функционалом, а потому менять на него Microsoft Exchange можно, но проблему vendor-lock’а это не решит». Уже в этом году компания «Протон» запустит пилотный проект по разработке корпоративной почтовой системы на основе Свободного программного обеспечения Mailcow. В случае успеха этого проекта ГК «Агат» уже в следующем году сможет полностью отказаться от использования зарубежного ПО. Процесс импортозамещения программного обеспечения в компании будет завершен.
Настройка PostgreSQL для 1С. Краткие рекомендации
Мы попросили Дениса Курманова дать несколько советов тем специалистам, которые будут реализовывать проекты перевода крупных компания с MS SQL на PostgreSQL. Он порекомендовал, прежде всего, сразу правильно спроектировать систему, заложив в нее нужный уровень отказоустойчивости. Во-вторых, нужно внимательно изучить техническую документацию 1С в части СУБД. В-третьих, привлечь квалифицированных программистов к аудиту конфигурации 1С на предмет ее готовности переноса на PostgreSQL. Обязательно нужно подумать о том, как будет организован процесс мониторинга новой системы. ООО «Протон» для этого выполнила собственную разработку на микросервисной архитектуре, которая собирает все данные и визуализирует их в красивые графики. Подсистема мониторинга состоит из следующих компонентов:
- RAS\RAC
Компоненты платформы 1С, которые установлены на каждом центральном сервере кластера. Используются для управления и мониторинга - Zabbix
Использует RAS\RAC для сбора метрик с центрального сервера кластера 1С и автообнаружения ресурсов (новых баз данных)
Информирует по инцидентам и автоматически создаёт заявки в системе управления ГАНДИВА (также разработка ООО «Протон» при срабатывании триггеров - Grafana
Визуализирует данные телеметрии полученные от Zabbix. (Возможно, другие разработчики выберут иное решение).
И последнее. Перед завершением проекта обязательно провести пилотный проект с нагрузочным тестированием. Если выполнить все эти рекомендации, то по мнению Дениса Курманова, большинство типовых проблем с переходом СУБД на PostgreSQL компания сможет избежать.
Узнайте, как решить проблемы ИТ-инфраструктуры малых компаний.
Укажите в заявке «Получить схему перевода 1С на Linux и PostgreSQL» и мы направим вам полное описание технологического процесса.