Как я начал администрировать сервер 1С: Предприятие 8.3 с телефона

Администрирование - Системное

Коротко об инструментах управления кластером серверов 1С:Предприятие 8.3

Предыстория.

Для администрирования серверов 1С: Предприятие с версии 8.0 поставляется консоль «Администрирование серверов 1С Предприятия» (оснастка для Microsoft Management Console). Инструмент вполне функциональный и удобный, развивавшийся вместе с версиями платформы и служащий верой и правдой администратору.

С версии 8.1 появился вариант дистрибутива сервера для ОС, основанных на Linux (на базе deb и rpm). Это дало возможность потребителям уменьшить использование стека технологий Microsoft и значительно экономить на лицензиях и ПО. А что же для администратора? Все та же оснастка для MMC. Сложно обвинить разработчика в консерватизме, ведь прогресс в развитии платформы выглядит впечатляющим на протяжении многих лет (что часто становится поводом для упрека — стабильность приносится в жертву прогрессу). Но факт остается фактом — администрировать сервера версий 8.1 и 8.2 предлагалось из под Windows.

В версии 8.3 появились новые кроссплатформенные средства управления кластером серверов — ras (сервер управления) и rac (клиент управления). Даже среди людей, постоянно работающих с платформой 1С: Предприятие, многие о них просто не знают или едва слышали. Т.е. популярности такой метод управления не получил. И причиной видится то, что rac — консольное приложение. Ленивому администратору проще запустить mmc и накликать мышкой все, что нужно. Но есть еще одна возможность…

Парни из 1С, вы серьезно?

Почему бы не использоваться сервер ras без rac? Благо, компания 1С опубликовала «Administrative Service API» для Java.

В итоге нам понадобится:

1. Установленный и настроенный ras. По умолчанию это приложение устанавливается вместе с серверной частью (в один каталог с ragent.exe), но по умолчанию не работает. Исправим этот недостаток.

Можно настроить запуск при загрузке сервера:

ras cluster --port=<port> <host[:port]>

(если не задать порт, по умолчанию используется 1545)

Или установить ras как сервис Windows (пример файла register-ras.bat для регистрации от компании 1С):

@echo off
rem %1 – полный номер версии 1С:Предприятия
set SrvUserName=<имя пользователя>
set SrvUserPwd=<пароль пользователя>
set CtrlPort=1540
set AgentName=localhost
set RASPort=1545
set SrvcName="1C:Enterprise 8.3 Remote Server"
set BinPath="\"C:\Program Files\1cv8\%1\bin\ras.exe\" cluster --service --port=%RASPort% %AgentName%:%CtrlPort%"
set Desctiption="Сервер администрирования 1С:Предприятия 8.3"
sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%

2. Клиент для ras под Android DroidRAC пришлось написать самому. На мой взгляд там все интуитивно понятно по настройке и подключению. Приложение старается повторять стиль и UI привычной консоли для MMC. Бесплатно и без смс, как говорится. Поддерживаются возможности по просмотру всего дерева компонентов и по редактирования основных настроек, которые нужно изменять в процессе эксплуатации.

Перспективы развития.

В текущий момент доступна для тестирования версия 1С: Предприятие 8.4.1, в которой сильно переработана серверная часть. В числе прочего заявлен REST API для администрирования сервера и анонсирован клиент для него. Очевидно, что сам разработчик видит проблему в слабой развитости инструментов управления и здесь нас ждут приятные сюрпризы. А пока приходится работать с тем, что есть.

P.S. Лично мне приятно следить за быстрой эволюцией ПО компании 1С, хотя часто приходится за этот прогресс платить нервами и временем. Но это уже совсем другая история

См. также

Комментарии
1. Дмитрий Н (Nehc) 15 14.04.17 14:22 Сейчас в теме
Попробовал - работает. Довольно неплохое и функциональное приложение получилось...

