Mail sunucu yöneticilerinin merakla beklediği Exchange Server 2013 ürününün Preview sürümü 16 Temmuz 2012 tarihinde indirilebilir hale geldi. Böylece ürünü inceleme fırsatı da başlamış oldu.
Bu makalemizde Exchange mimarisinde yüksek çalışabilirlik (High Availability) çözümü olarak kullanılan Database Availability Group (DAG) özelliğini inceleyeceğiz. DAG, Exchange Server 2010 hayatımıza girmiş olup Exchange Server 2013 ile yaşamını devam ettirmektedir. Hem sunucu hem de Database bazlı yedekleme sağladığı için adminler tarafından çok sevilen ve kullanılan bir yapıdır.
Exchange Server 2013 ile mimaride birçok değişiklik yapılmış olmasına rağmen yüksek çalışabilirlik (High Availability) tarafında çok fazla değişiklik bulunmamaktadır. Bu alanda yönetim ve performans arttırıcı iyileştirmeler yapılmıştır.
Exchange Server 2010’da olduğu gibi member sayımız yine 2 ile 16 arasında olabilir. Microsoft tarafından en az 3 member kullanılması önerilmekte olup 2 member kullanarak da DAG kurabiliriz.
DAG yapılandırmasına geçmeden önce kısaca gereksinimlere bir göz atalım.
Genel gereksinimler:
DNS’in düzgün çalışması ve dinamik güncellemelere izin verilmiş olması gerekmektedir.
DAG’e eklenecek olan Mailbox sunucularının domaine eklenmiş olması gerekmektedir.
Üzerinde DC olan Mailbox sunucunun DAG’a eklenmesi Microsoft tarafında desteklenmemektedir.
Yazılım gereksinimleri:
DAG, Exchange 2013 Preview Standard ve Exchange 2013 Preview Enterprise sürümlerinde kullanılabilir durumdadır. Ek olarak DAG’e eklenen member’lar Standart ve Entprise sürümlerine sahip olabilir ve birlikte çalışabilir.
DAG’a eklenecek sunucuların işletim sistemleri aynı olmak zorundadır.
DAG, Windows Failover Cluster teknolojisini kullandığı için member’ların işletim sistemi versiyonu Enterprise olmak zorundadır.
Network gereksinimleri:
Yedekli bir yapı kurmak ve network tarafında performans problemi yaşamamak için DAG’a eklenecek member’ların minimum 2 network kartına sahip olması gerekmektedir. 1.si MAPI network’u yanı client bağlantıları için 2.si ise replikasyon için kullanılmaktadır.
DAG member’larında aynı sayıda network olması gerekmektedir. Yani bir tane varsa diğer member’larda da bir tane olması gerekmektedir.
DAG isim ve IP gereksinimleri:
DAG için tek ve kullanılabilir, en çok 15 karakterden oluşan isme ihtiyacı vardır.
DAG ismi için aynı networkte bulunan bir ip adresine ihtiyaç vardır.
DAG için Network yapılandırması
– MAPI
Network Özellikleri | Ayarlar |
Client for Microsoft Networks | Enabled |
QoS Packet Scheduler | Optionally enable |
File and Printer Sharing for Microsoft Networks | Enabled |
Internet Protocol Version 6 (TCP/IP v6) | Enabled |
Internet Protocol Version 4 (TCP/IP v4) | Enabled |
Link-Layer Topology Discovery Mapper I/O Driver | Enabled |
Link-Layer Topology Discovery Responder | Enabled |
NOT: “Register this connection’s addresses in DNS” kutucuğu seçili olması gerekmektedir.
– REPLICATOIN
Network Özellikleri | Ayarlar |
Client for Microsoft Networks | Disabled |
QoS Packet Scheduler | Optionally enable |
File and Printer Sharing for Microsoft Networks | Disabled |
Internet Protocol Version 6 (TCP/IP v6) | Enabled |
Internet Protocol Version 4 (TCP/IP v4) | Enabled |
Link-Layer Topology Discovery Mapper I/O Driver | Enabled |
Link-Layer Topology Discovery Responder | Enabled |
|
|
NOT: “Register this connection’s addresses in DNS” kutucuğu boş olması gerekmektedir.
Witness sunucu gereksinimi:
File Share Witness, DAG member sayısı çift olması durumlarda kullanılmakta olup tek olması durumunda kullanılmamaktadır. FSW olarak herhangi bir sunucu kullanılabilir. FSW için Windows sunucu versiyonunun ve DAG member’larında kullanılan işletim sistemleriyle aynı olmasına gerek yoktur.
DAG’a dahil edilecek member’lara ait isim, network, role ve database bilgileri aşağıdaki gibidir.
Mapi Network | Replikasyon Network | Role | Database | |
MBX1 | 10.1.1.4 | 192.168.1.1 | Mailbox | DB1 |
MBX2 | 10.1.1.5 | 192.168.1.2 | Mailbox | DB2 |
DAG Grubu oluşturulması
Exchange Server 2007 ve 2010’de kullandığımız Exchange Management Console bu sürümde bulunmamaktadır. EMC yerine Exchange Admin Center (EAC) kullanılmaktadır. Exchange Management Shell (EMS), yeni gelen komutlarla beraber kullanılmaya devam etmektedir.
Exchange Admin Center (EAC)’a Client Access Server üzerinden erişilmekte olup aşağıdaki url kullanılır.
Https://ClientAccessServer/ECP
Yeni bir DAG oluşturmak için EAC’da sırasıyla Servers-Database Availability Groups seçeneğini kullanarak + ‘ya tıklıyoruz. Gerekli bilgileri aşağıdaki şekilde giriyoruz.
Böylece DAG1 isimli DAG grubumuzu oluşturmuş olduk. Aşağıdaki PowerShell komutunu kullanarak aynı işlemi yapabiliriz.
New-DatabaseAvailabilityGroup -Name DAG1 -WitnessServer cas1.yasarcugalir.local
-WitnessDirectory C:\fsw -DatabaseAvailabilityGroupIPAddresses 10.1.1.155
DAG1’e ait daha fazla bilgiye “Get-DatabaseAvailabilityGroup DAG1 | fl”
komutunu kullanarak erişilebilir.
DAG Grubuna Member Eklenmesi:
DAG grubunu oluşturduktan sonra sıra geldi member’ların eklenmesine. Ekleme işlemini aşağıdaki şekilde yapıyoruz. EAC’da “Manage Membership” seçeneğini kullanıyoruz.
DAG grubuna Member’ları başarılı şekilde eklediğimizde aşağıdaki ekran gelecektir.
Member’ların eklenmesi sırasında aşağıdaki hatanın gelmesi durumda, oluşturacağımız DAG grubu ismi ile aynı olacak şekilde domainde yeni bir bilgisayar hesabı oluşturuyoruz. Oluşturulduğumuz bilgisayar hesabı üzerinde DAG’a ekleyeceğimiz member’ların bilgisayar hesaplarına Full yetki vererek bilgisayar hesabını disable yapıyoruz.
Error:
A server-side database availability group administrative operation failed. Error: The operation failed. CreateCluster errors may result from incorrectly configured static addresses. Error: An error occurred while attempting a cluster operation. Error: Cluster API ‘”CreateCluster() failed with 0x5. Error: Access is denied”‘ failed. [Server: MBX1.domain.local]
Bu işlemler sonrasında member’ları başarılı şekilde ekleyebilirsiniz.
Aşağıdaki PowerShell komutunu kullanarak Member’ları ekleyebiliriz.
Add-DatabaseAvailabilityGroupServer -Identity DAG1 -MailboxServer MBX1,MBX2
Database’lerin Oluşturulması:
Database’leri EAC ve EMS olmak üzere 2 yerden açabiliyoruz. EAC’de databaseleri açmak için Servers-Databases menüsü kullanılır. DAG için MBX1’de DB1, MBX2’de DB2 isimli database’leri oluşturacağız.
DB1 isimli database’in oluşturulması :
DB2 isimli database’in oluşturulması:
Database oluşturma işlemini aşağıdaki PowerShell komutuyla da gerçekleştirebiliriz.
New-MailboxDatabase -Name “DB1” -Server MBX1
New-MailboxDatabase -Name “DB2” -Server MBX2
Mount-Database DB1
Mount-Database DB2
Database’lerimiz oluştu ve mount duruma geldi.
Database Kopyalarının Oluşturulması:
Şu aşamaya kadar yapılan işlemler database kopyalarının oluşturulması için altyapı hazırlığıydı. DB1, MBX1 üzerinde oluşturulduğu için kopyasını MBX2’ye ve DB2, MBX2 üzerinden oluşturulduğu için kopyasının MBX1’e gönderilmesi gerekmektedir.
Database kopyalarının oluşturmak için EAC’da Servers – Databases- Add database copy menüsünü kullanıyoruz.
DB1’in kopyasının MBX2’ye gönderilmesi;
DB2’in kopyasının MBX1’e gönderilmesi;
Database kopyalarının oluşturulması işlemini aşağıdaki PowerShell komutlarının kullanarak gerçekleştirebiliriz.
Add-MailboxDatabaseCopy -Identity DB1 -MailboxServer MBX2 -ActivationPreference 2
Add-MailboxDatabaseCopy -Identity DB2 -MailboxServer MBX1 -ActivationPreference 2
Database kopyaları hakkında ayrıntılı bilgi almak için aşağıdaki PS komutlarını kullanabiliriz.
Sunucu bazlı sorgulama:
Get-mailboxDatabaseCopyStatus –server MBX1
Get-mailboxDatabaseCopyStatus –server MBX2
Database bazlı sorgulama:
Get-mailboxDatabaseCopyStatus DB1
Get-mailboxDatabaseCopyStatus DB2
CopyQueue Length: Aktif’den pasif’e kopyalanmayı bekleyen log sayısıdır.
ReplayQueue Length: Pasif’e kopyalanmış fakat database commit edilmeyi bekleyen log sayısıdır.
Bu işlemler sonrasında DAG yapımızı oluşturmuş olduk. DAG’a dahil olan DB1 ve DB2 database’lerine yeni açılan posta kutularını oluşturabilir ve var olan posta kutularını da taşıyabiliriz.
Bir sonraki makalemizde görüşmek üzere.