Bu makalemde Exchange 2016 Dag mimarisindeki sunucuların cumilative update işlemleri sırasında kullanılan powershell işlemlerini anlatıyor olacağım.
Örneğimiz 3 tane sunucudan oluşan hyperv üzerinde dag mimarisinde exchange yapısı.
Sunucu1: EXCHANGE1.abc.com Sunucu2: EXCHANGE2.abc.com Sunucu3: EXCHANGE3.abc.com
işlemleri tek bir sunucu için yapıyor olacağız. Sonrasında diğer sunucular için benzer işlemler tekrarlanacaktır.
ADIM1: Hyper v üzerinden EXCHANGE1 sunucusunun checkpointi alınır. Antivirüsün durdurulması önerilir.
ADIM2: Sunucuda .NET 4.8 in yüklü olması gerekir. Bu adım o an için yüklediğiniz CU paketinin durumuna göre değişiklik gösterebilir. Öncesinde yüklemeseniz bile sunucuda olmaması durumunda CU yüklemesine başlama aşamasında bununla ilgili uyarıyı verecektir.
ADIM3: Komut satırı ekranına CMD “Run as Administrator” olarak başlatılır.
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe update
komutu çalıştırılır.
Bu adımdaki temel amaç update sürecini hızlandırmaktır. Bu adım atlanarak yapılan CU güncellemeleri çalıştırılması durumuna göre daha uzun sürmektedir.
ADIM4: Bu aşamada powershell komutları ile ilerleyeceğiz. Bu komutları tek tek çalıştırmanızı öneririm. Bu aşamada Set ile başlayan işlemlerle mevcut sunucunun bakım moduna alınması ve yapılan işlemlerin kontrolü içinde get ile başlayan komutlar kullanılmıştır.
Önemli:İkinci sırada kullanılan komutta mesajlar redirect edilirken ara bir sunucu kullanılmaktadır. Kısaca EXCHANGE2 sunucusuna CU update geçerken bu alanı EXCHANGE1 veya EXCHANGE3 yapmalısınız.
Set-ServerComponentState EXCHANGE1 –Component HubTransport –State Draining –Requester Maintenance Redirect-Message -Server EXCHANGE1 -Target EXCHANGE2.abc.com Suspend-ClusterNode –Name EXCHANGE1 Set-MailboxServer EXCHANGE1 –DatabaseCopyActivationDisabledAndMoveNow $true Get-MailboxServer EXCHANGE1 | Select DatabaseCopyAutoActivationPolicy Set-MailboxServer EXCHANGE1 –DatabaseCopyAutoActivationPolicy Blocked Get-MailboxDatabaseCopyStatus -Server EXCHANGE1 | Where {$_.Status -eq "Mounted"} Set-ServerComponentState EXCHANGE1 –Component ServerWideOffline –State InActive –Requester Maintenance
ADIM5: İşin özü buraya kadar yapılan işlemler CU update öncesi hazırlıklardı. Bundan sonraki adımda CU 18 veya CU 19 upadetinin geçilmesi şeklinde olacaktır. CU update ISO sunu mount ettikten sonra örneğimizde D: sürücüsüne mount etmiş olsun. Komut satırını yani CMD yi “Run as Administrator” olarak başlattıktan sonra
D:\>setup yazıp Enter yaptığımızda 17-18 adımlık bir süreç başlar. Sonrasında kurulum tamamlanmış olur. Bu süreçte progressbar daki yavaşlık donma ve benzeri işlemlerde ümitsizliğe kapılmayın süreç CU updatelerinde uzun sürer bu normal bir durumdur.
ADIM6: Sunucu reboot edilir. (reboot istemesede sunucunun reboot edilmesi önerilir.)
ADIM7: Son olarakta bakım moduna alınan sunucumuz tekrar online moda alınır. aşağıdaki komutları tek tek uygulamanızı öneririm.
Set-ServerComponentState EXCHANGE1 –Component ServerWideOffline –State Active –Requester Maintenance
Resume-ClusterNode –Name EXCHANGE1
Set-MailboxServer EXCHANGE1 –DatabaseCopyAutoActivationPolicy Unrestricted
Set-MailboxServer EXCHANGE1 –DatabaseCopyActivationDisabledAndMoveNow $false
Set-ServerComponentState EXCHANGE1 –Component HubTransport –State Active –Requester Maintenance
İşlemler bu kadar.
Kürşat ARI / System Engineer & PowerShell Developer