0. capitan 1115 25.12.18 14:10 Сейчас в теме

Сервер 1С:Предприятие на Ubuntu 16.04 и PostgreSQL 9.6, для тех, кто хочет узнать его вкус. Рецепт от Капитана

Если кратко описать мое отношение к Postgres: Использовал до того, как это стало мейнстримом.
Конкретнее: Собирал на нем сервера для компаний среднего размера (до 50 активных пользователей 1С).
На настоящий момент их набирается уже больше, чем пальцев рук пары человек (нормальных, а не фрезеровщиков).
Следуя этой статье вы сможете себе собрать такой же и начать спокойную легальную жизнь, максимально легко сделать первый шаг в мир Linux и Postgres.
А я побороться за 1. Лучший бизнес-кейс (лучший опыт автоматизации предприятия на базе PostgreSQL).
Если, конечно, статья придется вам по вкусу.

Перейти к публикации

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо
98. oldcopy 118 27.12.18 19:42 Сейчас в теме
(94)
А в чем трабла?


Трабла с пониманием написанного, а спросить гордыня не позволяет.


(95)
А как быть с этим ?
установили 64-битный сервер, сохранили папку, снесли, вернули на место. Поставили i386 (x64 даже сносить руками не надо, пакетный менеджер сам заменит). Потом просто подключили к апачу нужную либу. А можно просто собрать либы по зависимостям и сделать скрипт, который будет их вытаскивать и раскладывать куда нужно.


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

Ставим 64-битную платформу и берем в руки утилиту ldd, с ее помощью, начиная от wsap24.so выясняем цепочку зависимостей библиотек. Причем нам нужны только библиотеки от 1С, которые в /opt/1C/v8.3/x86_64/, их там штук десять будет.

Потом пишем скрипт, который через dpkg -x будет извлекать содержимое 64-битных пакетов во временную директорию. Где вы возьмете эти пакеты - неважно, хоть скриптом качайте, хоть руками. Затем выбираем оттуда нужные либы и закидываем их в /opt/1C/v8.3/x86_64/, перезапускаем апач. Все работает. В чем проблема то?
90. capitan 1115 27.12.18 12:32 Сейчас в теме
Что касается машин - отличный пример.
Есть люди которые и пепельницу сами не вытряхивают, а ездят в сервис
Но если ты не уборщица из Газпрома, некоторые вещи приходится самому делать в автомобиле.
Поэтому я и написал - оба подхода имеют право на существование.
Но в этой реальности - как раз вы гаражные кулибины, потому что есть обычные пользователи, есть сервисные партнеры, а между ними вы.
91. Robbi 42 27.12.18 12:53 Сейчас в теме
Есть в статье полезные моменты.
Не согласен с тем, что надо ставить десктопную старую версию. Поиграться и потренероваться - да, Клиента там позапускать, но в продакшн только серверную версию. Ну и выбор компа и прочего - это индивидуальное дело каждого, даже для ориентира мне кажется лишнее это.
SerVer1C; denis_sov; +2 Ответить
93. capitan 1115 27.12.18 13:28 Сейчас в теме
(91)Про серверную версию уже раз восемьнадцать уже обсудили и переобсудили - отличаются только набором софта
103. klel 28.12.18 07:57 Сейчас в теме
Спасибо за подробную статью полезно :)
105. capitan 1115 28.12.18 11:13 Сейчас в теме
(103)Кстати... Спасибо обычно выражается плюсами в здешних местах )
104. capitan 1115 28.12.18 09:53 Сейчас в теме
Перечитал все комментарии и вспомнилось...
Первый международный конгресс блондинок.
На повестке дня три вопроса.
1. Все мужики сволочи.
2. Абсолютно нечего надеть
3. Прочее

Так же и здесь.
1. Зачем ставить linix если windows 10 прямо хорош.
Уважаемый Dragonim даже минус поставил. Вот это мой респект и уважение. Поддержал windows 10 в трудные времена
А они настали, если у евангелистов microsoft на ноуте макось.
Тут все понятно - у каждого свой выбор
2. Зачем ставить десктопную ОСь.
Ответили многие - на текущий день в ядре нет разницы.
По поводу GUI - как отключить написано.
Мне нравится то что можно поставить того же клиента 1С и пользователю будет привычнее
3. Прочее. Это уважаемый olcopy. Вроде все плохо, но вроде и непонятно что плохо.
Вроде нужен гуй, а вроде и не нужен. Вроде раньше и трава была зеленее...

