12 подсказок для оптимизации инфраструктуры Exchange 2007

OSzone.net » Microsoft » Exchange Server » Exchange Server 2007 » 12 подсказок для оптимизации инфраструктуры Exchange 2007
Автор: Руи Силва
Иcточник: MSexchange.ru
Опубликована: 31.10.2008

Становится все труднее обнаруживать моменты, которые позволяют улучшить общую производительность системы, когда дело касается Exchange Server 2007. Последняя версия Exchange Server превосходит всех своих предшественников, т.к. она использует преимущества 64-х битной архитектуры во всей ее мощи.

Если вы запустите Exchange Best Practices Analyzer после завершения процесса установки, то велики шансы того, что вы получите хорошо настроенную систему, которая удовлетворяет всем рекомендациям от Microsoft, а также всем необходимым условиям.

Основная цель представленных здесь подсказок, заключается в оптимизации инфраструктуры Exchange, что позволит получить более здоровую, стабильную и надежную систему.

Когда я писал аналогичную статью для Exchange Server 2003, я начал с подсказки 0: правильно масштабируйте систему! Нет способов оптимизировать систему, которая неправильно отмасштабирована. Я даже не называю это подсказкой, это необходимое условие, поэтому никогда не приступайте к установке Exchange Server не имея четкого понимания основных аппаратных требования. Моя предыдущая статья Exchange 2007 Sizing Cheat Sheet, поможет вам в этой задаче.

А теперь я перейду непосредственно к подсказкам.

1. Документируйте свои действия

Вам не обязательно быть гуру, но глубокие знания всех технологий, используемых в окружении Exchange Server увеличат вероятность того, что это самое окружение будет работать гладко и оптимально.

Команда разработчиков Exchange одна из самых активных внутри компании Microsoft, в плане документации своего продукта. Образно выражаясь, они написали тонну технических документов, которые можно найти на TechNet. Есть всего несколько сайтов доступных 24x7, которые могут помочь вам, среди многих других по всему миру и на различных языках (я подразумеваю, что вы уже знакомы с MSExchange.org :-)):

Exchange Server TechCenter Exchange Team Blog (You Had Me at EHLO) Exchange Server Community Exchange Server Wiki

2. Регулярно запускайте ExBPA

Запуск Exchange Best Practices Analyzer (ExBPA) должен быть первым и последним этапом каждого процесса установки Exchange Server. Пожалуйста, не пропускайте его, т.к. он предоставит вам важную информацию относительно вашего окружения.

В качестве отдельного инструмента вы можете бесплатно его загрузить, но теперь ExBPA включен в состав пакета Exchange Server Toolbox, т.к. он очень важен для общего состояния серверов Exchange. Этот инструмент собирает данные с нескольких хранилищ, таких как Active Directory, реестр (Registry) и операционная система (Operating System), и предоставляет исчерпывающий отчет относительно всех настроек, которые не удовлетворяют рекомендациям Microsoft.

Регулярно запускайте Health Check (проверка состояния) и обновляйте ExBPA, загружая последние описания от Microsoft.

3. Оптимизируйте хранилище

В предыдущих версиях Exchange Server хранилище (storage) часто было основным узким местом для производительности. Но благодаря Exchange Server 2007 и его возможности использовать x64 архитектуру, отпадает нужда в больших IO.

Тем не менее, есть пара рекомендаций, которым вы должны четко следовать, и которые могут влиять на производительность почтовых серверов (Mailbox server):

4. Резервное копирование (Backup)

Exchange Server 2007 предлагает много способов для процесса резервного копирования. Есть несколько подсказок, которые могут улучшить процесс резервного копирования:

5. Память и виртуальная память

В 32-битном мире существовал предел доступной памяти в 4GB, поэтому вы не слишком много могли сделать для улучшения производительности, кроме установки переключателя old /3GB. К счастью, благодаря x64 архитектуре, теперь мы может адресовать почти неограниченное количество памяти, что означает отсутствие узкого места.

Exchange Server 2007 SP1 хорошо настроен на использование памяти, но есть две подсказки, которыми я хочу с вами поделиться: одна касается настроек виртуальной памяти, другая больше касается транспортных серверов (Hub transport server).

На протяжении длительного времени существовала противоречивая информация, относительно правильного размера страничного файла (paging file). На момент написания этой статьи официальная рекомендация для систем Exchange server:

Если вы загрузили последнее обновление для ExBPA, то именно это инструмент и сообщит вам.

