Настройка MetaCacheDatabase (MCDB)
Функция MetaCacheDatabase (MCDB) включена в Exchange Server 2019 г. Это позволяет ускорить группу доступности базы данных (DAG) за счет использования твердотельных дисков (SSD). Manage-MetaCacheDatabase.ps1
— это скрипт автоматизации, созданный для администраторов Exchange Server для настройки экземпляров MCDB и управления ими в своих daG Exchange 2019.
После установки Exchange Server 2019 можно найти Manage-MetaCacheDatabase.ps1
здесь: drive:\Program Files\Microsoft\Exchange Server\V15\Scripts. Чтобы сделать cmDLet Manage-MCDB доступным в сеансе командной консоли Exchange, сделайте следующее:
cd $exscripts
. .\Manage-MetaCacheDatabase.ps1
Этот скрипт используется для настройки необходимых компонентов MCDB в правильно настроенном DAG, для включения или отключения MCDB, а также для настройки и восстановления MCDB на серверах.
Руководство по SSD
Все диски SSD, используемые для MCDB, должны иметь одинаковую емкость и тип. Требуется симметричная конфигурация между серверами, что означает, что на каждом сервере должно быть одинаковое количество SSD, а все диски SSD должны иметь одинаковый размер.
Примечание.
Командлет Manage-MCDB будет работать только с устройствами, предоставляемыми Windows в качестве SSD MediaType .
Рекомендуется использовать соотношение 1:3 между ssd и HDD-устройствами на сервер. Таким образом, разверните один SSD для каждых трех жестких дисков. Чтобы избежать уменьшения количества жестких диска на сервере, рассмотрите возможность использования накопителей-накопителей форм-фактора M.2.
Для локальных развертываний достаточно предоставить от 5 до 6 % емкости SSD по сравнению с общей емкостью HDD. Например, если сервер содержит 100 ТБ емкости HDD для баз данных почтовых ящиков, достаточно выделить от 5 ДО 6 ТБ для емкости SSD.
Используемые диски SSD должны соответствовать требованиям смешанного использования и поддерживать одну запись дисков в день (DWPD) или больше с точки зрения надежности записи.
Предварительные требования
Для успешной настройки и использования MCDB требуются следующие предварительные требования:
DaG настроено для автоматического использования.
Дополнительную информацию см. в следующих статьях:
Необработанные ssd-диски устанавливаются с одинаковым количеством и размером SSD для каждого сервера в DAG. Убедитесь, что все диски SSD полностью пусты, не отформатированы и не защищены от записи. Чтобы проверить это, можно использовать DiskPart или Clear-Disk.
Exchange Server 2019 г.
Настройка MCDB
Процесс настройки MCDB можно разбить на четыре основных этапа:
Задайте правильные значения для daG, которую вы хотите включить для MCDB.
Обновите параметры Active Directory (AD) и дождитесь распространения (путем запуска
ConfigureMCDBPrerequisite
).Разрешите ускорение MCDB для каждого сервера DAG (путем запуска
ServerAllowMCDB
).Создайте необходимую инфраструктуру (тома, точки подключения) для MCDB на каждом сервере (запустив
ConfigureMCDBOnServer
).Разрешите базам данных выполнить отработку отказа, чтобы получить новые параметры.
После успешного выполнения всех четырех шагов начнется ускорение MCDB для каждого экземпляра базы данных с соответствующим экземпляром MCDB.
В следующих разделах описывается использование скрипта Manage-MetaCacheDatabase.ps1
для выполнения указанных выше четырех шагов.
Шаг 1. Настройка правильных значений в DAG, для которого требуется включить MCDB
Эти параметры DAG используются для расчета правильного размера MCDB на дисках SSD:
AutoDagTotalNumberOfDatabases: количество баз данных в daG (например, 50).
AutoDagDatabaseCopiesPerDatabase: количество активных и пассивных копий каждой отдельной базы данных.
AutoDagTotalNumberOfServers: количество серверов в daG, то есть от 2 до 16.
Например:
Set-DatabaseAvailabilityGroup testdag1 -AutoDagTotalNumberOfDatabases 20 -AutoDagDatabaseCopiesPerDatabase 4 -AutoDagTotalNumberOfServers 8
Шаг 2. Запуск manage-MCDB -ConfigureMCDBPrerequisite
Этот параметр задает состояние Active Directory для объекта DAG. Для правильной работы MCDB на всех серверах требуется полная репликация состояния Active Directory.
ParameterSetIdentifier:
- ConfigureMCDBPrerequisite
Параметры:
Параметр | Обязательный | Описание |
---|---|---|
DagName | Верно | Имя группы доступности базы данных. |
SSDSizeInBytes | Верно | Емкость в байтах каждого ssd на сервере, который будет использоваться для MCDB. |
SSDCountPerServer | Верно | Количество устройств SSD, используемых для MCDB на каждом сервере. |
Область:
- DAG. ConfigureMCDBPrerequisite работает с объектом DAG.
Примечание.
MCDB будет использовать до 95 % физической емкости SSD. Оставшиеся 5 % остаются свободными для учета затрат на файловую систему и секции, а также небольшого объема дополнительного буфера и чрезмерной подготовки.
Пример.
Manage-MCDB -DagName TestDag1 -ConfigureMCDBPrerequisite -SSDSizeInBytes 5242880000 -SSDCountPerServer 2
Шаг 3. Запуск manage-MCDB -ServerAllowMCDB
Эта команда задает локальное состояние для каждого члена DAG, чтобы разрешить или запретить заполнение и ускорение чтения MCDB.
ParameterSetIdentifier:
- ServerAllowMCDB
Параметры:
Параметр | Обязательный | Описание |
---|---|---|
DagName | Верно | Имя группы доступности базы данных. |
ServerName | Верно | Указывает сервер для включения MetaCacheDatabase. |
ForceFailover | Необязательный | Этот логический параметр можно использовать для отработки отказа всех баз данных на сервере. Это необходимо для того, чтобы все изменения конфигурации вступили в силу и начали использовать MCDB после успешного создания точек подключения и экземпляров базы данных в разделе Шаг 4. Запуск manage-MCDB -ConfigureMCDBOnServer. Кроме того, необходимо отключить ускорение SSD. |
Область:
- Сервер. Необходимо запустить ServerAllowMCDB на каждом сервере в DAG.
Примеры:
Manage-MCDB -DagName TestDag1 -ServerAllowMCDB:$true -ServerName "exhs-5046"
Manage-MCDB -DagName TestDag1 -ServerAllowMCDB:$false -ServerName "exhs-5046" -ForceFailover $true
Шаг 4. Запуск manage-MCDB -ConfigureMCDBOnServer
Эта команда определяет неформатированные устройства SSD и форматирует их, а также создает необходимые точки подключения на сервере для размещения экземпляров MCDB. Этот набор параметров также можно использовать для повторного создания точек подключения на необработанном SSD, который был добавлен для замены неработающего SSD.
ParameterSetIdentifier:
- НастройкаMCDBOnServer
Параметры:
Параметр | Обязательный | Описание |
---|---|---|
DagName | Верно | Имя группы доступности базы данных. |
ServerName | Верно | Указывает сервер для идентификации неформатированных устройств SSD и создания точек подключения. |
SSDSizeInBytes | Верно | Это емкость (в байтах) каждого SSD на сервере, который будет использоваться для MCDB. |
Область:
- Сервер. Необходимо запустить ConfigureMCDBOnServer на каждом сервере в DAG.
Пример.
Manage-MCDB -DagName TestDag1 -ConfigureMCDBOnServer -ServerName "exhs-4056" -SSDSizeInBytes 5242880000
После выполнения трех предыдущих шагов (настройки ConfigureMCDBPrerequisite, ServerAllowMCDBDB и ConfigureMCDBOnServer) состояние MCDB отобразится как Хранилище в автономном режиме. Это означает, что среда подготовлена и готова к созданию и заполнению экземпляров MCDB. Следующая отработка отказа экземпляра базы данных приводит к созданию экземпляра MCDB и включению ускорения. Экземпляры переходить через состояния работоспособности, показанные в состояниях работоспособности MCDB.
Можно использовать набор параметров ServerAllowMCDB , чтобы вызвать отработку отказа всех экземпляров базы данных, присутствующих на данном сервере. Кроме того, можно использовать командлет Move-ActiveMailboxDatabase для отработки отказа отдельных баз данных.
Manage-MCDB -DagName TestDag1 -ServerAllowMCDB:$true -ServerName "exhs-5046" -ForceFailover $true
Состояния работоспособности MCDB
Используйте Командлет Get-MailboxDatabaseCopyStatus для запроса состояния экземпляров MCDB. Существует пять состояний, в которых может находиться экземпляр MCDB, как показано в следующей таблице:
Состояние | Описание |
---|---|
Отключено | MCDB отключена. |
StorageOffline | Базовая инфраструктура отсутствует или недоступна, например точки подключения или пути к файлам. Это состояние, в которое находится MCDB после сбоя SSD. |
Автономный режим | Ошибки на логическом уровне, например отсутствующие экземпляры MCDB. |
Initializing | Временное состояние, система определяет, в каком другом состоянии она должна находиться. |
Healthy | Готовы к обработке запросов. |