.
Архитектура Lync 2010
Архитектура пула внешних серверов Lync 2010 имела централизованную структуру, в которой внутренний сервер Microsoft SQL Server выполнял большую часть ресурсоемких задач для внешних серверов. Внешние серверы не только применялись для основных задач Lync, таких как обмен мгновенными сообщениями, совместного использования приложений, конференций и корпоративной голосовой связи, но и отвечали за публикацию текущего статуса пользователя для других пользователей (функция, известная как публикация и подписка на информацию о присутствии), управление контактами и динамические обновления для конференций.
Каждый внешний сервер Lync был тесно связан с внутренним сервером и постоянно связывался с базой SQL Server для получения обновленной информации о присутствии и подписках. Кроме того, вся бизнес-логика также содержалась в этой базе. На рисунке 1 показан пример архитектуры внешнего сервера Lync 2010. В таблице 1 указаны рекомендуемые Microsoft системные требования для Lync Server 2010.
Рисунок 1. Архитектура внешнего сервера Lync Server 2010 |
Тесная взаимосвязь между внешним сервером и внутренним, а также возможные узкие места в таких областях, как центральный процессор и подсистема ввода/вывода, приводили к тому, что большинство пользователей не задействовали виртуализацию и полагались на физические серверы при развертывании Lync и SQL Server. Кроме того, данная архитектура была одной из причин ограничения пула внешних серверов не более чем 10 серверами. Сервер SQL Server — это узкое место, препятствовавшее развертыванию крупных пулов, которые могли бы обслуживать более 100 000 пользователей. Именно SQL Server был причиной ограничения, а не внешние серверы.
Блочная архитектура Lync Server 2013
В Lync Server 2013 архитектура внешних серверов изменилась в сторону блочной модели, в которой каждый внешний сервер содержит базу данных информации о присутствии, ранее располагавшуюся на внутреннем сервере SQL Server. В Lync Server 2010 внешние серверы связывались с внутренним сервером MS SQL для обновления статусов присутствия пользователей. Если параметры SQL Server не были рассчитаны должным образом с точки зрения аппаратного обеспечения или же сетевые проблемы замедляли взаимодействие между внешними серверами и SQL Server, результатом могло быть несвоевременное обновление статуса присутствия или недоступность статусов для пользователей.
Внешние серверы Lync Server 2013 и база данных на внутреннем сервере теперь связаны слабо. В результате этого изменения в архитектуре внешние серверы теперь отправляют изменения, которые затем записываются в базу внутреннего SQL Server, для поддержания базы в актуальном состоянии относительно процессов, происходящих на внешних серверах. Этот процесс называется lazy writes. Он обновляет базу SQL Server всеми транзакциями или изменениями, такими как одновременный вызов или переадресация вызова, в Lync 2013 данный процесс известен как «восстановление» (rehydration).
Перенос базы данных, отвечающей за статус присутствия, с внутреннего SQL Server в базу на внешнем сервере — одна из причин возросших системных требований. Это изменение повлекло за собой снижение требований к внутреннему серверу, большую масштабируемость пула внешних серверов и сделало отказ какого-либо из внешних серверов гораздо менее заметным для конечных пользователей. На рисунке 2 показан пример архитектуры Lync Server 2013, а в таблице 2 приведены рекомендуемые Microsoft системные требования.
Рисунок 2. Архитектура внешнего сервера Lync Server 2013 |
Блочная модель вводит два новых для администраторов Lync понятия: группы пользователей User Groups и кворумы. Пользователи Lync теперь автоматически разделяются на группы пользователей, и каждой группе присваивается три внешних сервера (основной, первый вспомогательный и второй вспомогательный). Если у вас нет трех внешних серверов, группы все равно создаются, однако вы видите только основной сервер или только основной и первый вспомогательный. Если разворачивается три сервера, что рекомендуется Microsoft, три копии пользовательских данных создаются и хранятся на внешних серверах с помощью репликации, которая называется Windows Fabric. Если в вашем пуле меньше трех серверов, то количество реплик соответственно уменьшается.
Когда у вас в пуле меньше трех внешних серверов, пулы Lync 2013 должны иметь кворум, чтобы обслуживать клиентов. Таким образом, перед запуском служб пула должно быть минимально необходимое количество работоспособных серверов. Любой внешний сервер Lync 2013, на котором запущены службы Lync, считается работоспособным для целей кворума.
Я могу только приветствовать изменения в архитектуре Lync Server 2013, которые касаются внешних серверов и их взаимодействия с внутренним сервером SQL Server. Этих перемен пользователи очень ждали. Они снимают нагрузку и устраняют зависимость от внутреннего SQL Server, что особенно важно для одного из наиболее динамично меняющихся свойств – статусов присутствия пользователей. То, что эти улучшения доступны сразу при поставке, делает их гораздо более привлекательными и заставляет задуматься о миграции на Lync 2013.