Спасибо всем на добром слове, кто его сказал.
Спасибо за толковые замечания, поправил.
В принципе и за минусы тоже спасибо, как говорят восточные мудрости - если у тебя есть враги - ты не умер.
acanta; BoryaMbi; +2 Ответить
107. BoryaMbi 24 28.12.18 13:02 Сейчас в теме
Благодарю за публикацию.
108. capitan 1115 28.12.18 13:58 Сейчас в теме
(107)Спасибо на добром слове и найденную ошибку.
Образ загрузится наверное к завтрашнему утру. Очень долго идет. Новогодний трафик )
Всех с наступающим Новый Годом и Рождеством!
109. w.r. 180 29.12.18 08:08 Сейчас в теме
Очень сложно описано. 10.5 (10.5-9.С) с сайта 1С ставится на Ubuntu 16.4 LTS на:

раз

два

три

В 9.6 вылазят всякие ошибки, при нагрузках и без рвется соединение. 10.5 ведет себя намного стабильнее и работает быстрее
denis_sov; +1 Ответить
110. capitan 1115 29.12.18 12:25 Сейчас в теме
(109)10.5 если я ничего не пропустил пока официально неподдерживается
Т.е саппорта по нему не получить.
По хорошему надо наверное 9.5 пока было ставить, но логика от этого не поменяется
112. ansh15 29.12.18 16:25 Сейчас в теме
(110)
Т.е саппорта по нему не получить.

PostgreSQL, версия 10.5-9.1C с releases.1c.ru имеет статус актуальной версии с 19.12.18, так что саппорт(от 1С) может быть вполне доступен, при работе с платформой 8.3.13.
113. capitan 1115 29.12.18 16:46 Сейчас в теме
(112)О! Круто!
На самом деле - можно на 9.6 как обновление накатить
126. oldcopy 118 19.02.19 10:54 Сейчас в теме
(113) Нельзя! Обновляться можно только в пределах релиза, т.е. 9.6.х или 10.5.х, во всех остальных случаях выгружаем дампом все базы, включая служебные, удаляем старый Postgres, ставим новый, заливаем дамп назад.
111. capitan 1115 29.12.18 14:49 Сейчас в теме
(109) и я что то недопонял
(109)
раз

это из репозитория постгрес ставить предлагаете, не с постгрес про ?
115. w.r. 180 09.01.19 12:57 Сейчас в теме
(111)

Из этой ссылки нужно подключить только репозиторий posgres10 чтобы доставить необходимые пакеты. Основная установка отсюда https://releases.1c.ru/version_files?nick=AddCompPostgre&ver=10.5-9.1C
116. maks909 11.01.19 12:46 Сейчас в теме
Автору респект!
Я с 8.2 эксперементировал с установкой 1С сервера на Linux, но в продакшн так нигде и не внедрил. Сейчас для себя установил сервер, сижу эксперемментирую. Правда, я дебианщик и без GUI все это делал.
И не слушай виндузятников, с ними все понятно.
У меня один вопрос, какие параметры лучше выставлять в свойствах "Локального кластера", если я установил 1С сервер amd64.
Такие же как и у тебя рекомендуются:
Интервал перезапуска 86400
Допустимый объем памяти 2000000
Интервал превышения допустимого объема памяти 120
Выключенные процессы остановить через 600


Или другие порекомендуешь для amd64?
117. capitan 1115 11.01.19 14:48 Сейчас в теме
(116)
для amd64

Допустимый объем памяти 2000000
другой, если памяти больше,
на amd64 в принципе можно -1 поставить это вообще - без ограничений
тогда сервер 1С подвинет постгри если нужно будет по памяти
ограничение в 2000000 нужно чтобы 32х разрядный сервер не выел больше чем сможет переварить

А за добрые слова - мой глубокий мерси )
118. maks909 12.01.19 09:55 Сейчас в теме
кстати, идея для дополнения статьи.
можно еще описать как разграничить права доступа к БД.
например, есть Зарплата и Бухгалтерия.
и задача разграничить физический доступ пользователей к базам, на уровне Postgre.
на файловой версии я это делал создав 2 группы пользователей и задав разрешения на папки баз.
в postgre я представляю, что необходимо создать 2 пользователей в postgre и создавать БД от разных пользователей, но это в теории.
надо практиковаться, там явно будут подводные камни, как например, если появляется необходимость пользователю Зарплаты добавить права доступа к Бухгалтерии и т.п.
сам тоже буду с этим разбираться, но чуть позже.
сначала просто потестирую сервак по нагрузкам.
119. ansh15 12.01.19 12:20 Сейчас в теме
(118)
если появляется необходимость пользователю Зарплаты добавить права доступа к Бухгалтерии и т.п.

