BranchCache в Windows Server 2012

В этой статье мы познакомимся с основными изменениями, которые коснулись технологии BranchCache в Windows Server 2012 и Windows 8 , а также рассмотрим практический пример разворачивания инфраструктуры BranchCache.

Что такое BranchCache

Вкратце напомним, о том, что же за зверь такой BranchCache. Итак, BranchCache (BC) это технология, которая впервые была представлена в Windows Server 2008 R2 и Windows 7. Технология позволяет минимизировать трафик между удаленным офисом и центральными файл – серверами, располагающимися в центральном офисе /дата центре компании. Выглядит это примерно так: при доступе пользователя филиала к некому файлу на центральном файл (веб) сервере с включенной функцией BranchCache, он автоматически кэширует данный файл и при следующей попытке компьютера из этого же сайта открыть этот же файл, он получает его не с центрального файлового сервера, а из локального кэша (с рабочей станции или сервера внутри LAN сети филиала). Тем самым минимизируется трафик на WAN канале и увеличивается скорость доставки контента пользователю. Естественно, максимальная производительность BranchCache в Windows достигается при работе со статическими данными большого размера. BranchCache позволяет осуществлять кэширования данных, передаваемых по протоколам SMB и HTTP/HTTPS .

BranchCache может работать в двух режимах.

  • Hosted cache mode – кэширование осуществляется на несколько выделенных серверах филиала, которые называются hosted cache серверами.
  • Distributed cache mode – распределенный режим, в котором кэширование осуществляется на обычных рабочих станциях филиала. Такой режим работы возможно использовать в небольших филиалах, в которых отсутствует выделенный сервер

Что нового в BranchCache в Windows Server 2012 / Windows 8

Рассмотрим основные новшества, которые появились в технологии Branch Cache в новой платформе Microsoft (Windows Server 2012 + Windows 8).

  • Убрали ограничение на количество выделенных серверов hosted cache в филиале
  • Отсутствует необходимость создавать отдельную групповую политику (GPO) BranchCache для каждого сайта
  • На выделенных кэширующих серверах сертификаты теперь устанавливать не нужно
  • Клиенты могут автоматически выбирать между режимами работы BC (распределённый кэш или с выделенным сервером)
  • Кэш по умолчанию шифруется (BitLocker)
  • Повышена производительность за счет использования в том числе возможностей дедупликации данных в windows 2012
  • Появилась возможность предзагрузки кэша (возможно заранее закэшировать определенные данные)
  • Для хранения данных BranchCache теперь используется механизм ESE (MicrosoftJet, лежащий в основе многих инфраструктурых баз MS, в том числе в основе БД Exchange), обеспечивающий повышенную производительность и масштабируемость

Новая версия BranchCache работает на Windows 8 Professional (Enterprise) и на всех редакциях Windows Server 2012 (в том числе Core).

Настройка BranchCache в сети на базе Windows Server 2012 и Windows 8

Разберем практический пример использования технологии BranchCache с выделенным кэш-сервером (режим hosted cache).

Предположим, у нас имеется домен из двух сайтов – «Центральный», «Региональный». В центральном филиале находится некий файл сервер, с которым работают пользователи филиала. В сети филиала находится отдельный сервер, который, в том числе, возможно задействовать под задачи кэширования данных (hosted cache). Предполагается, что все сервера работают под управлением Windows Server 2012, а на клиентах стоит Windows 8 Pro.

Примечание . Для корректной работы BranchCache необходимо правильно настроить сайты Active Directory и их подсети.

Настройка центрального файлового сервера

Установим на центральном файловом сервере компонент BranchCache. Проще всего это сделать с помощью Powershell:

Install-WindowsFeature FS-BranchCache –IncludeManagementTools

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

Restart-Computer

Следующий шаг – необходимо включить на файловом сервере генерацию хешей для данных в общих папках. Сделать это можно с помощью групповой политики, которую необходимо применить к файловому серверу.

Разверните раздел Computer Configuration -> Policies -> Administrative Templates -> Network -> Lanman Server и активируйте политики: Hash Publication for BranchCache и Hash Version support for BranchCache . windows 2012 branchcache - включить генерацию хэшей для шары

Примените данную политику к файловому серверу:

gpupdate /force

Затем с помощью GUI активируем BranchCache для выбранной общей папки (в свойствах шары достаточно отметить опцию «Enable BranchCache»).

Включить branchcache для общей папки на windows server 2012

На этом операции с центральным севером завершены, а мы переходим к настройке инфраструктуры BranchCache в сети филиала.

Настройка кеширующего сервера BranchCache на Windows 2012

Итак, мы решили задействовать один из серверов филиала (на Windows Server 2012) в качестве кэширующего сервера BranchCache. Естественно, мы подразумеваем, что данный сервер не является выделенным под эту задачу, а сочетает ее с одной продуктивных функций. Установим модуль BranchCache следующей командной Powershell:

Install-WindowsFeature BranchCache –IncludeManagementTools

Далее необходимо указать, что сервер будет работать в режиме выделенного сервера BC (Hosted Server): В том случае, если сервер включен в домен Active Directory , выполните команду, которая в том числе активирует автоматическое определение клиентов BranchCache:

Enable-BCHostedServer –RegisterSCP

Если сервер не в домене, выполните:

Enable-BCHostedServer

Проверить, что все прошло успешно и данный сервер может работать в качестве кэширующего сервера BranchCache, выполните команду:

Get-BCStatus

Команда должна вернуть примерно следующее: режим branchcache активирован

И немного ниже:

branch_cache_enable_win2012

Настройка клиентов Branch Cache на Windows 8

Переходим к настройкам компьютеров филиала с ОС Windows 8, которые будут пользоваться преимуществами технологии BranchCache. Как всегда, проще всего это сделать с помощью групповой политики. Создайте и прилинкуйте политику к OU с компьютерами филиала (в случае необходимости можно отграничить применение политик, включив wmi фильтрацию ).

Откройте редактор политики и перейдите в раздел: Computer Configuration -> Policies -> Administrative Templates -> Network -> BranchCache и активируйте следующие политики:

  • Turn on BranchCache
  • Set BranchCache Disributed Cache Mode
  • Enable Automatic Hosted Cache Discovery by Service Connection Point

Включить branchcache в wndows 8 pro

Включив одновременно «Distributed cache mode» и «Automatic hosted cache discovery», мы отправим клиентов искать сервер hosted cache в Active Directory. Они должны обнаружить локальный кэширующий сервер BC, а если таковой отсутствует – задействовать механизм распределенного кэша (distributed mode).

Примечание . В том случае, если на клиентах включен файервол Windows, необходимо политикой разрешить исходящий и входящий трафик BranchCache – правила Content Retrieval (Uses HTTP) и BranchCache – Peer Discovery (Uses WSD)

Осталось применить политики на клиентах и перезапустить службу BrachCache:

Restart-Service PeerDistSvc

Проверим статус BrachCache

Get-BCStatus

Убедимся, что клиенты увидели выделенный hosted cache сервер и настроены на его использование.

windows 8 branchcache в режиме выделенного сервера

Теперь в случае открытия любым пользователем данных из общей папки на центральном файловом сервере, они автоматически будут кэшироваться на сервере филиала и в дальнейшем при попытке открыть этот же файл, другие пользователи будут получать локальную копию данных, не прокачивая их заново по WAN-сети.

EnglishRussianUkrainian