Зберігання налаштувань кластера серверів 1С:Підприємства 8.1
Розділ містить перелік даних, що описують кластер серверів 1С:Підприємства 8.1, та їх розташування. Для найважливіших даних дано пояснення щодо їх зберігання. Розділ не містить вичерпного опису всіх даних, які керують роботою кластера.
Робочий каталог центрального сервера
Під час встановлення на комп'ютер сервера 1С:Підприємства 8.1 відбувається вибір робочого каталогу центрального сервера. Зазвичай, цей каталог "C: Program Files 1cv81 server", який розташовується поруч з каталогом завантажувальних модулів 1С: Підприємства 8.1. Цей каталог вказується в рядку запуску агента сервера 1С:Підприємства 8.1 під час його реєстрації як сервіс Windows.
При запуску агента сервера 1С:Підприємства 8.1 може бути вказаний робочий каталог центрального сервера. І тому використовується параметр -d. Наприклад:
ragent -d "C:\Program Files\1cv81\server"
Якщо параметр -d не вказаний, то як робочий каталог центрального сервера використовується каталог:
C:\Documents and Settings\Local Settings\Application Data\1C\1Cv81
де – Ім'я користувача Windows, від імені якого стартує агент сервера 1С: Підприємства 8.1.
У робочому каталозі центрального сервера розташовується файл керування агентом та робочі каталоги кластерів, які зареєстровані на цьому комп'ютері.
Файл списку кластерів
Список кластерів має назву srvribrg.lst. Нижче наведено приклад його вмісту з поясненнями:
Файл складається із двох частин. У першій частині перелічені кластери, які зареєстровані на цьому комп'ютері.Відповідно до цієї інформації агент сервера (ragent) запускає на цьому комп'ютері процеси менеджерів кластерів (rmngr). У наведеному прикладі до списку кластерів відносяться рядки:
Тут зареєстровано два кластери з описами "Локальний кластер" та "Другий кластер", що мають порти, відповідно, 1541 і 1641. Обидва кластери розташовані на даному комп'ютері, ім'я або IP-адреса якого – server_name.
Важливо, що при зміні імені або адреси комп'ютера, а також при копіюванні робочого каталогу кластера на інший комп'ютер, ім'я або IP адреса комп'ютера повинні бути змінені у файлі керування агентом. Інакше кластер серверів стартувати не зможе.
При першому запуску агента сервера після встановлення він створює кластер за промовчанням. При цьому список кластерів зазвичай виглядає так:
Якщо при першому запуску агента кластера виникли проблеми, то кластер за замовчуванням може бути не створений. Це в тому, що з запуску агента сервера (ragent) він стартує, але з запускає інші процеси кластера (rmngr, rphost). Список кластерів виглядає так:
У цьому випадку можна зупинити процес ragent, видалити список кластерів (srvribrg.lst) і запустити ragent знову. Крім того, кластер може бути створений за допомогою утиліти адміністрування клієнт-серверного варіанта роботи.
Друга частина списку кластерів містить список адміністраторів центрального сервера. У наведеному прикладі до нього відносяться рядки:
Наявність хоча б одного адміністратора у цьому списку потребує аутентифікації адміністратора центрального сервера під час створення нового кластера. Порожній список адміністраторів центрального сервера має вигляд:
Робочий каталог кластера
Робочі каталоги кластерів розміщуються у робочому каталозі центрального сервера під іменами reg_. Наприклад, для кластера з портом 1541 робочий каталог кластера матиме ім'я reg_1541. Він створюється під час створення кластера і містить всю інформацію про роботу кластера. При видаленні кластера за допомогою утиліти адміністрування клієнт-серверного варіанта роботи робочий каталог кластера зберігається. У робочому каталозі кластера міститься файл реєстру кластера та робочі каталоги інформаційних баз.
Файл реєстру кластера
Файл реєстру кластера містить загальні параметри кластера та списки:
- робочих серверів,
- робочих процесів,
- інформаційних баз,
- адміністраторів кластера.
Нижче наведено приклад файлу реєстру кластера з поясненнями.
та містить загальні параметри кластера, які можна побачити серед властивостей кластера в утиліті адміністрування клієнт-серверного варіанта роботи. Ім'я або IP-адреса центрального сервера кластера (server_name_1) має бути змінено при зміні імені або IP-адреси центрального сервера кластера або у разі копіювання файлу реєстру кластера на інший комп'ютер.
Другий розділ файлу у наведеному прикладі містить рядки:
та визначає список інформаційних баз, зареєстрованих у кластері. У наведеному прикладі визначено дві інформаційні бази. Перша з ім'ям InfoBase1 розташована на Microsoft SQL Server з ім'ям db_server1 у базі даних dbname1, вхід до SQL Server виконується від імені користувача dbuser1. Друга з ім'ям InfoBase2 розташована на IBM DB2 з ім'ям db_server2 у базі даних dbname2, вхід до IBM DB2 виконується від імені користувача dbuser2.Вміст цього розділу змінюється за допомогою утиліти адміністрування клієнт-серверного варіанта роботи під час створення/видалення інформаційних баз. Змінювати цей розділ не рекомендується.
Наступний розділ визначає перелік робочих процесів кластера. У наведеному прикладі до нього відносяться рядки:
Тут визначено два робочі процеси, що запускаються на робочих серверах server_name_1 (цей же комп'ютер виконує функції центрального сервера) та server_name_2. До кожного робочого процесу зберігається статистична інформація, зібрана у його роботи. Імена або IP-адреси робочих серверів повинні бути змінені при зміні імен або IP-адрес робочих серверів, а також при копіюванні файлу реєстру кластера на інший комп'ютер.
Четвертий розділ визначає список адміністраторів кластеру. У наведеному прикладі він складається з рядків:
У прикладі визначено два користувача з ідентифікаторами user1 та User2, іменами "Користувач 1" та "Користувач 2", причому для користувача User2 задана автентифікація операційної системи. Якщо цей список не порожній, то для перегляду та зміни будь-яких даних кластера за допомогою утиліти адміністрування клієнт-серверного варіанта роботи або об'єкта V81.COMConnector потрібна автентифікація адміністратора кластера.
Останній розділ містить список робочих серверів кластера. У нашому прикладі до нього відносяться рядки:
| ВАЖЛИВО! Усі дані, які зберігаються в робочому каталозі центрального сервера та його підкаталогах, не призначені для редагування вручну. Для зміни даних кластера серверів 1С:Підприємства використовуйте утиліту адміністрування клієнт-серверного варіанта роботи або об'єкт V81.COMConnector.Копіювання файлів робочого каталогу центрального сервера та його підкаталогів до інших каталогів як одному комп'ютері, і інших комп'ютерах, не рекомендується. Наведена вище інформація має ознайомлювальний характер. |
Найчастіше для установки 1C:Підприємства 8.1 у варіанті “клієнт-сервер” достатньо запуску програми установки 1С:Підприємства 8.1. У цьому сервер 1С:Підприємства отримує стандартні значення параметрів, необхідні його нормального функціонування.
Розглянемо встановлення сервера 1С:Підприємства більш детально. У процесі встановлення сервера 1С:Підприємства 8.1 програма установки 1С:Підприємства 8.1 виконує такі дії:
- Копіює завантажувальні модулі сервера 1С:Підприємства в каталог, вказаний програмою установки 1С:Підприємства як кінцева папка.
- Якщо в процесі встановлення вибрано "Створити користувача USR1CV81", створює користувача USR1CV81. Від імені цього користувача працює сервер 1С:Підприємства 8.1, якщо він запускається як сервіс. Йому доступні лише ті ресурси, які необхідні серверу 1С:Підприємства. Важливо, що серверу 1С:Підприємства для роботи необхідні два каталоги: загальний каталог з даними сервера (зазвичай "C: Program Files 1cv81 server") і каталог тимчасових файлів (звичайно C: Documents and Settings usr1cv81 Local Settings \Temp" або "C:\WINNT\Temp"). Користувач USR1CV81 отримує права на загальний каталог із даними сервера. Каталог тимчасових файлів зазвичай доступний для всіх користувачів.
- Якщо в процесі установки увімкнено "Встановити сервер 1С:Підприємства 8.1 як сервіс Windows", то реєструє в Windows сервіс агента сервера 1С:Підприємства та запускає його.При першому запуску створюється кластер серверів 1С:Підприємства з стандартними налаштуваннями. У ньому один робочий сервер та один робочий процес. Адреса робочого сервера збігається з ім'ям комп'ютера, на якому встановлена установка.
Користувач USR1CV81 та його права
Сервер 1С:Підприємства є серверним додатком робота якого не повинна залежати від того, який користувач увійшов до серверного комп'ютера в інтерактивному режимі, якщо взагалі хтось увійшов. Тому при встановленні сервера 1С:Підприємства бажано створити спеціального користувача USR1CV81, наділеного правами, мінімально необхідними для сервера 1С:Підприємства, та не призначеного для інтерактивного входу. Сервер 1С:Підприємства представляється системі Windows користувачем USR1CV81.
Розглянемо докладніше права, які встановлюють користувач USR1CV81. Сервер 1С:Підприємства використовує такі каталоги:
- Каталог завантажувальних модулів знаходиться в каталозі, заданому програмі встановлення 1С:Підприємства як кінцева папка. У ньому розташовані завантажувальні модулі сервера 1С:Підприємства. Користувач USR1CV81 необхідні права на читання даних та запуск програм з цього каталогу та його підкаталогів. Він отримує ці права неявно завдяки включенню до групи Users.
- Каталог даних сервера зазвичай має ім'я "C: Program Files 1cv81 server". Користувачеві USR1CV81 необхідні повні права на цей каталог. Програма встановлення 1С:Підприємства при створенні користувача USR1CV81 наділяє його правами на цей каталог.
- Каталог тимчасових файлів зазвичай має ім'я "C:\Documents and Settings\usr1cv81\Local Settings\Temp" або "C:\WINNT\Temp", яке визначається значенням змінної TEMP оточення користувача або змінної TEMP системного оточення.Подивитися значення цієї змінної можна в діалозі System Properties (Start -> Settings -> Control Panel -> System -> Advanced -> Environment Variables). Програма установки 1С:Підприємства задає користувачу USR1CV81 повні права на цей каталог. Зазвичай при інсталяції Windows каталог тимчасових файлів доступний всім користувачам за допомогою включення до списку доступу групи CREATOR OWNER. Однак це доступ не повний. Зокрема, всім користувачам не доступна операція пошуку файлів у цьому каталозі. Установка користувачу USR1CV81 повних прав на каталог тимчасових файлів дозволяє серверу 1С:Підприємства виконувати всі необхідні йому операції. Подивитися список доступу можна у діалозі властивостей каталогу на закладці Security. Наявність групи CREATOR OWNER дозволяє звертатися до каталогу будь-якому користувачеві, який створює файли в цьому каталозі або володіє якими-небудь файлами в цьому каталозі. При цьому в списку доступу створеного файлу замість групи CREATOR OWNER буде записаний користувач, який створив файл. Серед користувачів, яким дозволено доступ до цього каталогу, має бути й користувач USR1CV81, наділений повними правами на цей каталог.
Важливо пам'ятати, що каталог тимчасових файлів певного користувача (зокрема і користувача USR1CV81) визначається комбінацією змінних оточення цього користувача та системних змінних оточення. Щоб дізнатися цей каталог, програма встановлення 1С:Підприємства запитує контекст користувача USR1CV81. Для цього в Windows 2000 користувачу, від імені якого запускається програма установки 1С:Підприємства, можуть знадобитися привілеї: Act as part of the operating system і Bypass traverse checking.Перевірити привілеї користувача можна утилітою Local Sequrity Settings у гілці Local Policies -> User Rights Assignment. У процесі встановлення нового програмного забезпечення програма установки зазвичай отримує ці привілеї автоматично.
Реєстрація сервера 1С:Підприємства як сервісу Windows
Сервер 1С: Підприємства є простим додатком Windows і може бути запущений інтерактивно. Однак для постійного використання це незручно, оскільки ставить запуск сервера 1С: Підприємства від входу користувача в серверний комп'ютер. Щоб унеможливити цю залежність, сервер 1С:Підприємства може запускатися як сервіс Windows. Для цього він має бути зареєстрований у менеджері сервісів Windows.
Для перегляду списку сервісів Windows та їх параметрів призначена утиліта Component Services (Start -> Settings -> Control Panel -> Administrative Tools -> Services). Сервер 1С:Підприємства представлений у списку сервісів сервісом "Агент сервера 1С:Підприємства 8.1". Параметри сервісу визначають запуск процесу "Агент сервера 1С:Підприємства" (ragent), користувача, від якого він запускається, а також спосіб перезапуску в аварійних ситуаціях.
У діалозі властивостей сервісу "Агент сервера 1С:Підприємства 8.1" на закладці General показано рядок запуску процесу ragent, який є Агентом сервера 1С:Підприємства. Зазвичай цей рядок має вигляд:
"C:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:Program Files\1cv81\server"
- процесом Агента сервера є завантажувальний модуль "C: Program Files 1cv81 bin ragent.exe";
- процес ragent запускається як сервіс Windows і має управлятися менеджером сервісів (-srvc);
- використовується як Агент сервера 1С: Підприємства (agent);
- при першому запуску сервісу повинен бути створений кластер з параметрами за промовчанням та головним IP-портом номер 1541 (-regport 1541). У цьому порту клієнтські додатки мають з'єднуватися з інформаційними базами, зареєстрованими у кластері;
- IP-порт агента сервера повинен мати номер 1540 (port 1540). У цьому порту Консоль кластера має з'єднуватися з центральним сервером для виконання адміністративних функцій;
- при запуску процесів кластера на даному сервері їм динамічно призначатимуться IP-порти з діапазону 1560-1591 (-range 1560:1591).
- загальні дані кластера будуть розміщені в каталозі "C: Program Files 1cv81 server" (-d "C: Program Files 1cv81 server").
Сервіс "Агент сервера 1С:Підприємства 8.1" може бути доданий або видалений не тільки при встановленні або видаленні 1С:Підприємства програмою встановлення 1С:Підприємства 8.1, але й вручну. Для цього можна виконати з командного рядка утиліту ragent, вказавши відповідні параметри.
Для створення сервісу потрібно вказати параметр -instsrvc та параметри: -usr – ім'я користувача, від імені якого має бути запущено сервіс, -pwd – пароль цього користувача. При цьому решта параметрів стане параметрами рядка запуску Агента сервера 1С:Підприємства як сервісу. Наприклад, для стандартної реєстрації сервісу Агента сервера 1С:Підприємства у налагоджувальному режимі набір параметрів повинен бути таким:
"C:\Program Files\1cv81\bin\ragent.exe" -instsrvc -usr .\USR1CV81 -pwd Password -regport 1541 -port 1540 -range 1560:1591 -d "C:Program Files\1cv81\server" – debug
Для видалення сервісу необхідно вказати параметр -rmsrvc. Наприклад:
"C:\Program Files\1cv81\bin\ragent.exe" -rmsrvc
Іноді буває поліно змінити рядок запуску Агента сервера або інші параметри сервісу Агента, наприклад, увімкнути режим налагодження або створити кілька сервісів різних версій. Діалог властивостей сервісу не дозволяє редагувати рядок запуску сервісної програми та деякі інші параметри, наприклад, ідентифікатор сервісу. Для редагування потрібна утиліта regedit, призначена для перегляду та редагування реєстру Windows.
Увага!
Редагування системного реєстру Windows потребує надзвичайної обережності, оскільки помилкові зміни в ньому можуть призвести операційну систему до непрацездатного стану.
Запустіть утиліту regedit (відкрийте Start -> Run і наберіть regedit) і оберіть гілку:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
Серед її параметрів є параметр ImagePath, значенням якого є рядок запуску Агента сервера 1С:Підприємства. Тут можна додати нові параметри запуску або змінити значення існуючих. Повний список можливих параметрів наведено у книзі "1С:Підприємство 8.1 Клієнт-сервер" документації.
При необхідності реєстрації кількох незалежних сервісів Агента сервера 1С:Підприємства потрібно вказати їм різні модулі завантаження, різні порти і різні каталоги даних кластера. Також потрібно зареєструвати їх з різними ідентифікаторами сервісів. Це можна зробити так:
"C:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:Program Files\1cv81\server"
- За допомогою програми regedit змінити ідентифікатор зареєстрованого сервісу. Для цього: вибрати гілку
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
і змінити її ім'я, наприклад:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent First - Створити другий сервіс:
"C:\Program Files\1cv81_10\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -range 1660:1691 -d "C:Program Files\1cv81_10\server"
- Можливо, його ідентифікатор теж змінити. Для цього: вибрати гілку
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
і змінити її ім'я, наприклад:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent Second
Що не може зробити програма встановлення 1С:Підприємства
Як уже говорилося, програма установки 1С:Підприємства копіює завантажувальні модулі 1С:Підприємства та виконує необхідну реєстрацію в COM та в менеджері сервісів Windows. Вище наведено інформацію, необхідну розуміння внутрішніх механізмів цієї реєстрації. Якщо серверному комп'ютері встановлений як сервер, а й клієнтська частина 1С:Підприємства, вона готова до роботи відразу після установки (і підключення ключів захисту).
Щоб сервер 1С:Підприємства був доступний з інших комп'ютерів у локальній мережі, необхідно перевірити налаштування мережі на серверному та клієнтському комп'ютері, а також для мережі в цілому. Для передачі даних між клієнтськими програмами та сервером 1С:Підприємства, а також між процесами кластера серверів використовується TCP/IP. Від правильності його налаштування залежить робота 1С:Підприємства у варіанті клієнт-сервер.
Процеси кластера серверів 1С:Підприємства з'єднуються один з одним за адресами, визначеними як значення властивості "Комп'ютер" діалогу властивостей робочих серверів.Для кластера необхідно, щоб значенням властивості "Комп'ютер" була IP-адреса в точковій нотації, або така символічна адреса, за якою може бути визначена IP адреса за допомогою функції gethostbyname, визначеної в програмному інтерфейсі протоколу TCP. Визначення IP-адреси виконується або на підставі локальної таблиці символічних адрес (C:WINNTsystem32driversetchosts), або за таблицями адрес у доступних DNS серверах. Якщо за символічною адресою робочого сервера його IP-адреса не визначається або визначається неправильно (наприклад, IP-адреса не збігається з фактичною IP-адресою даного комп'ютера), то кластер не працюватиме. Важливо, щоб імена комп'ютерів та їх адреси, визначені у Windows кожному з робочих серверів кластера, не суперечили їх іменам в DNS.
На кожному робочому сервері процеси кластера використовують такі порти: IP порт робочого сервера (зазвичай 1540); IP порти з діапазонів IP портів робочого процесу (зазвичай 1560-1591). Крім того, на центральному сервері кластера використовується порт кластера (зазвичай 1541). Якщо в системі використовуються мережні екрани, то передача даних цими портами повинна бути дозволена. Замість дозволу портів із наведеного списку можна дозволити передачу даних процесам кластера (ragent, rmngr, rphost).
З'єднання клієнтського додатка 1С: Підприємства із сервером виконується у 2 етапи. Спершу воно встановлює з'єднання з менеджером кластера. При цьому використовується адреса центрального сервера (символічний або числовий) та порт кластера (зазвичай 1541). Далі клієнтська програма встановлює з'єднання з одним із робочих процесів.Як його адреса використовується значення властивості "Комп'ютер" відповідного робочого сервера та порт робочого процесу, який вибирається з діапазону IP портів робочого сервера. Передача даних на ці порти має бути дозволена у всіх мережевих екранах на маршруті від комп'ютера клієнтської програми до комп'ютерів кластера серверів 1С:Підприємства. Визначення IP-адреси серверних процесів виконується за допомогою функції gethostbyname на комп'ютері клієнта. Важливо, щоб імена центрального та робочих серверів та їх адреси, визначені в Windows на кожному із серверів кластера, не суперечили їхнім іменам у DNS, доступному комп'ютеру клієнта.
І останнє. Очевидно, що для успішного доступу до сервера 1С:Підприємства з інших комп'ютерів він повинен бути в мережі та повинні бути виконані необхідні для цього налаштування. Підключення до мережі та методика налаштування належать до адміністрування мереж на базі Microsoft Windows та описані у відповідних інструкціях.
Особливості налаштування SQL-сервера
1С:Підприємство у варіанті «клієнт-сервер» використовує для зберігання даних SQL-сервер. При цьому до SQL-сервера звертається лише Сервер 1С:Підприємства. Клієнти 1С: Підприємства безпосереднього доступу до SQL-сервера не мають. Встановлення та налаштування SQL-сервера детально описано в документації Microsoft SQL Server. Для успішної роботи сервера 1С:Підприємства з SQL-сервером необхідно звернути особливу увагу на наступні налаштування.
- Потрібні компоненти SQL-сервера. Для доступу до SQL-сервера з боку Сервера 1С:Підприємства на комп'ютері Сервера 1С:Підприємства повинні бути встановлені компоненти Microsoft Data Access 2.6 або пізніший.
- Аутентифікація користувача SQL-сервером.Права доступу до баз даних SQL-сервера визначаються користувачем, від імені якого відбувається звернення до баз даних. З комп'ютера, на якому встановлений SQL-сервер, запустимо утиліту SQL Server Enterprise Manager, знайдемо вузол Local (Console Root -> Microsoft SQL Servers -> SQL Server Group -> (Local)) та відкриємо його властивості. На закладці Sequrity можна бачити, що SQL-сервер підтримує два способи автентифікації користувачів: SQL Server і Windows та Windows лише. Аутентифікація Windows дозволить Серверу 1С:Підприємства звертатися до SQL-серверу тільки від імені користувача USR1CV81, що не дозволяє розрізняти права доступу до різних інформаційних баз, які обслуговує один сервер 1С:Підприємства. Рекомендовано вибирати режим SQL Server та Windows. У цьому випадку звернення до конкретної інформаційної бази виконуватиметься від імені користувача, який заданий як користувача SQL-сервера під час створення даної інформаційної бази. Важливо, що цей користувач повинен мати не лише повні права на базу даних інформаційної бази, але й права на створення баз даних у SQL-сервері та читання таблиць бази даних Master.
- Мережеві протоколи доступу до SQL-серверу. Якщо сервер 1С:Підприємства та SQL-сервер розміщені на різних комп'ютерах, то необхідно виконати налаштування мережевих протоколів доступу до SQL-сервера. Це можна зробити за допомогою утиліти SQL Server Client Network Utility. На закладці General можна вибрати список протоколів мережі, які використовуються для доступу до SQL-сервера. Найбільш швидким та універсальним є використання протоколу TCP/IP.При використанні інших протоколів необхідно мати на увазі, що деякі з них, наприклад Named Pipes, виконують додаткову аутентифікацію засобами Windows під час обміну даними із SQL-сервером. У цьому випадку для успішної роботи з SQL-сервером на комп'ютері з SQL-сервером повинен бути зареєстрований користувач USR1CV81, який має відповідні права. Протокол доступу до цього SQL-сервера може бути змінений на закладці Alias.