Учитывая, что в клиент-серверном варианте пользователь информационных баз 1С имеет доступ к ИБ исключительно через призму сервера приложений 1С(который только и общается с СУБД), никакого физического доступа к файлам баз данных СУБД пользователям делать не нужно. Это не файловый вариант, когда пользователь, от имени которого запускается толстый клиент, должен иметь права доступа к папке с ИБ и файлам в ней.
пользователю Зарплаты добавить права доступа к Бухгалтерии

Пользователь Зарплаты заводится в ИБ Бухгалтерии. И все.
120. maks909 12.01.19 15:05 Сейчас в теме
(119)
не секурно.
Например, частый случай. Директор или бухгалтер просит организовать доступ к серверу из дома.
Непроблема.
Но что если на сервере работают несколько организаций и когда ты создаешь БД для одной и для другой организации используя один и тот же логин/пароль для доступа к СУБД, они теоретически могут подключить и чужую базу, зная логин/пароль БД, им остается только выяснить имя БД.
что в принципе тоже не сложно, имея логин/пароль, который нужно ввести в pgAdmin.
Я понимаю, что сам бухгалтер или директор, как правило,этим не занимаются, но вот их "любопытные" детишки, которым только дай повод что-нить поломать :)
поэтому я считаю, что вопрос разграничения прав доступа к СУБД имеет место быть.
если ты даешь сведения для подключения к БД человеку, которому нужен этот доступ, то тут его ответственность следить за тем, чтобы с его же БД ничего не случилось, а если этот человек получает доступ к тем базам, которые от него должны быть скрыты, то это уже ответственность админа, за секьюрность баз.
121. starik-2005 1689 12.01.19 15:58 Сейчас в теме
(120)
оэтому я считаю, что вопрос разграничения прав доступа к СУБД имеет место быть.
1С к базе, подключенной к конкретному экземпляру сервера, подключается по логину и паролю в свойствах подключения. Если кто-то знает логин и пароль базы 1С на кластере, то он в любом случае сможет подключиться к этой базе, т.к. пользователь и пароль к серверу СУБД задается в момент создания базы.

Выйти из положения можно с помощью механизма авторизации в базе через учетку ОС. Но если знать пароль к конкретной базе 1С, то ничто не запретит тебе туда подключиться, ИМХО. Выход - два(три/пять/сто...) сервера 1С. Но никто ведь не сможет гарантировать, что чел, который узнал логин и пароль к учетке 1с не сможет узнать логин и пароль к учетке ОС, да? )))
122. maks909 12.01.19 17:22 Сейчас в теме
(121)
1С к базе, подключенной к конкретному экземпляру сервера, подключается по логину и паролю в свойствах подключения. Если кто-то знает логин и пароль базы 1С на кластере, то он в любом случае сможет подключиться к этой базе, т.к. пользователь и пароль к серверу СУБД задается в момент создания базы.


Вот я об этом же и говорю, что не хочу чтобы под одним и тем же паролем могли видеть разные базы.
Хочу, чтобы одна база создавалась под одним логинам/паролем, другая под другим.
Все будет тип-топ.

И да, может я не верно излагаю мысли... тогда вот ссылками попробую
https://habr.com/post/334558/
как раз сейчас к 1С все разграничения к доступу к базам 1С производятся по 2му способу, описанному по статье по ссылке.
Я же с автором поста, указанного выше, полностью согласен - это не секьюрно.
123. capitan 1115 18.01.19 16:48 Сейчас в теме
(122)
Вы отделите мух от котлет.
В файловой базе одинаковые права на файловую систему дают право видеть соседнюю базу.
А в клиент-сервере это не так. Она поэтому и считается более защищенной.
Пользователь знает логин пароль от 1С, но не от скуль базы. Поэтому никуда он подключиться не сможет
Никто не мешает создавать базы в постгри под разными логинами но безопасности это не прибавит.
124. capitan 1115 21.01.19 09:51 Сейчас в теме
Ссылка на загрузку образа Ubuntu 16.04 LTS для virtualbox
и файл настроек postgresql
Прикрепленные файлы:
postgresql.auto.conf
Образ Ubuntu 16.04 LTS для virtualbox.txt
denis_sov; +1 Ответить
125. user1158133 19.02.19 01:36 Сейчас в теме
Спасибо за статью.
Можете чуть подробне про:
1. Бекапы БД: как, когда, чем.
2. Востановление если произошла проблема при обновлении конфигурации 1С, на файловом варианте это делалось бекапом каталога.
3. Резервирование БД, делаете master/slave конфигурацию postgres?
4. Пробовали разностить БД и приклад по разным железкам, разница в производительности есть?
5. Помимо etx4, пробовали btrfs, xfs?
127. DoctorRoza 19.02.19 11:45 Сейчас в теме
Скажите, пожалуйста, на текущий момент, для линукса, 1С предоставляет около 10 бесплатных, серверных лицензий? Мне нужно развернуть в VM убунту сервер, Postgre и ERP2.4 для тестирования. Клиентский ключ есть.
128. oldcopy 118 19.02.19 18:26 Сейчас в теме
(127)
Скажите, пожалуйста, на текущий момент, для линукса, 1С предоставляет около 10 бесплатных, серверных лицензий?


