Имя: Пароль:
1C
1С v8
блокировка сеансов в 1с на debian
0 Kolotov
 
13.08.19
14:41
Здравствуйте, у нас установлен сервер 1с на debian с postgres.
При обновлении в 1с вылезает ошибка:
http://joxi.ru/v29VpdEcZKMLaA

у меня подозрение, что перед обновлением необходимо сделать блокировку сеансов в 1с, но я не могу найти как это делается на debian в кластере.
Подскажите, как заблокировать начала сеансов в кластере 1с на debian?
1 spiller26
 
13.08.19
15:19
(0) У меня виртуалка для этого есть ВинХП, а так через rac.
2 spiller26
 
13.08.19
15:23
Вот такая ещё штука есть https://habr.com/ru/post/415835/ ,но так и не смог ей пользоваться.
3 spiller26
 
13.08.19
15:26
4 spiller26
 
13.08.19
15:34
В конфигурациях есть общ.модуль "АдминистрированиеКластераRASКлиентСервер", там есть шаблоны строк терминальных. Думаю разберетесь.

// Устанавливает значения свойств информационной базы.
//
// Параметры:
//  ПараметрыАдминистрированияКластера - Структура - описывает параметры подключения к кластеру серверов,
//    описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(),
//  ПараметрыАдминистрированияИнформационнойБазы - Структура - описывает параметры подключения к информационной базе,
//    описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияИнформационнойБазыКластера(),
//  Словарь - Структура - соответствие имен свойств для API и потока вывода утилиты rac.
//  ЗначенияСвойств - Структура - устанавливаемые значения свойств информационной базы:
//    * Ключ - имя свойства в нотации API,
//    * Значение - устанавливаемое для свойства значение.
//
Процедура УстановитьСвойстваИнформационнойБазы(Знач ПараметрыАдминистрированияКластера, Знач ПараметрыАдминистрированияИБ, Знач Словарь, Знач ЗначенияСвойств)
    
    Шаблон = "%rac infobase --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% update --infobase=%infobase% --infobase-user=%?infobase-user% --infobase-pwd=%?infobase-pwd%";
    
    Параметры = Новый Соответствие();
    
    ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера);
    Параметры.Вставить("cluster", ИдентификаторКластера);
    ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры);
    
    ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ);
    Параметры.Вставить("infobase", ИдентификаторИнформационнойБазы);
    ЗаполнитьПараметрыАутентификацииВИБ(ПараметрыАдминистрированияИБ, Параметры);
    
    ЗаполнитьПараметрыПоСловарю(Словарь, ЗначенияСвойств, Параметры, Шаблон);
    
    ВыполнитьКоманду(Шаблон, ПараметрыАдминистрированияКластера, Параметры);
    
КонецПроцедуры
5 Kolotov
 
13.08.19
15:48
я видел эти команды управления кластером в линукс, я только нигде не могу найти параметр блокировки начала сеансов.
и зачем вы winxp держите для этого, как то с помощью нее можно сделать?
6 spiller26
 
13.08.19
16:02
(5) Сподручнее, т.к. нужно помнить название всех баз и держать под рукой их.
Так повелось, я не прям уж супер-пупер в Линуксе. Пришел в организацию, а тут всё на Линукс, ну и пришлось всё строить с нуля, благо коллектив ИТ хороший попался, помогал, вот так и освоил чуть по чуть. Практически слез с Винды.
7 Kolotov
 
13.08.19
16:06
т.е. вы кластером который под линуксом управляете с компьютера под windows? можно так сделать? Если допустим на винде запустить оснастку кластера 1с , но указать адрес линукса?
8 spiller26
 
13.08.19
16:07
"БлокировкаСеансов", "sessions-deny"
"БлокировкаРегламентныхЗаданий", "scheduled-jobs-deny"

Вот примерно такая строка получиться

/opt/1C/v8.3/x86_64/rac" 192.168.X.XX:1545 infobase summary --cluster="00000000-0000-000-0000-0000000" --cluster-user=usernameadmincluster --cluster-pwd=PasswordAdminCluster sessions-deny
9 spiller26
 
13.08.19
16:10
(7) А почему нет. Легко всё работает. Добавлять и убирать базы, управление пользователями и 1С-серваком. Всё работатет.
10 spiller26
 
13.08.19
16:13
(9) Виртуалка стоит на VirtualBox, ВинХП не требовательная.
В линуксе работает всё через rac, а в винде через com.
11 Kolotov
 
13.08.19
16:38
может напишешь сразу как после блокировки сеансов ....sessions-deny их разблокировать, как команда будет выглядеть?
и как можно на комп с виндой поставить только консоль подключения к кластеру 1с?
12 Фрэнки
 
13.08.19
16:41
(11) консоль подключения - это когда ставишь платформу в винде - там есть отдельный пункт - утилита администрирования серверов.

Вот она и позволяет.

А вообще интересно, у вас программист 1С в чем-то работает? Или никто в конфигуратор 1С не лазит?
13 spiller26
 
13.08.19
16:49
(11) sessions-deny=on  
sessions-deny=off
14 spiller26
 
13.08.19
16:50
(11) Я смотрю вы не ищете лёгких путей.
15 spiller26
 
13.08.19
16:56
(12) Я буду дико угорать если программист 1С будет открывать у них конфигуратор и кодить под виндой, т.к. наступать на грабли будет постоянно, когда иметь дело с файлами.
У меня был помощник, который так делал, а потом выкладывал, а оно не работало.
Забудьте про COM соединения в принципе и подключение виндовых библиотек, в коде тупо будет выглядеть так "Если Линукс То досвидос".
16 Фрэнки
 
13.08.19
16:57
Если конфигуратор 1С где-то запускают, то там же можно и вот это запускать

"C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc"

И обвязка вот эта без установленной платформы не заработает или надо вручную ее заново выбирать из бин-каталога, просто не смотрел, какие конкретно длл для нее нужны.
17 Фрэнки
 
13.08.19
16:59
(15) да угорай, только не порви живот

Я насколько сталкивался - да, не юзают ком-соединения и файловые соединения пишутся как положено в линукс, если до этого доходит кодинг.

Просто, а как обновляют типовые ЗУП или там БП3 ? Никак ? При наличии дописываемых процедур?
18 spiller26
 
13.08.19
17:06
(17) Я имел в виду когда своё будут дописывать.
А так в типовых всё настраивается.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.