Максимальный и минимальный размер памяти должн иметь одинаковое значение, а значение параметра memory dump нужно изменить на ‘Kernel Memory Dump’ (http://support.microsoft.com/?id=274598). Если у вас устаревший диск, на котором размещается страничный файл (page file), то вы должны настроить 100 MB страничный файл на системном диске, чтобы соответствовать kernel dump.

Подсказка, касающаяся транспортной роли (Hub Transport role) заключается в размере КЭШа для базы данных. Exchange 2007 SP1 (и более ранние версии) по умолчанию имеют кэш базы данных размером 128MB. На HUB серверах с высокими коэффициентами более высокое значение для ESE КЭШа позволяет увеличить производительность системы. Т.к. транспортная служба динамически не увеличивает ESE кэш (в отличие от роли почтового сервера), то параметр DatabaseMaxCacheSize, который находится в файле EdgeTransport.exe.config должен быть увеличен до 512MB на Hub серверах:

Для получения более подробной информации, пожалуйста, прочитайте статью New maximum database cache size guidance for Exchange 2007 Hub Transport Server role.

6. Используйте Outlook 2007

Нет сомнений, что Outlook 2007 и Exchange Server 2007 ‘вместе работают лучше. У вас есть следующие возможности, которые доступны лишь тогда, когда вы обращаетесь к почтовому ящику Exchange 2007 с помощью Outlook 2007:

Еще один инструмент, который появился в Exchange Server 2007 и лучше работает с Outlook 2007 – это RPC Client Throttling (или RPC Client Back-off). Client throttling позволяет Exchange идентифицировать пользователей, которые выполняют избыточное число RPC операций на почтовом сервере (Mailbox server), что приводит к снижению общей производительности системы. Сервер посылает таким клиентам запрос "back-off", чтобы снизить влияние на производительность сервера.

Пользователи Outlook 2007 получают запрос ropBackoff, Outlook 2003 получает статусный код RPC_S_SERVER_TOO_BUSY. Это значит, что клиенты Outlook 2003 перестают ждать после 1 минуты следующих один за другим back-offs и отключаются от Exchange Server. Для получения более подробной информации, пожалуйста, прочитайте статью Understanding Client Throttling.

Как у администратора системы обмена сообщениями (Messaging Administrator), у вас есть возможность изменить некоторые настройки, которые позволят улучшить общую производительность:

Резюме

Это первая часть этой статьи. Помните, что хорошее планирование часто является ключом для хорошей производительности. Некоторые из подсказок, такие как правильное определение размеров и настройка хранилища, относятся к этапу планирования, что означает, что это нужно сделать до того, как серверы попадут в промышленную эксплуатацию.

Знайте все о своих серверах, измеряйте их, создавайте базовые линии и отслеживайте ваше окружение – все это единственный способ двигаться в верном направлении.



7. Сеть

На уровне сети существует пара приемов, чтобы все протекало более гладко:

  1. Уберите галочку напротив Internet Protocol Version 6 (TCP/IPv6) в свойствах соединения
  2. Уберите "::1 localhost’’ из файла HOSTS
  3. Откройте реестр и найдите HKLM\System\CCS\Services\Tcpip6\Parameters
  4. Создайте ключ DWORD (32-bit) под названием DisabledComponents и введите значение 0xFFFFFFFF (это отключит все компоненты IPv6, кроме интерфейса обратной связи IPv6)
  5. Перезагрузите систему

8. Устанавливайте Exchange на серверы Windows 2008 Server

Вторая история из этой статьи описывает ситуацию с Windows Server 2008 (а первая – с Outlook 2007).

В Windows 2008 есть много улучшений, касающихся непосредственно Exchange 2007, например:

Пожалуйста, не забывайте, что установка Exchange Server 2007 RTM на Windows Server 2008 не поддерживается, вам потребуется SP1.

За более подробной информацией обращайтесь к этой ссылке Exchange Server and Windows Server 2008, Part II.

9. QoS с UM

Использование Quality of Service (Качество службы - QoS) и DiffServ может значительно улучшить работу с Unified Messaging(Унифицированная отправка сообщений - UM). Если у вас проблемы с UM, связанные с условиями работы сети, вам определенно необходимо QoS. Поддержка Differentiated Services (Разделенные службы - DiffServ) QoS была добавлена в SP1.

Чтобы включить QoS с использованием DiffServ, выполните следующие шаги:

  1. Запустите GPEdit.msc на сервере UM.
  2. Перейдите к Computer Configuration | Administrative Templates | Network | QoS Packet Scheduler | DSCP value of conforming packets.

*
Увеличить

Рисунок 1: Локальная групповая политика MMC

  1. В правой панели сделайте двойной щелчок на Controlled load service type, щелкните Enabled, установите значение DSCP value равным 34, щелкните OK.

*

Рисунок 2: Свойства Controlled load Service

  1. Сделайте двойной щелчок на Guaranteed service type, нажмите Enabled, установите значение DSCP value равным 46, щелкните OK.
  2. Установите QoS Packet Scheduler (Планировщик пакетов) на сервер UM (QoS Packet Scheduler можно установить, добавив его в качестве сетевой службы в свойствах сетевого соединения в Windows Server 2003. QoS Packet Scheduler также установлен по умолчанию в Windows Server 2008).

*

Рисунок 3: Свойства сети

Для получения более подробной информации прочитайте New Unified Messaging Features in Exchange 2007 SP1.

10. Запустите PowerShell быстрее

Если вы когда-либо щелкали на иконку Exchange Management Shell (Уверен, вы уже так делали), вы знаете, что пройдет некоторое время до того, как окошко всплывет. Эта довольно долгая задержка происходит из-за компиляции Common Intermediate Language (CIL) в родной код, происходящая в фоновом режиме.

Если вы хотите немного ускорить время запуска, выполните следующие шаги:

  1. Используя Блокнот, создайте файл .PS1 (назовите его Update-GAC.ps1) со следующим кодом (на системах x86 замените Framework64 во второй линии скрипта словом Framework): Set-Alias ngen @(dir (join-path ${env:\windir} "Microsoft.NET\Framework64") ngen.exe -recurse | sort -descending lastwritetime)[0].fullName[appdomain]::currentdomain.getassemblies() | %{ngen $_.location}
  2. Запустите Exchange Management Shell и выполните только что созданный скрипт.
  3. Закройте окно Exchange Management Shell и снова его запустите. Обратите внимание на разницу!

Для получения более подробной информации прочитайте Avoiding Jitter: Jumpstarting the Exchange shell.

11. Профилактически контролируйте среду Exchange

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

Хотя вы можете использовать и ПО сторонних производителей, я настоятельно рекомендую вам использовать System Center Operations Manager (OpsMgr) 2007, который включает и Exchange Server 2007 Management Pack.

Exchange Server 2007 Management Pack for Operations Manager 2007 включает расширенный набор правил, обзоров, информации, мониторинговых средств и отчетов для управления Exchange Server 2007. Эти ресурсы помогут вам держать вашу среду Exchange Server 2007 в хорошем состоянии путем обнаружения и отправки предупреждений, автоматических реакций на критические события, таким образом предупреждая возможные отказы сервисов или конфигурационные проблемы.

В следующей таблице представлен обзор функциональности мониторинга, произведенного с помощью Operations Manager 2007(взятого из Exchange Server 2007 Management Pack Guide):

Компонент Exchange Функциональность мониторинга
Exchange Client Access Мониторинг ActiveSync и связи OWA, включая синтетические транзакции Измерение производительности и предупреждения
Exchange Edge Transport Измерение производительности и предупреждения
Exchange Hub Transport Измерение производительности и предупреждения
Exchange Mailbox Мониторинг информационного хранилища Мониторинг текущей почты и связи MAPI Измерение производительности и предупреждения
Exchange Unified Messaging Мониторинг связи UM, включая синтетические транзакции Измерение производительности и предупреждения
Конфигурация и безопасность Лучшие рекомендации по Exchange
Мониторинг журнала событий Exchange Комплексные правила для Exchange Детальное знание о событиях продукта

12. Active Directory

Сервер Exchange сильно зависит от инфраструктуры Active Directory. И хотя Exchange довольно хорошо балансирует свои запросы через контроллеры доменов, включая принятие во внимание степень загруженности контроллера доменов, это высокотребовательное приложение и оно дает довольно большую нагрузку через все доступные GC, особенно если вы пользуетесь всеми возможностями и функциями, предлагаемыми в Exchange 2007.

В следующей таблице показано рекомендуемое соотношение серверов Exchange 2007 к серверам глобальных каталогов (global catalog - GC) Active Directory для каждого сайта, содержащего серверы Exchange 2007 Mailbox или пользователей (в предположении, что серверы DC и почты Exchange располагаются на примерно эквивалентном оборудовании):

32 бита 64 бита
Отношение GC к количеству почтовых серверов 1:4 1:8 Вам нужно иметь достаточное количество памяти на сервере каталога для кэширования всей базы данных Active Directory (NTDS.DIT) в памяти
1 GC на XX пользователей Каждые 10000 пользователей Каждые 20000 пользователей

Мне хотелось бы сделать последнее замечание, касающееся контроллера доменов и глобальных каталогов Windows Server 2008. В Windows 2008 представлена новая роль: Read Only Domain Controller (RODC – контроллер доменов только для чтения), которая не работает с Exchange. Exchange будет игнорировать RODC и не соединится с ней, пока администратор вручную не настроит это, поэтому, пожалуйста, убедитесь, что вы не настраиваете конфигурацию вручную, чтобы заставить работать такое соединение.

Заключение

Пожалуйста, запомните, что некоторые из представленных рекомендаций могут измениться в будущем с новыми пакетами обновлений, выпусками служб или новых версий продуктов. Лучшее, что вы можете сделать, чтобы убедиться, что вы не используете вредные рекомендации, это следовать подсказкам №1 и №2:

Другие ссылки


Ссылка: http://www.oszone.net/8043/Exchange_Server_2007_SP1