none
Распределение клиентов между терминальными серверами без домена RRS feed

  • Вопрос

  • День добрый.

    Есть 2 терминальных сервера, полностью одинаковых. Задача следующая: можно ли сделать балансировку нагрузки без домена? Можно даже самую простую: пользователь со своего компьютера подключается к тому серверу, на котором меньше подключений.

    Может можно использовать какой-то скрипт или что-топодобное?

    Спасибо

    18 марта 2014 г. 7:45

Ответы

  • На счет незавершенного сеанса понимаю, неприятный момент, но не критично. Самое главное сделать так, чтобы пользователи раскидывались по 2 терминальным серверам.

    Знаю, что через cmd с помощью query session можно узнать количество сеансов, но нужно, чтобы имена пользователя на ПК, котором запускается скрипт и сервере были одинаковые. А можно как то с помощью cmd задавать с каким именем пользователя и паролем подключаться к серверу?

    Легко, допустим есть у вас 40 человек персонала

    Для 20 создаете учетки на одном сервере и настраиваете что бы они ходили только на этот сервер (в настройках рдп пишете адрес первого сервера)

    Для оставшихся 20 создаете учетки на втором сервере и настраиваете что бы они ходили только на этот сервер (в настройках рдп пишете адрес второго сервера)

    24 марта 2014 г. 7:21
    Модератор
  • Вариант:

    Создаются 2 локальные одинаковые(не обязательно) ограниченные учетки, задача которых обеспечить подключения к серверу, считать список сессий и мб загруку сервака по состоянию(опционально, это не указано в ТЗ), затем скрипт анализирует сессии. Если сессия найдена на одном из серверов - запоминаем этот сервер, если нет - выбираем менее загруженный, далее просто запускаем "mstsc.exe /v:ИМЯСЕРВЕРА" ну можно еще параметров добавить.

    24 марта 2014 г. 9:58

Все ответы

  • Почитайте в сторону DNS Round Robin или сотф компании сиселеганс

    Первый вариант прост, бесплатен и примитивен

    Последний вариант платный но стоит каких то смешных денег и как следствие более гибкий умеет работать по нагрузке (из расчёта память или проц или сессии) по 3м компонентам дает возможность стоить приоритеты

    18 марта 2014 г. 9:06
    Модератор
  • DNS RR не вариант, так как это домен требует домен.
    Цель у нас уйти от зависимости домена. Поэтому варианты с доменом не подойдут.
    18 марта 2014 г. 9:23
  • DNS RR не вариант, так как это домен требует домен.
    Цель у нас уйти от зависимости домена. Поэтому варианты с доменом не подойдут.

    Может я чего не понимаю но в каком месте это требует домен?

    В ДНС (можно виндовый, линуксовый, сторонний софтверный или любой другой) настроить одно имя например Farm и настроит RR

    19 марта 2014 г. 9:03
    Модератор
  • В моем варианте есть только 2 терминальных сервера. Поднимать для этого ДНС нет возможности, в существующий DNS сервер доступа нет, чтобы прописать там ip-адреса

    21 марта 2014 г. 8:24
  • 1) DNS RR в случае с терминальниками не очень хорошая идея, т.к при такой схеме доступность хоста(терминальника) не проверяется, и даже если он упал , клиентов все  равно продолжить туда кидать. 

    2) Можете на каждом клиенте попробовать прописать в файле hosts одно имя и 2 ip (терминалов)

    например:

    192.168.1.11 ts00.domain.local 

     192.168.1.12 ts00.domain.local 

    не уверен, конечно, что будет работать. ДАже если сработает, доступность хоста в такой схеме никак не проверяется.


    21 марта 2014 г. 8:47
  • 1) DNS RR в случае с терминальниками не очень хорошая идея, т.к при такой схеме доступность хоста(терминальника) не проверяется, и даже если он упал , клиентов все  равно продолжить туда кидать. 

    2) Можете на каждом клиенте попробовать прописать в файле hosts одно имя и 2 ip (терминалов)

    например:

    192.168.1.11 ts00.domain.local 

     192.168.1.12 ts00.domain.local 

    не уверен, конечно, что будет работать. ДАже если сработает, доступность хоста в такой схеме никак не проверяется.


    1 согласен что проверки нет, но пользователь сможет зайти при 2й попытке что не критично

    2 при наличии 2 записей в хостах (что не удобно без домена, так как через гпо не раскидаешь) ходить будет по первому совпаданию и только если не будет респондится первое совпадение пойдет по второму

    21 марта 2014 г. 9:07
    Модератор
  • В моем варианте есть только 2 терминальных сервера. Поднимать для этого ДНС нет возможности, в существующий DNS сервер доступа нет, чтобы прописать там ip-адреса

    DNS одна из самых простых вещей для реализации вашей задачи, ну да упустим

    Коль вам такой вариант не вариант используйте сторонний софт (пример привел в первом посте)

    + без домена есть еще одна болячка которую пофиксить проблематично

    если пользователь вышел с сервера не завершив сеанс (не сохранив все документы) никто не гарантирует что этот пользователь попадет на тот же сервер когда вернется с обеда

    у мс есть технология которая позволяет реализовать попадание пользователя туда где его сеанс открыт но технология требует наличия ад

    21 марта 2014 г. 9:13
    Модератор
  • На счет незавершенного сеанса понимаю, неприятный момент, но не критично. Самое главное сделать так, чтобы пользователи раскидывались по 2 терминальным серверам.

    Знаю, что через cmd с помощью query session можно узнать количество сеансов, но нужно, чтобы имена пользователя на ПК, котором запускается скрипт и сервере были одинаковые. А можно как то с помощью cmd задавать с каким именем пользователя и паролем подключаться к серверу?

    21 марта 2014 г. 9:46
  • На счет незавершенного сеанса понимаю, неприятный момент, но не критично. Самое главное сделать так, чтобы пользователи раскидывались по 2 терминальным серверам.

    Знаю, что через cmd с помощью query session можно узнать количество сеансов, но нужно, чтобы имена пользователя на ПК, котором запускается скрипт и сервере были одинаковые. А можно как то с помощью cmd задавать с каким именем пользователя и паролем подключаться к серверу?

    Легко, допустим есть у вас 40 человек персонала

    Для 20 создаете учетки на одном сервере и настраиваете что бы они ходили только на этот сервер (в настройках рдп пишете адрес первого сервера)

    Для оставшихся 20 создаете учетки на втором сервере и настраиваете что бы они ходили только на этот сервер (в настройках рдп пишете адрес второго сервера)

    24 марта 2014 г. 7:21
    Модератор
  • Вариант:

    Создаются 2 локальные одинаковые(не обязательно) ограниченные учетки, задача которых обеспечить подключения к серверу, считать список сессий и мб загруку сервака по состоянию(опционально, это не указано в ТЗ), затем скрипт анализирует сессии. Если сессия найдена на одном из серверов - запоминаем этот сервер, если нет - выбираем менее загруженный, далее просто запускаем "mstsc.exe /v:ИМЯСЕРВЕРА" ну можно еще параметров добавить.

    24 марта 2014 г. 9:58