Как опубликовать приложение remoteapp server 2016
Признаюсь, уже давно хотел написать статью о RemoteApp для 1С, да все, как и всегда времени «в обрез», а на почту по прежнему приходят письма, с которых можно сделать один вывод, что о RemoteApp, знают по прежнему не многие, а те, что знают, знают мало.
Конечно, данная тема также подымается и на курсе: Администратор 1С!
Собственно так я и решил поступить!
================
И так, что такое это «RemoteApp» (удаленное приложение) ?
Кусок из статьи на сайте Microsoft (Для объективности):
RemoteApp позволяет представлять приложения, доступ к которым может быть получен удаленно через Службы удаленных рабочих столов (RDS), как если бы они были запущены на локальном компьютере пользователя. Эти приложения называются программы RemoteApp. Вместо представления на рабочем столе сервера. Узел сеансов удаленных рабочих столов программа RemoteApp интегрируется с рабочим столом клиента и программа RemoteApp запускается в собственном окне, размеры которого можно менять, может перемещаться между несколькими мониторами, а также имеет собственный значок на панели задач. Если пользователь запускает несколько программ RemoteApp на одном сервере Узел сеансов удаленных рабочих столов, эти программы RemoteApp совместно используют один сеанс Службы удаленных рабочих столов (RDS).
А простыми словами пользователь работает в 1С, так словно 1с-ка выполняется на его ПК.
Если подробно, то на самом деле1С работает удаленно на нашем сервере, и он (наш сервер) передает пользователю лишь картинку происходящего у него. При этом передается картинка только самого приложения, ничего лишнего! И с этой картинкой пользователь взаимодействует думая, что это программа.
Одним словом «Дым и зеркала» )
Отсюда и такое впечатление у пользователя, как будто бы 1С Предприятие действительно работает у него на ПК.
Отличия видно лишь по ярлыку, в том числе и на панели задач (если свернуть приложение), и если передвигать окно программы по экрану, можно заметить небольшое мерцание картинки.
«RemoteApp» слово не новое, еще на windows server 2008 R2 можно было публиковать удаленные приложения, но тогда все было «сыровато», и лишь с выходом windows server 2012 «RemoteApp» можно использовать для работы в 1С.
О старом добром «сервере терминалов» знают многие, официальное название «Terminal Services» или «TS».
Конечно, ели разворачивать «RemoteApp» на основе сеансов, тогда здесь многое будет вам знакомо, так как все базируется на старом протоколе RDP,для подключения клиента используется уже давно известный нам клиент mstsc, и как и прежде все работает в сеансах которые как и на «Сервере терминалов» создают и работают пользователи.
Администрирование происходит аналогично, как и на «TS», да и лицензируется аналогично, вот только лицензии уже называются не «Windows Terminal Services» а «Windows Remote Desktop Services CAL».
Многих пользователей сбивают, столку эти нововведения, (особенно «старая школа») собственно попытаюсь в этой статье рассказать подробно, как и о RDS, так и о RemoteApp, на котором это работает, постараюсь все разложить, как говорится «по полочкам».
Что же такое RDS?
RDS позволяет нам централизованно управлять ресурсами, контролировано предоставлять приложения и данные для пользователей.
В RDS есть две возможных реализации.
1 – технология на базе сессий. Когда пользователь подключается к данному серверу, открывает удаленный рабочий стол и заходит под своей сессией, под своим пользователем.
2 – технология на базе виртуальных рабочих столов, то есть по технологии VDI.
Собственно (Удаленные приложения) «RemoteApp» мы будем разворачивать на основе сеансов, по первому типу. Его реализовать проще, и подходит он большинству.
Также стоит отметить, что реализация второго типа на базе VDI имеет свои преимущества.
При использовании VDI – каждый пользователь работает на своей виртуальной машине.
И если, например, случилась какая-то беда у пользователя на его вирт. машине то пострадает лишь его виртуальное пространство. А если это случится на сервере «на основе сеансов» по первому типу, тогда могут пострадать все пользователи, чьи сеансы там находятся, да и все программы, данные на этом сервере.
Из чего состоит RDS
RDS строится на базе нескольких ролей, настройку которых можно осуществлять как на разных серверах, так и в приделах одного сервера.
Основные роли RDS
1. Посредник подключения к удаленному рабочему столу. Он занимается подключением клиентского устройства к удаленным приложениям «RemoteApp», а также рабочим столам на базе сеансов, либо к виртуальным рабочим столам, зависит от того на базе какой технологии мы RDS построили.
2. Роль, которая обеспечивает веб-доступ к удаленным рабочим столам. Ее задача – предоставление ресурсов через веб-браузер.
3. Узел сеансов удаленных рабочих столов – данная роль позволяет размещать на сервере удаленные приложения, или основанные на сеансах рабочие столы.
4. Узел виртуализации удаленных рабочих столов. На данном узле, это у нас сервер Hyper-V, на котором у нас разворачиваются все виртуальные машины, доступ к которым получат все пользователи, что использую технологию VDI.
5. Шлюз удаленных рабочих столов, это посредник между клиентами из внешней сети и коллекции сеансов во внутренней сети и приложений. Шлюз – это безопасность, сервис у нас абсолютно безопасный. И благодаря тому, что RDS в 2012 и 2012R2 становится более гибким, проработаны абсолютно все недочеты, которые были раньше. Сейчас этот сервис легко реализуем для огромных, масштабных проектов, для больших корпораций. Раньше возникали некоторые вопросы.
Так что же нового ?
Обновленная работа с технологией RomoteFX, то есть в RDS сервере 2012, 2012R2, 2016 обновлена работа с графикой. У нас оптимизирована потоковая передача данных, кроме того осуществляется поддержка DirectX 11. Кому этот аспект важен — это все уже работает. Как мы знаем именно эти вещи были негативными отзывами по предыдущим версиям системы.
Благодаря использованию RDS получаем единую точку входа. Пользователь залогинился к нам в домен, и получает доступ ко всем нашим ресурсам. В RDS реализовано перенаправление USB, причем USB как на устройстве, на котором мы осуществляем сессию, так и к серверу.
Как мы знаем, Windows сервер 2012, 2012R2, 2016 прекрасно работает с протоколом SMB 3.0. RDS сервера точно так же это коснулось, и мы можем осуществлять хранение дисков для хранения данных пользователей на протоколах SMB и RGCDSun. Кроме того, так как эта технология реализована в server 2012, 2012R2, 2016 данный сервис легко управляем. То есть в менеджере у нас есть закладка, мы с вами рассматривали когда-то, благодаря которой, управление сервером RDS становится интуитивно понятным, впрочем, как и все инструменты, реализованные в Windows Server 2012-2016.
Что нужно для реализации RDS?
Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С >>>
Итого как я начал свое изучение работы системы Server 2012 R2 Std меня пока многое не радует, а именно то что вроде как сложнее стало использование RemoteAPP и разворачивание терминального сервера на этой оси, но отступать ни в коем случае нельзя. Хоть и не удобно работать пока во всяком случае, а изучать нужно — это и повышение квалификации и новые требования к соискателям, да и переходить на новый функционал также необходимо или по крайней мере иметь ввиду. Вот сейчас я для себя разберу как создать свое приложение на терминальном сервере и опубликовать его во всех шагах с которыми мне пришлось столкнуться.
По правильному все нужно настраивать самим чтобы быть уверенным в используемом конечно если Вы такой же как и я ответственный системный администратор.
Как Вы уже помните в прошлой заметке когда я знакомился с RemoteAPP по умолчанию для всех пользователей домена создана коллекция с дефолтным именование: QuickSessionCollections, так вот ее нужно будет удалить.
Вот теперь уже лучше ничего дефолтного нет, начну пожалуй с создания своей собственной коллекции. Все также находясь в апплете Remote Desktop Services — Collections — TASKS — Create Session Collection и передвигаюсь за мастером настройки по шагам:
Before You Begin, Next
Collection Name:
- Name: → polygon
- Description: → кто как хочет я же люблю чтобы все было подписано.
И нажимаю Next
RD Session Host:
выделяю текущий сервер и нажатием по стрелочке предопределяю что система выбрана в пуле;
И нажимаю Next
User Groups: нужно указать на кого будет распространена новая коллекция, либо на пользователя и/или же на группу, либо на всех пользователей домена. Лучше будет если только тем кому надо предоставлен доступ, так правильнее.
И нажимаю Next
User Profile Disks: можно указать местонахождение профиля пользователя и его размер, в моей задачи это пока не требуется, а потому я снимаю галочку Enable user profile disks
И нажимаю Next
Confirmation: проверяю по результирующему выводу настройки сделанные выше и если все OK, то нажимаю Create
Ожидаю когда моя коллекция — polygon создастся
И нажимаю Close
Теперь когда коллекция создана пора переходить к созданию приложения.
RemoteApp Programs: в правой части будут указаны все приложения которые установлены на данном терминальном сервере если же в списке не оказало того которое необходимо его можно добавить — Add…
(Установил клиент 1С на терминальный сервер версию клиента 8.2.19.121)
у меня при указании местонахождения исполняемого файла 1С => 1cv8.exe сработал аларм о не возможности :
Дело в том, что я указал путь просто: C:\Program Files (x86)\1cv82\8.2.19.121\bin\1cv8.exe (как я думал наивно что это: 1C Enterprise 8 (thin client), а это не правильный формат об этом как раз ошибка и говорит, нужно указать путь вот в таком вот формате:
\\srv-serv.polygon.local\c$\Program Files (x86)\1cv82\common\1cestart.exe
добавленное приложение будет отмечено в списке как показано на представленном ниже скриншоте
И нажимаю Next
Confirmation: проверяю и после нажимаю Publish
Completion: если Вы как и Я видите надпись: The selected RemoteApp programs were published successfully for the polygon collection , то значит Вы только что опубликовали свое первое приложение.
И нажимаю Close
Теперь проверяю с клиентской станции собственно как выглядит подключение к рабочей области (об это я уже говорил в прошлой заметке) и запуск опубликованного приложения в виде 1С клиента):
Когда мы запускаем приложение, то в правом нижнем углу экрана возле часов появляется пиктограмма указывающая, что сейчас мы работаем на удаленном терминальном сервере:
И вот оно долгожданное окно первого запуска клиента 1с, раз первый раз пользователь alektest запускает клиент то он не настроен ни на какой кластер 1с, настроив раз больше уже не понадобиться.
Настроив клиент и авторизовавшись при подключении у кластера 1С получаем запущенное приложение как будто бы оно было запущено локально за одним лишь исключение, что ресурсов на терминальном сервере много больше чем на рабочей станции.
На заметку: первый раз потребуется ввести доменные административные идентификационные данные дабы на сервер прописались ключи и файлы защиты для этого будет выведено специальное окно ввода логина и пароля.
Пример запущенного клиента 1С — он ничем не отличается от локального запуска:
Это конечно все хорошо, а как быть на других рабочих местах, что каждый раз заходить по URL ссылке и оттуда запускать, вот бы как ранее экспортировать приложение в виде rdp или msi файла. Загвоздка вот в чем, в оснастке Server Manager на терминальном сервере данная функциональная возможность не предусмотрена, а потому дальнейшие шаги проделываем на самом сервере:
Win + X — Control Panel — RemoteApp and Desktop Connections — Access RemoteApp and desktops — указываю URL подключения вида:
и нажимаем Next, Next вот только не все так просто как кажется на первый взляд, удаленный компьютер отверг мое подключение:
- Certificate name: srv-serv.polygon.local
- Password: 712mbddr@
Allow the certificate to be added to the Trusted Root Certification Authorities certificate store on the destination computers отмечаю галочкой
Store this certificate: Отмечаю галочкой и указываю путь где куда его нужно сохранить на сервере дабы потом распространить на рабочие станции
Certificate path: c:\srv-serv.pfx
По такому же принципу можно создать сертификаты и для остальных ролей сервисов RD
И нажимаю OK — Apply
И нажимаю OK
Далее повторяем шаги по подключению через Панель управления на самом сервере к RemoteAPP (Control Panel — RemoteApp and Desktop Connections) и вот уже другое разнообразие запрашивается
И вуаля все проходит успешно
Нажимаю Finish
И вот к чему я так стремился:
После того, как было настроено удаленное подключение к RemoteAPP в системе становится доступным следующий каталог:
Вот собственно и всё по шагам которые нужно сделать, что опубликовать свое собственное приложение целью которого будет организовать в последствии терминальный сервер с собственным набором приложений которые используют ресурсы самого сервера, а не ресурсы рабочих станций. Да и управлять единым способом намного удобнее чем каждый раз бегать и вручную что-то проделывать. Да интересно, но когда одну и туже операцию проделываешь не один десяток раз хочется добавить в свою жизнь автоматизации. Пока я подведу черту в этой заметке она работоспособна и практична. На этом я прощаюсь и до новых встреч, с уважением автор блога — ekzorchik.
Используйте прокси ((заблокировано роскомнадзором, используйте vpn или proxy)) при использовании Telegram клиента:
Поблагодари автора и новые статьи
будут появляться чаще :)
Карта МКБ: 4432-7300-2472-8059
Большое спасибо тем кто благодарит автора за практические заметки небольшими пожертвованиями. С уважением, Олло Александр aka ekzorchik.
RemoteApp — это часть роли служб терминального сервера Windows Server 2016 и эта служба даёт доступ к приложениям, работающих на терминальном сервере, таким образом, что как будто вы их запускаете у себя на локальном компьютере. Служба терминального сервера, которая берёт на себя все вычислительные ресурсы приложения, а пользователю отправляет только результат. Ещё и называют удалённым приложением RemoteApp.
Установка ролей и служб RemoteApp
Для установки RemoteApp запускаем Мастер добавления ролей и компонентов и выбираем Тип установки Установка служб удалённых рабочих столов как на скриншоте ниже
Далее выбираем Стандартное обёртывание xD. И после выбираем Развёртывание рабочих столов на основе сеансов .
На пункте Посредник подключения выбираем наш сервер из пула серверов и добавляем его в правое поле.
На следующем пункте, обратите внимание, необходимо отметить чекбксом Установить службу роли веб-доступа к удалённым рабочим столам на сервере посредника подключений к удалённому рабочему столу
Так же выбираем наш сервер из пула серверов и прожимаем Далее / Развернуть
Процесс развёртывания будет отображаться на экране, а по окончанию мы с вами выходим из мастера по нажатию кнопки Закрыть
Настройка коллекции и добавление удалённых приложений
Далее в Диспетчере серверов переходим в Службы удалённых рабочих столов и добавляем коллекцию, присваиваем имя и заполняем описание. Далее
Выбираем сервер из пула. Далее
На данном шаге нам необходимо Добавить Группы пользователей , которые будут иметь доступ к данному приложению remoteapp.
Теперь переходим к завершению настройки удалённого приложения remoteapp, нам нужно зайти в только что созданную нами коллекцию и через Задачи выбрать из выпадающего меню выбрать пункт Опубликовать удалённые приложения RemoteApp
Добавляем нужные нам приложения и финализируем Закрыть
Насройка подключения к RemoteApp приложению
Открывается меню Удалённые приложения RemoteApp и рабочие столы , где нам буду доступны только те приложения к которым у нас есть доступ ( настраивали ранее ). Нажимая на значок приложения начнётся процесс скачивания. После того как вы запустите его вам будет предложено авторизоваться, а уже после чего перед вами откроется уже само приложение 1С RemoteApp или Outlook 2016 RemoteApp .
Terminal Server на Windows 2016. RemoteApp (часть 4).
В целом, терминальный сервер настроен, на нем благополучно крутится 1С и работают пользователи.
Но настроить RemoteApp пришлось не просто так. У нас на сервере крутятся 2 платформы: 1с83 и 1с82. В 1с83 проблем нет, а вот в 1с82, люди жалуются на невозможность изменения масштаба в 1с и мелкий шрифт в ней же. Именно по этому было принято решение прокинуть 1с через RemoteApp.
Еще раз коротко о ролях терминального сервера:
1. Посредник подключения к удаленному рабочему столу. Он занимается подключением клиентского устройства к удаленным приложениям «RemoteApp», а также рабочим столам на базе сеансов, либо к виртуальным рабочим столам, зависит от того на базе какой технологии мы RDS построили.
2. Роль, которая обеспечивает веб-доступ к удаленным рабочим столам. Ее задача – предоставление ресурсов через веб-браузер.
3. Узел сеансов удаленных рабочих столов – данная роль позволяет размещать на сервере удаленные приложения, или основанные на сеансах рабочие столы.
4. Узел виртуализации удаленных рабочих столов. На данном узле, это у нас сервер Hyper-V, на котором у нас разворачиваются все виртуальные машины, доступ к которым получат все пользователи, что использую технологию VDI.
5. Шлюз удаленных рабочих столов, это посредник между клиентами из внешней сети и коллекции сеансов во внутренней сети и приложений. Шлюз – это безопасность, сервис у нас абсолютно безопасный. И благодаря тому, что RDS в 2012/2016 и 2012R2/201 становится более гибким, проработаны абсолютно все недочеты, которые были раньше. Сейчас этот сервис легко реализуем для огромных, масштабных проектов, для больших корпораций. Раньше возникали некоторые вопросы.
Преимущества «RemoteApp» над обычным «Сервером терминалов» :
- Пользователь не путается между удаленным рабочим столом и своим локальным.
- Программа 1С запускается сразу при клике по ярлыку, и выглядит как локально установленная.
- Пользователь не видит всего рабочего стола и работает лишь с теми программами, которые назначил администратор.
- Безопасность выше, чем на обычном сервере терминалов.
- Скорость передачи изображения с сервера, выше, чем в сравнении с обычным сервером терминалов. (Оптимизация за счет, передачи не всей картинки, а лишь нужной программы).
Для начала необходимо создать коллекции, ранее мы их уже создали, я об этом уже писал, поэтому здесь пропущу.
Далее публикуем сами приложения RemoteApp (Публикация удаленных приложений).
Выбираем необходимое нам приложение (в моем случае это соответственно 1С):
Вроде благополучно все опубликовалось.
Далее предлагается локально скачать файлик:
Здесь сразу запускается 1С.
Все достаточно быстро и без проблем. Но, к сожалению, нашу текущую проблему с масштабированием 1С82 RemoteApp не решает. Но все работает.
На этом настройка закончена.
Всем хорошей работы.
P.S.
Думали опубликовать еще 1с82 через IIS WEB, но с платформой 1с82 это оказалось достаточно проблематично.
По публикации платформы 1с83 почитать можно здесь:
Обновление от 01.10.2020.
Ранее никогда не сталкивался с развертыванием терминального сервера без домена. И тут столкнулся, оказалось, что поставить его можно, а вот управлять через GUI не получится, только через PS.
Или вариант управлять через GUI с другого компа, описан здесь.
Share this:
Понравилось это:
Sorry, the comment form is closed at this time.
О сайте
В этом блоге, я пишу заметки о своей, как повседневной жизни, так и жизни и работе в сфере IT технологий. Собираю интересные ссылки, выражаю свои мысли и прочее… В основном посты посвящены, Управленческим моментам и решениям, различным продуктам Microsoft и VMWare, которые я эксплуатирую многие годы, Nix, MacOS, сетке, и другим интересным вопросам и задачам, с которыми приходится ежедневно сталкиваться и иметь дело. Здесь приведены не только мои посты, но и посты, которые были найдены мною на безграничных просторах интернета. Все написанное здесь, было проделано мною или моими коллегами при моем непосредственном участии на виртуальных машинах или в продакшин среде, о чем свидетельствуют комментарии в текстах. Всем удачи в работе.
Читайте также: