Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

0. Зміст

1. Постановка завдання

Припустимо є працюючий сервер «1С: Підприємства» версії 8.2. Причому агент сервера запущений як служба і обрані стандартні параметри запуску агента сервера, т. Е:

  • Номер мережевого порту агента сервера - 1540
  • Номер мережевого порту менеджера кластера - 1 541
  • Діапазон портів для динамічного вибору - 1560: 2591
  • Дані кластери розташовані в каталозі: «C: \ Program Files \ 1cv82 \ srvinfo»
  • Служба запускається від локального користувача USR1CV8

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Запустимо і настроєм для роботи на цьому ж фізичному комп'ютері сервер «1С: Підприємства» версії 8.3.

2. Встановлення серверної частини «1С: Підприємства» версії 8.3

Запускаємо установку сервера «1С: Підприємства» (докладно про установку сервера «1С: Підприємства» я писав тут), вибираємо для установки компоненти:

  • Компоненти доступу до серверів 1С: Підприємства 8
  • Сервер 1С: Підприємство 8

А заодно запам'ятаємо каталог установки файлів «1С: Підприємства» (в даному випадку - «C: \ Program Files \ 1cv8 \ 8.3.4.389»).

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Сервер «1С: Підприємства» встановлюємо не як службу, а як додаток, т. Е. Знімаємо прапор «Встановити сервер 1С: Підприємства 8 як сервіс Windows» під час установки.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

3. Реєстрація сервера «1С: Підприємства» версії 8.3

