Bu makalemizde sistemimizde var olan Lync Server 2013 Preview Standart Edition sunucusuna yedeklilik için ikinci bir standart edition Lync Server 2013 sunucusu ekleyeceğiz. Bir felaket durumunda bu sunucunun bütün rolleri almasını sağlayacağız ve bunu sonrasında otomatik bir hale getireceğiz.
1.1. İkinci Sunucunun Kuruluma Hazırlanması:
Windows Server 2012 Datacenter kurulumu yapılmış ve domaine alınmış olan sunucumuza (lync2013-2.cozumpark.local - 192.168.1.126) Lync Server 2013 preview kurulumu için gerekli ön gereksinimleri kuruyoruz.
İlgili ön gereksinimleri ve kurulum aşamalarını aşağıdaki linkten takip edebilirsiniz.
Aşağıdaki ekranı elde edene kadar gerekli adımları tamamlıyoruz. Bu ekranda da C++ 11 x64 Minimum Runtime – paketini kurup şimdilik burada bırakıyoruz.
1.2. Topology Builder üzerinden ikinci sunuya ait bir “New Front End Pool” ekleme:
Lync2013 sunucumuz üzerinden Topology Builder \ Lync Server 2013 (Preview) \ cozumpark \ Lync Server 2013 (Preview) \ Standart Edition Front End Servers \ lync2013.cozumpark.local üzerine sağ tıklayıp “New Front End Pool..” seçiyoruz.
Birinci ekranı next ile geçiyoruz.
Burada FQDN bölümüne yeni ekleyeceğimiz sunucunun fqdn ini giriyoruz “lync2013-2.cozumpark.local” ve next tıklıyoruz.
Select Features kısmında ise sizin için gerekli özellikler seçilir. Ben burada sadece “Conferencing” seçiyorum.
NOT: Eğer birinci sunucumuzda eğer ilk kurulumda “Call Admission Control” seçmiş olsaydınız kurulumda bu seçenek pasif olarak gelecekti.
Herhangi bir seçenek işaretlemeden next tıklıyoruz.
Bu bölümde de herhangi bir seçenek işaretlemeden next tıklıyoruz.
Default olarak SQL Server store kısmı “lync2013-2.cozumpark.local\rtc” olarak gelmektedir. Değişiklik yapmadan next tıklıyoruz.
“Use previously defined file store” seçilerek ilk kurulumda belirttiğimiz “LyncShare” yolunu seçiyoruz.
“Specify the Web Services URL” kısmında “External Base URL” kısmına ilgili URL adresini giriniz.
Office Web Apps Server kısmında daha önce tanımlanmış “webapps.cozumpark.local” sunucumuzu seçiyoruz.
Office Web Apps için http://office.microsoft.com/tr-tr/web-apps/
Lync Web Apps için http://office.microsoft.com/en-in/communicator-help/welcome-to-microsoft-lync-web-app-HA101908015.aspx
Bu konuyla ilgili bir makale yazacağız, orada daha detaylı bir şekilde anlatıyor olacağız.
1.3. Topology Publish Etme:
Her zamanki gibi yapılan her değişiklikten sonra Topolojimizi Publish etmemiz gereklidir. Bunun için Action \ Publish Topology seçeneğiniz seçiyoruz.
Gelen ilk özet ekranı next ile geçilir.
Aşağıdaki ekranda Topology Publish işlemi başarılı bir şekilde gerçekleşmiştir. Sonraki adımlarda yapılacakları görmek için “Click here to open to-do list” tıklanabilir.
1.3. Birinci sunucumuzda “Install or Update Lync Server System”:
Lync Server 2013 Preview ISO sisteme takılır. Buradan “Install or Update Lync Server System” seçilir.
Burada açılan pencerede “Step 2: Setup or Remove Lync Server Components” karşısındaki “Run Again” butonuna tıklanır.
Gelen ilk özet ekranı next ile geçilir.
“Enablig new roles” ile yapılan değişikliklere ait yüklemeler yapılır. Aşağıdaki ekran finish tıklanarak kapatılır.
1.4. İkinci sunucumuzun Lync Server 2013 Components Deployment işlemleri:
Bu sunucumuz üzerinde bıraktığımız en son ekran üzerinde “Install or Update Lync Server System” seçeneğini tıklıyoruz.
Burada sırasıyla adımları tamamlayacağız. İlk olarak “Step 1: Install Local Configuration Store” karşısındaki “Run” butonuna tıklıyoruz.
“Retrieve directly from the Central Management Store” seçilip bir sonraki ekrana geçilir.
İkinci adımla kuruluma devam ediyoruz. “Step 2: Setup or remove Lync Server Components” karşısındaki “Run” butonuna tıklıyoruz.
Gelen özet ekranını next ile geçiyoruz.
Üçüncü adım olarak “Step 3: Request, Install or Assign Certificates” karşısındaki next butonuna tıklıyoruz.
Biz burada “Default Certificate” bölümünden CA sunucusundan tekrardan “Request” yapacağız ve sonrasından “Assign” işlemini tamamlayacağız.
OauthTokenIssuer sertifika Global olduğu için tekrar bu işlemi yapmayacağız.
“Request” tıklanarak işleme devam edilir gelen özet ekranı next ile geçilir.
“Send the request immediately to an online CA” seçeneği işaretlenir ve kuruluma devam edilir.
Bizim lab ortamımızda Domain Controller (w2012dc.cozumpark.local) üzerinde kurulu olan CA seçilir.
Friendly Name olarak uygun bir isim girilir. “LyncCert2”
“Mark the certificate’s private key as exportable” kutucuğu işaretlenir ve next tıklanır.
Organization ve Organization Unit kısımları doldurulur.
“Assign this certificate to Lync Server certificate usages” işaretliyken finish butonuna tıklanır.
Bu işlemlerden sonra “Default Certificate” (Server Default, Web services internal, Web Services External) üzerinde “LyncCert2” Friendly Name ve Expiration Date 10/1/2014 olan sertifikalar oluşturulmuş ve atanmıştır.
“Step 4: Start Services” karşısındaki “Run” tıklanır.
1.5. Yeni oluşturduğumuz Front End Pool testinin yapılması:
Bu işlem için birinci sunucu üzerinden Lync Server Control Panel açılır. Açılış ekranında https://lync2013.cozumpark.local/Cscp URL seçilir.
Lync Control Panel \Users \ User Search \ Find işlemleri yapılır. “Oguzhan Boran” kullanıcısı seçilir ve “Action \ Move Selected users to pool ..” seçilir.
“Move Users” ekranında “Destination registrar pool” olarak yeni front end pool olan “lync2013-2.cozumpark.local” seçilir ve OK tıklanır.
Bu işlemden sonra kullanıcının “Registrar pool” olarak yeni sunucumuza ait front end pool gözükmektedir.
Peki Lync Client tarafında ne tür değişiklikler oldu ? Aslında kullanıcı askıda olduğu için (aktif bir Voice arama, Konferans veya IM) değişikliği hissetmedi sayılır.
· 30 sn – 50 sn arasında log out ve log on işlemi gerçekleşti.
· Eğer bir aktif Voice araması olsaydı bu süre içerisinde arama devam edecekti.
· Eğer bir paylaşımı olsaydı paylaşım devam edecekti.
· Eğer bir Video olsaydı bu işlem devam edecekti.
Sadece ekran aşağıdaki gibi log out olduğu için diğer fonksiyonları başlatamaz duruma gelecekti. Onun haricinde çok önemli hissedilir değişiklikler yaşamayacaktı.
30sn. – 50 sn. Sonrası tekrar log on durumuna gelecektir.
(Bu durum benim lab ortamımım kaynak yetersizliğinden de kaynaklanıyor süreler çok daha düşebilir)
1.6. İkinci sunucunun “Associated Backup” olarak konfigure edilmesi:
Burada amaçlanan işlem eğer birinci sunucumuz üzerindeki Front End Pool bir şekilde down olursa oluşturduğumuz ikinci Front End Pool üzerinden kullanıcıların çalışmalarını sağlamaktır. Bu işlem için birinci sunucumuz üzerinde Topology Builder kısayolunu çalıştırıyoruz.
Lync2013.cozumpark.local üzerinde sağ tıklayıp “Edit Properties” seçiyoruz.
“Resiliency” bölümünden “Associated backup pool” kutucuğu işaretlenir ve listeden “lync2013-2.cozumpark.local” front end pool seçilir.
“Automatic Failover and Failback for Voice” kutucuğu işaretlenir ve aşağıdaki değerler girilir:
“Voice failure detection interval (sec): 30”
“Voice failback internal (sec): 30”
Bu değişikliklerden sonra yine topolojiyi publish etmemiz gerekiyor. Action \ Publish Topology adımlarını uyguluyoruz.
“Click here to open to-do list” sonrasında yapılacaklar listesinde birinci sunucu üzerinde ve ikinci sunucu üzerinde yapılması gereken işlemlere başlıyoruz. İlk olarak lync2013.cozumpark.local sunucu üzerinde “Install or Update Lync Server System” seçilir.
“Step 2: Setup or Remove Lync Server Components” bölümündeki “Run” butonuna tıklanır.
Bu işlem sonrası BackupService.msi feature yüklenir. Finish tıklanarak işlem sonlandırılır.
Backup Servisinin çalışmaya başlaması için “Step 4: Start Services” karşısındaki “Run” butonuna tıklanır.
Birinci sunucu üzerinde “Lync Server Backup Service” servisi çalışmaya başlamıştır.
Bu sunucu üzerinde yaptığımız işlemlerin aynısını ikinci Lync Server sunucusu üzerinde de yapıyoruz. İkinci Lync Server 2013 sunucusu üzerinde “Install or Update Lync Server System” seçiyoruz.
“Step 2: Setup or Remove Lync Server Components” karşısındaki “Run” butonuna tıklanır.
Çok büyük ihtimalle aşağıdaki hatayı alacaksınız. Bunun için PowerShell üzerinden RTC database manuel yüklenmesi gerekecektir.
PowerShell üzerinden aşağıdaki komutu giriyoruz:
install-csdatabase –centralmanagementdatabase –sqlserverfqdn lync2013-2.cozumpark.local –sqlinstancename rtc
PowerShell komutu sonrası ekran çıktısı aşağıdaki gibi olacaktır. İşlem başarıyla tamamlanmıştır.
Bu işlem sonrası “Step 2: Setup or Remove Lync Server Components” adımı tekrarlanır ve herhangi bir hata ile karşılaşılmadan tamamlanır.
“Step 4: Start Services” karşısındaki “Run” butonuna tıklanarak Lync Backup Servisinin çalıştırılması sağlanır.
İkinci sunucumuz üzerinde de “Lync Server Backup Service” servisi çalışmaktadır.
Son olarak birinci sunucumuz üzerinde aşağıdaki komutları Lync Power Shell üzerinden yürütünüz.
Invoke-CSBackupServiceSync –PoolFqdn lync2013.cozumpark.local
Invoke-CSBackupServiceSync –PoolFqdn lync2013-2.cozumpark.local
1.7. Backup / Pool Server için DNS kayıtlarının oluşturulması:
Bu işlem için Domain Controller üzerinden DNS MMC açılır. İlgili zone üzerinden sağ tık “Other New Records” seçilir.
“Service Location (SRV)” seçilerek “Create Record” tıklanır.
Aşağıdaki değerleri giriyoruz.
Domain: cozumpark.local
Service: _sipinternaltls
Protocol: _tcp
Priority: 10
Weight: 10
Port Number: 5061
Host offering this service: lync2013-2.cozumpark.local
Bunu test etmek için Start / Run / cmd üzerinden “nslookup” komutunu çalıştırıyoruz.
Set type=srv
_sipinternaltls._tcp.cozumpark.local
1.8. Test Resiliency adımı:
Bunun için birinci sunucumuzun ethernet kartını “Disable” yapıyoruz.
Bunun sonrasında 40 sn içerisinde Lync Client log out olacaktır.
Birkaç dakika sonra Lync Client tekrar logon olacaktır. Bunun anlamı yeni oluşturduğumuz Front End Pool çalışmaktadır. Fakat görüleceği üzere kontak listesi görünmemekte, Arama yönlendirme çalışmayabilir durumda, Chat Room erişimi vb. Özellikler kullanılabilir değildir.
Bu işlemin testinden sonra birinci sunucumuzun ethernet kartını “Enable” duruma getirdiğimizde Lync client tekrar birinci pool üzerinde aktif olacaktır. Bu işlem yaklaşık 10 sn ile 40 sn arasındadır.
1.9. Lync Server 2013 Failover Seçenekleri:
Birinci sunucumuzda Lync Server Management Shell üzerinde Get-CsService –CentralManagement komutunu çalıştırdığımızda aşağıdaki bilgileri elde ederiz:
Active: True
PoolFqdn: lync2013.cozumpark.local
Görüleceği üzere MirrorCentralManagementDatabase lync2013-2.cozumpark.local olarak gözükmekte Active: False durumundadır.
Lync Server Topology üzerinde var olan Backup Pool görebilmek için aşağıdaki komutu yürütürüz.
Get-CsPoolBackupRelationship –PoolFQDN lync2013.cozumpark.local
TargetPool : lync2013-2.cozumpark.local
Get-CsManagementStoreReplicationStatus –CentralManagementStoreStatus komutu ile ulaşılabilir replicalar görünmektedir.
1.10.1. Lync Failover Simule Edilmesi:
Bu işlem için birinci sunucumuzun ethetnet kartını tekrar disable duruma getiriyoruz. Şu an birinci Lync Server sunucumuz DOWN olmuştur diye düşünüyoruz.
İkinci sunucumuz üzerinde Lync Server Management Shell açılır ve aşağıdaki komut girilir.
Invoke-CsManagementServerFailover -BackupSqlServerFqdn lync2013-2.cozumpark.local -BackupSqlInstanceName “RTC” –Force
Konu ile ilgili daha detaylı bilgiyi aşağıdaki linkten bulabilirsiniz.
http://technet.microsoft.com/en-us/library/jj204678(v=ocs.15).aspx
“Y” tuşuna basıyor işlemi Confirm ediyoruz.
ActiveMasterFqdn görmek için aşağıdaki komutu giriyoruz. Bunun için birkaç dakika beklememiz gerekebilir.
Get-CsManagementStoreReplicationStatus –CentralManagementStoreStatus
Front End Pool failover durumuna geçirmek için aşağıdaki komutu kullanıyoruz:
Invoke-CsPoolFailOver –PoolFqdn lync2013.cozumpark.local –Disastermode –Verbose
“Y” tuşuna basarak işlemi Confirm ediyoruz.
Bu işlemler sonrası daha önce Lync Client üzerinde bulunan limitli fonksiyonlar kalkmış duruma gelmektedir. Lync Client tekrar log on olma süresi 1 dk ile 3 dk arasındadır. (Bu süreler bağımsızlık gösterebilir)
Aşağıdaki Lync Client ekranında sadece Persistent Chat ile alakalı olarak Chat Room bölümü kullanılamamaktadır. Bunun haricindeki bütün fonksiyonlar çalışılabilir durumdadır.
Böylelikle Lync Server 2013 Preview Standart Edition üzerinde FailOver yapısını kurmuş ve test etmiş olduk. Bir sonraki makalemizde görüşmek üzere...
Umarım faydalı bir makale olmuştur. Bir sonraki makalemizde görüşmek üzere