29 września 2016

REST API w Exchange

Kilka dni temu pisałem o CU3 dla Exchange 2016. Na konferencji Ignite w Atlancie, Microsoft zaprezentował jeszcze jedną funkcjonalność, której wcześniej nie ujawniono - wsparcie dla REST API. W środowiskach hybrydowych ułatwi to uwierzytelnianie i ujednolici wsparcie aplikacyjne w O365 i on-premises. Przy okazji pojawił się dodatkowy wirtualny katalog na potrzeby developerskie - /api. Informacje o zmianach można znaleźć na stronie o rozszerzeniach programistycznych dla Outlooka.

26 września 2016

Migracja skrzynek raz jeszcze

O migracji skrzynek pocztowych pomiędzy różnymi wersjami Exchange pisałem już kilkukrotnie, ostatni raz o migracji do wersji 2013. Kilka lat minęło, pojawiła się nowa wersja i nieco już na rynku okrzepła (właśnie wydano CU3), ale niestety wydajność migracji pozostawia wiele do życzenia.
Nadal wydajność pozostawia wiele do życzenia, a optymalizacja nie jest wcale oczywista. Dla osób, które korzystają z konsoli webowej, przenoszenie nawet pojedynczych skrzynek będzie trwało bardzo długo. Mimo wszystko postaram się zebrać kilka przydatnych wskazówek, działających zarówno dla serwerów Exchange 2013 jak i 2016.
Niektórzy twierdzą, że warto w pliku konfiguracyjnym usługi Mailbox Replication - “MSExchangeMailboxReplication.exe.config” zwiększyć wielkość bufora. Domyślnie zapisany jest parametr:
ExportBufferSizeKB=”512″
zamiast 512 należy w cudzysłowiu wpisać 10240 i zrestartować usługę. Powinno trochę pomóc, ale niestety niewiele.
Kolejnym zaleceniem, które wiele osób podkreśla, jest wyłączenie indeksowania baz danych - tych docelowych, które dodatkowo najczęściej spięte są w grupę DAG, co dodatkowo powoduje replikację danych między nimi i zwiększa obciążenie serwerów. Można to zrobić bardzo prosto poleceniem:
Set-MailboxDatabase -identity "Baza skrzynkowa" -indexEnabled $false
To przyspiesza część operacji, ale jak dla mnie niezadowalająco.
Żeby migracja zaczęła wykonywać się w miarę sprawnie należy wyłączyć lub obejść wbudowany w Exchange mechanizm throttlingu, czyli dławienia procesów. Opisywałem to w poście, który wymieniałem na początku artykułu:
new-moverequest -identity "skrzynka" -targetdatabase "Baza skrzynkowa" -priority highest -BadLimitRequest 50
Niektórzy zalecają piority emergency, ale wg mnie highest jest wystarczająca. Dzięki temu zadania migracyjne mają odpowiednio wysoki priorytet wykonania. Przy okazji dodanie niezerowego limitu na ilość uszkodzonych elementów też jest dobrą praktyką.

21 września 2016

Wrześniowe poprawki dla serwerów Exchange

Wczoraj Microsoft wydał kolejne paczki aktualizacji dla serwerów Exchange 2013 i 2016. Odpowiednio:
Pakiety te oczywiście zawierają poprawki do większości wykrytych po poprzednim pakiecie problemów oraz luk bezpieczeństwa, nie wprowadzają rewolucyjnych zmian, jednakże warto wspomnieć o kilku ciekawych cenach, które wprowadza CU3 dla Exchange 2016. Przede wszystkim, pozwala on na instalację Exchange na Windows Server 2016, który w sierpniu uzyskał status RTM, a po oficjalnej premierze na konferencji Ignite w przyszłym tygodniu będzie dostępny do pobrania. W Windows Server 2016 zawarty jest pakiet .Net Framework 4.6.2, więc CU3 wspiera ten pakiet, ale tylko na platformie Windows Server 2016, wsparcie dla starczych wersji systemu operacyjnego, również dla Exchange Server 2013 ma się pojawić w pakietach CU w dwóch kolejnych kwartałach.
Została również po raz kolejny zoptymalizowana replikacja w ramach DAG, co zaowocowało aktualizacja kalkulatora Exchange Server Role Requirements Calculator. Zaktualizowany został również widok kontaktów i statusu dostępności w kliencie webowa Outlook on the Web.