Тепер вручну зареєструємо новий сервер «1С: Підприємства» як службу Windows, зі зміненими параметрами. Для цього скористаємося командним рядком або програмою Windows PowerShell. Запустити PowerShell можна виконавши команду powershell (для цього необхідно натиснути комбінацію клавіш Win + R, у вікні «Виконати» (Run) ввести ім'я команди в полі «Відкрити» (Open) і натиснути «ОК») або клікнувши по відповідному ярлику в панелі задач.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

У відкрилася консолі Windows PowerShell, для зручності введення подальших команд перейдемо в каталог bin каталогу з встановленими файлами «1С: Підприємства» (каталог з пункту 1), виконавши команду

Якщо сервер «1С: Підприємства» версії 8.3 все ж був встановлений раніше як служба, необхідно видалити існуючу реєстрацію сервера. Для цього необхідно виконати команду

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

А також необхідно видалити всі файли каталогу реєстру кластера, минулого установки сервера «1С: Підприємства». За замовчуванням це директорія C: \ Program Files \ 1cv8 \ srvinfo.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Тепер можна переходити до реєстрації нової служби агента сервера «1С: Підприємства». Т. к. Порти, використовувані за замовчуванням (1540. 1541. 1560-1690) вже зайняті службою сервера «1С: Підприємства» версії 8.2, необхідно використовувати альтернативні порти, наприклад 2540. 2541 і діапазон 2560-2591. Для реєстрації сервера з даними параметрами виконаємо команду

(Детально про параметри запуску агента сервера «1С: Підприємства» можна прочитати в статті Агент сервера «1С: Підприємства» 8.3 і його параметри запуску)

В даному прикладі виконується реєстрація сервера з наступними значеннями параметрів:

  • Номер мережевого порту агента сервера - 2540
  • Номер мережевого порту менеджера кластера - 2541
  • Діапазон портів для динамічного вибору - 2560: 2591
  • Служба запускається від імені локального користувача - USR1CV8
  • Пароль користувача від імені якого запускається служба - UsrPass8
  • Дані реєстру кластера розташовані в каталозі «C: \ Program Files \ 1cv8 \ srvinfo»
  • Якщо необхідно включити налагодження на сервері необхідно до рядка запуску додати параметр -debug

Ну і відразу зробимо запуск служби, виконавши команду

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Перейдемо в служби Windows і побачимо, що в списку з'явилася необхідна служба з ім'ям 1C: Enterprise 8.3 Server Agent (x86-64). Служба запущена, і при запуску служби використовуються введені тільки що параметри.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

А якщо перейти в каталог з файлами реєстру кластера, ми побачимо що там з'явилися відповідні файли.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

4. Додавання правила в Брандмауер Windows для використовуваних портів

5. Додавання сервера «1С: Підприємства» версії 8.3 в консоль адміністрування серверів

Для адміністрування сервера «1С: Підприємства» використовується консоль адміністрування серверів «1С: Підприємства». Відкрити консоль адміністрування необхідної версії можна з підкаталогу common каталогу з встановленими файлами програми «1С: Підприємства» (не обов'язково даного комп'ютера - консоль можна встановити окремо на будь-який комп'ютер в мережі), запустивши оснащення 1CV8 Server (x86-64) .msc.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

В консолі адміністрування серверів «1С: Підприємства», клікнувши правою кнопкою миші в дереві настроювань на вкладці «Central 1C: Enterprise 8.3 servers», виберемо в контекстному меню пункт «Створити» - «Центральний сервер 1С: Підприємства 8.3».

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

У вікні параметрів центрального сервера «1С: Підприємства» вкажемо:

  • Протокол - tcp
  • Ім'я - ім'я комп'ютера, на якому запущено сервер «1С: Підприємства»
  • IP порт - номер мережевого порту агента сервера, в даному випадку 2540
  • Опис - довільне опис центрального сервера «1С: Підприємства»

Натискаємо «ОК» для збереження введених параметрів.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Після чого тільки що встановлений сервер «1С: Підприємства» версії 8.3 буде доступний для адміністрування через дану оснастку.

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Паралельний запуск декількох серверів «1с підприємства» різних версій на одному комп'ютері

Дякуємо.
Віталій, у мене до вас ще два питання
1) Якщо, в основному, використовується 1С v8.3, а 8.2 є тимчасовою то як на Ваш погляд, більш правильніше (логічніше?) Вступити - перекинути порти 8.2 або 8.3?
У мене просто дається взнаки специфіка Криму 🙂 На фірмі стояла версія 8.2, зараз перехід на російську бухгалтерію і апдейт до 8.3 ... Ось тільки підчищати хвости ще пару місяців доведеться в 8.2
2) І друге питання - якщо Вам доводилося стикатися з Агент + (зв'язка моб пристроїв з 1С), то не могли б Ви написати гайд по установці, налаштуванні і інтеграції агента в 1С

Віталій Онянов каже:

Ставте 8.3 на основні порти, а 8.2 на змінені. Згодом, 1С все конфігурації на 8.3 переведе. Ви, до речі, цього не чекаючи, також можете спробувати перевести наявні у вас інформаційні бази на платформу версії 8.3. У цьому випадку другий сервер не знадобиться. А з Агентом +, на жаль (чи на щастя) стикатися поки не доводилося. 🙂

Віталій, у Вас очепятка в тексті

\ Ragent.exe - ... -usr. \ USR1CV8 ...

USR1CV8 - це користувач запуску служби 1С v8.3
Якщо версія 8.3 ставиться поверх раніше встановленої 8.2, то правильним ім'ям користувача буде USR1CV82

Для більш точного сприйняття початківцями я б рекомендував додати до статті пунктик про імені користувача, яке буде:
У разі якщо ви ставите версію 8.2 поверх раніше (і вперше) встановленої версії 8.3, то ім'ям користувача буде USR1CV8
У разі, якщо ви встановлюєте версію 8.3 поверх раніше (і вперше) встановленої версії 8.2, то ім'ям користувача буде USR1CV82
Для того, щоб переконатися в правильності імені користувача зайдіть в
Панель управління -> Облікові записи користувачів -> Управління іншим користувачем
І порівняйте ім'я користувача, яке Ви будете вводити в PowerShell з ім'ям Локального користувача в даному апплете

Ну або чет тип того 🙂

З повагою, Newdjeen

Віталій Онянов каже:

Після реєстрації з новими портами не вдалося запустити службу.
В C: \ Program Files \ 1cv8 був відсутній каталог srvinfo, у властивостях служби в параметрі «виконуваний файл» прописувалося так «C: \ Program Files \ 1cv8 \ srvinfo \\».
Спробував при реєстрації прописати -d «c: \ temp \ srvinfo» - запрацювало.
Тобто схоже: «У користувача з під якого запускається служба немає прав на запис в каталог розташування файлів служби.» Я так розумію, що мова йде про права «USR1CV8». А як це виправити?

Віталій Онянов каже:

Так все вірно.
У користувача з під якого запускається служба ( «USR1CV8») повинні бути налаштовані права для запису в в зазначений з властивостях служби каталог ( «C: \ Program Files \ 1cv8 \ srvinfo \»).
Про те, як налаштовувати права доступу до тек для кожного окремого користувача або груп користувачів я писав тут.

Привіт, є необхідність оновити 1с8 до останньої версії, але керівництво хоче поставити другу версію при працюючій першої, налаштувати її і перенести або забити заново, і тільки потім відключити першу. Чи є оптимальний варіант для такого рішення, і чи не буде більше проблем з двома версіями ніж оновлення просто першої версії до актуального значення?

Віталій Онянов каже:

Привіт, постараюся відповісти на ваше запитання.
Я не раз оновлював реліз до останньої версії так би мовити «наживу». Включаючи навіть такі великі скачки, як перехід з 8.2.17 на 8.3.5. Практично завжди такий перехід проходив безболісно (якщо конфігурації типові, або не сильно змінені). Але гарантувати, що все пройде гладко в вашому випадку, я, звичайно ж, не можу. Найбільш правильним, мені здається, такий підхід до поставленого завдання:

  • Встановити паралельно другий сервер «1С: Підприємство» необхідної версії (якщо ресурсів комп'ютера досить, обидві служби працюватимуть без проблем).
  • Створити на новому сервері копію робочої бази.
  • Протестувати новинку на створеної копії бази.
  • Якщо все ок, то в день «Х» виконати перехід на новий реліз платформи на «бойовому» сервері. Якщо немає, то виправляти помилки доти, поки всі тести не будуть пройдені.

Варіант з «поставити другу версію при працюючій першої, налаштувати її і перенести або забити заново, і тільки потім відключити першу» мені здається не дуже вдалим.

Інструкція робоча. Тільки що з нуля встановив на свіжий сервер 2 версії 1С - 8.2 і 8.3. Запускаю їх від різних користувачів, створених спеціально під кожну версію. Якщо у вас не запускається служба після створення, то перевірте доступ користувача, під яким ви запускаєте 1С, до робочого каталогу. У мене в цьому була проблема.

Якщо не злетіло по мануалу, то потрібно зробити наступні маніпуляції:
Очистити папку srvinfo в C: \ Program Files \ 1cv8 \ srvinfo \ видаливши всі файли і папки з неї
Запустіть службу «Агент сервера 1С: Підприємство»
Через Адміністрування серверів 1С Підприємства по новій створити кластер 1С і додати інформаційні бази.

(Адмін, додай будь ласка в мануал)

Віталій Онянов каже:

Віталій Онянов каже:

Без проблем можна запустити хоч греблю гати різних серверів 1С, будь-яких версій.
Необхідно просто поміняти ім'я служби, змінити порти і каталог зберігання файлів кластера.
Інструкцій багато, наприклад ця.

з програмною ліцензією в моєму вийшло так, що на початку все працювало, потім ліцензія злетіла. 1С8.3 при паралельному отриманні ліцензії створив свій файл lic через що почався конфлікт файлів lic для 1С8.2. В результаті програмна ліцензія поширюється тільки на 1С8.2

Вітаю! Зробив все по інструкції, вручну додав центральний сервер для 1С8.3, перевірив, що для 1С8.2 і 1С8.3 задані різні порти 1540 2540, все запрацювало. Але при наступному запуску оснащення з відповідного каталогу для 1С8.2 і 1С8.3, в обох випадках один і той же порт 1540 або 2540, в залежності від того, який порт було поставлено останнім. Видалив в обох оснащеннях сервер і прописав вручну з різними портами, але ситуація не змінилася.

з консолями допоміг такий варіант:

«У папці \ AppData \ Local \ 1C \ 1cv8 є файлик location.cfg в якому тупо прописаний шлях до папки \ AppData \ Local \ 1C \ 1Cv82, в якій знаходиться файлик appsrvrs.lst зі списком центральних серверів. Тому використовується для 8.3 і 8.2 один і той же список серверів. Потрібно видалити файл location.cfg і замість нього створити файл appsrvrs.lst зі списком серверів 8.3. Тоді списки серверів 8.2 і 8.3 будуть різними. mista.ru »

Андрій С. каже:

Вітаю,
спасибі за корисну статтю. У мене питання: як налаштувати клієнта 1С, щоб він звертався до сервера, що працює на нестандартних портах?
Заздалегідь вдячний за відповідь

Віталій Онянов каже:

Віталій здрастуйте!
У мене така проблема.
У мене на одному фізичному сервері розгорнуті два сервера 1С (8.2- робочий і 8.3-дослідний).
8.2 - порт агента сервера 1540, 8.3 - порт - 1740
8.3 давно не оновлювали. (7 місяців).

Стоїть завдання: відновити конфігурацію БД 8.3 до останнього релізу і відповідно оновити платформу 8.3 до останньої.
Що роблю:
- Скачала технологічну платформу 8.3 для Win.
- Зупинила службу агента сервера 8.3
- Встановила платформу 8.3
Далі заплуталася:
в розділі bin нової платформи немає ragenta, що б прописати порти для 8.3

Що роблю не так?