Переход НФО на Linux: 3 ключевых шага
К 2024 году импортозамещение из темы, о которой ранее предпочитали не вспоминать, превратилось в обязательную задачу для финансовых компаний. Разбираемся, как последовательно перейти на Linux на примере НФО и их финансовых систем.
В соответствии с Федеральным законом № 243, НФО обязаны обеспечить переход на преимущественное использование российского программного обеспечения. Это стало очередным требованием к обеспечению технологической независимости отечественных компаний.
Ещё одним стимулом к переходу на российское ПО является отсутствие поддержки и отключение облачных сервисов иностранных вендоров. Что ставит под угрозу работу текущих решений и их совместимость в другими продуктами.
Сегодня рассмотрим, как на практике НФО заменить свои финансовые системы.
Какие программы требуют замены: два варианта
Как правило, в НФО для работы с отчетностью используются разные программы: бухгалтерская (финансовая) система, система отчетности XBRL, операционная система (back-office). При анализе своей инфраструктуры компания может столкнуться с двумя основными проблемами:
ПО может быть разработкой иностранного вендора, который не оказывает поддержку;
- ПО может в принципе не работать на отечественных операционных системах.
В первую очередь искать отечественные разработки стоит в Едином реестре российских программ от Минцифры. Однако важно учитывать, что первоначально большинство систем разрабатывалось для работы на операционной системе Microsoft Windows и системе баз данных MS SQL Server, что не подходит для полноценного импортозамещения. Пристальное внимание стоит обратить на программы, работающие в российских операционных системах на базе Linux и базах данных PostgreSQL.
План перехода на российское ПО: 3 этапа
Сам процесс перехода на российское ПО представим в виде плана:
- перевод сервера баз данных на российское ПО (PostgreSQL);
- перевод сервера приложений на российское ПО (Linux);
- применение российской операционной системы (Linux) на компьютерах пользователей.
Переход можно осуществлять поэтапно, чтобы распределять ресурсы и адаптироваться к изменениям. В среднем на реализацию одного шага уходит 2-3 месяца. При этом каждая компания определяет глубину перехода в зависимости от своих потребностей: можно выполнить все 3 этапа, а можно остановиться на этапе 2, который уже можно считать полноценным импортозамещением.
Далее подробнее рассмотрим нюансы каждого из этапов.
Этап 1. Перевод сервера баз данных на российское ПО - самый простой шаг
Не только простой, но также доступный и проверенный. По данной схеме уже сейчас работают многие участники рынка.
Исторически большинство компаний использовало и продолжает использовать систему баз данных Microsoft SQL. Но у нее есть конкурент - PostgreSQL. Это свободно распространяемая открытая система, которую разрабатывает международное сообщество. Именно на базе этой СУБД и сделаны отечественные программы.
Самая популярная российская система управления базами данных на основе PostgreSQL - “Postgres Pro”. Эта программа входит в Реестр российского ПО и сертифицирована ФСТЭК для обработки конфиденциальной информации и персональных данных.
Существует две основных версии Postgres Pro:
Postgres Pro Standard - наиболее актуальная версия PostgreSQL c улучшенными функциями;
- Postgres Pro Enterprise для 1C, предназначенная для работы только с 1С:Предприятие. Эта версия позволяет эффективно работать с большими базами данных.
Приобрести лицензии можно в фирме 1С через партнеров. Лицензии приобретаются по количеству пользователей или по количеству ядер процессора. При покупке необходимо провести расчет нагрузки, чтобы выбрать правильный вариант лицензирования: нужно соблюсти баланс между производительностью и стоимостью. Это можно сделать самостоятельно или с помощью вендора.
Для перехода на PostgreSQL потребуется:
- настроить новый сервер баз данных;
- установить на сервере баз данных СУБД PostgresSQL;
- перенести базы данных программ на новый сервер;
- указать новый сервер баз данных в настройках сервера 1С.
Стоит сказать, что архитектура самой платформы 1С, на которой разработаны многие отечественные финансовые решения, изначально проектировалась под СУБД MS SQL. Поэтому применение другой СУБД может понизить общую производительность системы, так как запросы 1С будут проходить неоптимальное преобразование на язык T-SQL.
В ходе проверки этого варианта мы с командой выявили слабые места и падение производительности в ряде случаев. Чтобы этого избежать, в наши программы были внесены необходимые изменения.
Так или иначе при переходе стоит провести нагрузочное тестирование на тестовом стенде, чтобы убедиться, что производительность не изменилась в худшую сторону.
Этап 2. Перевод сервера приложений 1С на Linux: требуются новые технологии интеграции
Второй этап перехода, когда меняется операционная система на сервере 1С, сложнее.
Большинство российских операционных систем основано на свободно распространяемой бесплатной системе Linux. Их достаточно много: Astra Linux, РЕД ОС, ALT Linux и, конечно, у каждой из них есть свои особенности. Работа платформы 1С на разных операционных системах может приносить и разные сюрпризы, которые решаются обновлениями, новыми компонентами и иными доработками.
Сама платформа 1С стабильно работает на Linux, для этого фирма 1С выпускает отдельные дистрибутивы платформы 1С, поэтому основной объем работ связан с “интеграцией”.
Часто данные в финансовые программы загружаются из других систем. Такое взаимодействия называется “интеграцией”.
Для интеграции двух программ 1С в Windows часто используется технология COM, которая недоступна на Linux. В качестве альтернативы мы с коллегами разработали новые технологические решения для интеграции между программами 1С - Web-сервисы.
Для работы этого механизма необходимо провести ряд шагов:
- установить и настроить Web-сервис на сервере приложений 1С;
- опубликовать базы данных 1С на Web-сервисе;
- для программ 1С других вендоров установить наше расширение, которое позволит передавать данные из этих программ через Web-сервис.
Мы постарались адаптировать функционал таким образом, чтобы вносить как можно меньше изменений в бизнес-логику интеграции. Но все равно остается много технических моментов, которые нужно будет учесть.
Так, для загрузки данных из других систем и баз данных часто используется технология ADO, которая также не будет работать на Linux. Поэтому вместо этой технологии возможно использование технологии 1С «Внешние источники данных». Это также потребует изменения и бизнес-логики интеграции.
Таким образом, для привычной работы придется пересмотреть все интеграционные процессы в программах. Это значит, что нужно проверять корректность, полноту и качество данных, а также скорость новых механизмов.
Этап 3. Использование ОС Linux на компьютерах пользователей: придётся забыть про Excel?
Третий этап самый сложный для пользователей, но не считается обязательным, так как компьютеры пользователей предназначены только для ввода и вывода информации. В общем случае с 1С можно работать и через браузер, то есть без использования дополнительного ПО (клиента 1С).
Тем не менее, можно использовать российские операционные системы на компьютерах пользователей, но это вызовет определенные сложности.
Во-первых, для пользователей это аналогично переходу на новый компьютер, где многое будет непривычным.
Во-вторых, стандартные пакеты программ MS Office (Word, Exсel и др.) не доступны на Linux. Вместо них используются другие, в том числе отечественные аналоги, например, “Мой офис”. Отдельная сложность состоит в том, что в работе с финансовыми программами пользователи часто сохраняют и загружают данные с использованием Excel.
Ранее для выгрузки данных из наших программ в формате Excel, использовался MS Office. Тем не менее, на Linux мы смогли реализовать выгрузку и загрузку Excel файлов средствами платформы 1С, возможности которой ограничены. Например, нельзя объединять отчеты в один файл (листы), поэтому каждый отчет будет выгружаться в новый файл. Не работает также и форматирование ячеек (гиперссылки, разрядность и пр.). При этом упрощение формата выгрузки сделало ее более быстрой: повысилась скорость выгрузки и загрузки больших отчетов.
Подводим итог
Представленный план – результат завершенных проектов по переводу финансовых систем на российские операционные системы и системы баз данных.
Сам процесс перехода потребует перенастройки всех интеграционных процессов, тестирования и обучения, проведения нагрузочных испытаний. Фактически это очень ответственный проект.
Компания может осуществить переход на отечественное ПО поэтапно. Сначала применить только сервер баз данных с PostgreSQL, на следующем этапе сервер 1С и потом компьютеры пользователей. Полноценным переходом можно считать поэтапный перевод сервера приложений 1С на Linux. Компьютеры пользователей переводить на Linux не обязательно, поскольку работу с 1С можно организовать даже на телефоне.