1С На Проксмоксе. Главные Примечания

После нескольких лет использования 1С в контейнерной виртуализации Proxmox появилось довольно много проблем, которые я здесь изложу в виде кратких общих заметок по этапам процесса внедрения.

Это не руководство к действию и не инструкция.

Если какой-либо из пунктов необходимо описать более подробно, пожалуйста, не стесняйтесь комментировать.



Планирование и оценка рисков

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

Минимум — хорошее железо, нормальный райд, быстрые диски, х64 версия сервера 1С.

Также желательно запросить какое-то обучение по этой теме.

Чтобы руководство понимало, что оно вкладывает средства в собственную инфраструктуру и персонал, а не просто экономит кругленькую сумму на ровном месте.



Покупка программного обеспечения.

Интегратор.

Желательно выбирать человека, имеющего хоть какой-то опыт поддержки Linux-версий 1С.

Не ленитесь позвонить и спросить.

В итоге вам всё равно никто не поможет и вы останетесь один на один со всеми своими проблемами, но хотя бы без назойливых глупых советов про rdp и mssql.

Настройка хоста

При работе с proxmox было бы грех не использовать замечательный механизм lxc.mount для монтирования директорий с хоста в контейнеры (и сохранения acl).

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

Таким образом вы будете управлять резервными копиями и журналами в одном месте и увидите, что это хорошо.



Выбор конфигурации сервера приложений и сервера базы данных

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

Сейчас отличный шанс не делать этого.

Дело в том, что если измерить скорость «сетевой» передачи данных между контейнерами, то получится не менее 25-30 Гбит/с.

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



Настройка сервера базы данных

PostgreSQL от 1С или Postgres Professional прекрасно работают в контейнерах «из коробки».

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

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

Также имеет смысл сразу сделать в эти каталоги задания резервного копирования, например, через механизм pg_dump all. При создании выходных файлов используйте $hostname. Так вы получите джентльменский набор на любой случай.



Настройка сервера приложений

Все без происшествий, рутинно и скучно, если только вы не установите x86-сервер на x64-операционную систему.

Но даже в этом случае все можно решить.

Например, если вы устанавливаете х86 1С на Centos7, то есть отличный репозиторий с х86 пакетами.

Mirror.centos.org/altarch/7/os/i386/Packages Оттуда вам обязательно понадобятся: ImageMagick-c++-devel, fontconfig, libgsf, http, httpd-devel, а также libpng и libpng-devel для печати штрих-кодов.



Лицензирование

Многие выступают против лицензий на программное обеспечение и выступают за более дорогой, но надежный HASP. Это как катание на лыжах и сноуборде.

Вам решать, сломать ключицу или лодыжку.

Есть проблемы с пробросом хаспа в контейнер и с корректным получением лицензий на ПО.

Если вы решите приобрести лицензии на программное обеспечение, будьте осторожны с ядрами ЦП.

Как сказано в документации, вы можете увеличивать (но не уменьшать) количество ядер и процессоров без перелицензирования.

Однако Proxmox при изменении количества доступных процессорных ядер в контейнере меняет CoreID первого ядра.

То есть, если вы для начала сделали контейнер с 1 ядром и при лицензировании привязали его к CoreID 0. Вы удивитесь, когда, увеличив количество ядер до 4, нумерация CoreID будет не 0,1,2, 3 но 1,2,2,4 .

Соответственно, лицензии будут потеряны.

Если это произойдет, не отчаивайтесь.

Лицензии можно очень просто повторно активировать с помощью прилагаемых кодов.

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

Например, 9 для восьмиядерного сервера.

Тогда CoreID 0 вернется и не покинет вас.

Надеюсь, эти заметки кому-нибудь помогут Теги: #linux #*nix #Виртуализация #it-инфраструктура #Системное администрирование #Администрирование серверов #postgresql #1C #1C #proxmox ve

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.