Пригодился RAS хоть для тестов, а то поставил - хотел посмотреть как оно из командной строки и понял, что никак!
2. tvm t (tvm) 14.04.17 15:13 Сейчас в теме
Идея отличная! Надо будет попробовать
3. Андрей Николаев (Andruykha) 153 15.04.17 05:34 Сейчас в теме
На версии 8.3.9.2170 64бит не работает приложение, выходит ошибка "com._1c.v8.ibis.service.V8ServiceException"
4. Дмитрий Н (Nehc) 15 15.04.17 08:40 Сейчас в теме
(3) Это не платформа... У меня такая же и то-же х64. И работает.
5. Sergei Karpushev (brrart) 20 17.04.17 05:25 Сейчас в теме
А какие еще могут быть причины ошибки из (3) ?
У меня несколько серверов на разных версиях платформы. Ни к одному не смог подключиться.
6. Alex (user700211_a.straltsou) 119 17.04.17 10:07 Сейчас в теме
(5)
ие еще могут быть причины ошибки из (3) ?
У меня несколько серверов н

Сложно сказать без дебага. В каком момент кидает ошибку? Киньте полный текст ошибки и настройки подключения к RAS
9. Sergei Karpushev (brrart) 20 26.04.17 03:30 Сейчас в теме
(6) А можно ссылку на первоисточник, если есть? Мне хотелось бы почитать поподробней про ras
10. Alex (user700211_a.straltsou) 119 26.04.17 10:09 Сейчас в теме
(9)
о ссылку на первоисточник, если есть? Мне хотелось бы почита

Конечно, но вам понадобиться доступ к ИТС
https://its.1c.ru/db/v838doc#bookmark:cs:TI000000189
Также, теоретически, описание должно быть в книжке по администрированию, которая идет в коробке с платформой.
11. Sergei Karpushev (brrart) 20 27.04.17 10:30 Сейчас в теме
7. Владимир Денисов (den_vladimir) 92 18.04.17 20:49 Сейчас в теме
Спасибо за статью и прогу! +100500 в карму
8. Alex (user700211_a.straltsou) 119 19.04.17 11:56 Сейчас в теме
(7) Можете отзыв на маркете оставить )
вчера выложил 5 версию.
12. Игорь Нешик (ineshyk) 09.05.17 22:58 Сейчас в теме
Скажите, а как с безопасностью?
Как ras общается с сервером?

Через REST запросы?
13. Alex (user700211_a.straltsou) 119 10.05.17 10:16 Сейчас в теме
(12) DroidRAC общается с ras версий 8.3.x через "Administrative Service API" по бинарному протоколу, который не шифруется. Но даже если бы и шифровался - все равно не стоит выставлять ras "наружу", т.е. в небезопасные сети типа Интернет.
Отсюда вывод: пользоваться такими инструментами лучше в локальной сети либо через VPN.
Rest API будет в версии 1С 8.4
15. Vladimir Glumov (Vovan58) 6 23.06.17 23:11 Сейчас в теме
(12) RAS использую постоянно для работы с сервером под Linux, в интернет ничего не выкладываю, работаю по SSH - это о безопасности. И

(1) можно указать флаг -daemon - запустить как демон!
14. Евгений Стоянов (quick) 560 23.05.17 22:51 Сейчас в теме
Класс! То что нужно мне под линухом и для скриптов
16. Павел Одинцов (Darklight) 09.08.17 16:58 Сейчас в теме
А где можно почитать про "Administrative Service API" на русском языке?
Пока я нашёл только вот тут 1с-dn.com но там на английском 8o а для скачивания ещё и регистрироваться надо :-(
17. Alex (user700211_a.straltsou) 119 09.08.17 21:52 Сейчас в теме
(16) Не видел нигде на русском. В архиве есть Javadoc, естественно на английском. Подразумевается видимо, что знание Java предполагает знание технического английского.
18. Павел Одинцов (Darklight) 10.08.17 09:50 Сейчас в теме
(17)Просто для меня это странно, чтобы компания 1С выпустила разработку для платформы, без поддержки русского языка, даже выложено это, видимо, исключительно на англоязычном сайте и ориентировано не на российскую аудиторию. Всё это для меня необычно очень. Даже в новостях нигде не проскакивало (по крайней мере, я не заметил), на 1С: ИТС инфу я тоже не нашёл. Тихой сапой выложили - не для всех - а лишь для избранных. Если бы не эта Ваша публикация, так я вообще бы не узнал бы об этом. За это Вам большое спасибо. А сделать большую русскоязычную статью, по мотивам данной SDK, и выложить её здесь - было бы очень познавательно для продвинутой аудитории. А если показать как это всё синтегрировать с платформой 1С: Предприятие 8 (большой и мобильной) - так вообще было бы очень круто!
Оставьте свое сообщение