1С никогда не предоставляло и не предоставляет бесплатных серверных лицензий, другое дело, что технические особенности реализации сервера под Linux позволяют до 12 подключений без ключа. Но использование этой возможности в продакшене равносильно использованию взломанной платформы.
129. DoctorRoza 19.02.19 19:48 Сейчас в теме
(128) согласитесь, что разработчик платформы может без труда закрыть эту техническую особенность. Мне же необходимо знать - сейчас эта особенность осталась?
130. capitan 1115 19.02.19 21:54 Сейчас в теме
(129)Вы задаете вопросы которые не совсем уместны
132. SerVer1C 157 20.02.19 10:24 Сейчас в теме
(129) С версии платформы 8.3.11 данную лазейку прикрыли.
131. AntonSm 22 20.02.19 08:51 Сейчас в теме
(128) Подскажите, пожалуйста, если знаете.
А что если эту возможность использовать не в продакшене, а в тестовом контуре?
Это тоже будет равносильно использованию взломанной платформы?
133. oldcopy 118 20.02.19 11:40 Сейчас в теме
(131)
А что если эту возможность использовать не в продакшене, а в тестовом контуре?
Это тоже будет равносильно использованию взломанной платформы?


Если на склад забыли повесить замок, то означает ли это, что я могу зайти туда и что-то там взять? Так, чисто для себя...
134. zayden 16 22.02.19 12:41 Сейчас в теме
Господа есть HP 10ml v2 сервер с ссд дисками 16 гб озу и камнем g3210 - вопрос такой если перейти на Ubuntu 16.04 и PostgreSQL 9.6 вместо виндовс и sql 2008 - даст ли это прирост производительности?
135. capitan 1115 22.02.19 13:07 Сейчас в теме
(134)Крайне маловероятно что уход с виндовс и sql 2008 даст прирост производительности.
Особенно под серьезной нагрузкой и без серьезного ковыряния настроек
Это даст экономию на лицензиях
136. w.r. 180 25.02.19 12:13 Сейчас в теме
Если ставить PostgreSQL на Ubuntu 16.04 и выше, то не нужно менять значения параметров ядра kernel.shmmax и kernel.shmall - они выставлены и по-умолчанию на максимум
137. capitan 1115 25.02.19 13:00 Сейчас в теме
(136)По честному говоря не проверял, на автомате так всегда делаю. У меня эта статья - типа чек-листа.
Хуже же от этого не будет, правда ?
138. w.r. 180 25.02.19 13:10 Сейчас в теме
(137) ну вот не уверен, что хуже не будет. Возможно вашими параметрами вы уменьшаете количество доступной разделяемой памяти для СУБД

Вообще по-умолчанию это выглядит как-то вот так

$ sysctl -n kernel.shmmax
18446744073692774399
$ sysctl -n kernel.shmall
18446744073692774399
139. capitan 1115 25.02.19 14:01 Сейчас в теме
(138)Но у меня значения рекомендованные 1С
https://its.1c.ru/db/metod8dev/content/5822/hdoc

Они кстати совсем недавно отредактировали статью, раньше она по другому выглядела, но это оставили.
140. w.r. 180 25.02.19 21:32 Сейчас в теме
(139) так это же для доисторического можно сказать Debian 4, который вышел в апреле 2007 года. Тогда и ядро Linux было версии 2.6, а сейчас уже 5я версия на подходе
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Нижний Новгород
зарплата до 120 000 руб.
Полный день

Программист 1С
Волгоград
зарплата от 45 000 руб. до 90 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Консультант-аналитик 1С
Москва
зарплата от 70 000 руб. до 100 000 руб.
Полный день

Программист 1С
Москва
зарплата от 80 000 руб. до 120 000 руб.
Временный (на проект)