Windows Server 2016 : HA | Failover Clustering -1

Xoş gördük,

Bu mövzumuzda bir müddət öncə Microsoft tərəfindən rəsmi olaraq təqdim olunmuş Windows Server 2016-nın önəmli funksionallıqlarından biri olan Failover Clustering xidmətindəki  yeniliklərlə tanış olacaq, növbəti məqalələrimizdə isə WSFC xidmətinin qurulumu və tətbiqini reallaşdıracağıq.

Böyük  və kritik infrastrukturlarda Failover Clustering xidməti  əhəmiyyətli rola malikdir. Microsoft şirkəti uzun illərdir ki, Windows Server platforması üzərində bu xidməti  təqdim etməkdədir. Lakin Failover Clustering xidmətinin sürətli inkişaf mərhələsi Windows Server 2008 ƏS – dövründən başlayıb.  Təbii olaraq bu inkişafı tətikləyən əsas amillərdən  biri Hyper-V  xidmətinin ortaya çıxması olmuşdur. Microsoft dünyasında kəsintisiz xidmət, yüksək əlçatanlıq dedikdə, ağıla gələn funksionallıqlardan biri Failover Clustering-dir. Eynilə  Exchange Server, MS SQL Server kimi məhsulların kəsintisiz xidmət göstərməsinin arxitekutrasında yatan servislərdən biri də yenə  Failover Clusteringdir. Buna görə də  bu xidməti öyrənmək və tətbiq etmək hər bir mütəxəssis üçün vacib və ciddi əhəmiyyət tələb edir. Microsoft artıq hər yeni ƏS-də Failover Clustering xidmətini ciddi şəkildə təkmilləşdirir. Eynilə də Windows Server 2016 ƏS-ində də bu xidmətlə bağlı bir çox yeniliklər və təkmilləşdirmələr həyata keçirilib.

1. Cluster Operating System Rolling Upgrade : Windows Server 2016 ƏS-ində təqdim olunan bu yenilik vasitəsilə  artıq Hyper-V və yaxud Scale-Out File Server yüklərini xidmət kəsintisi olmadan Windows Server 2012 R2 üzərindən Server 2016 üzərinə daşıya bilərik. Bundan öncəki ƏS-lərində bir sıra ciddi dəyişikliklər olsada bu imkan vasitəsilə digər keçmiş sistemlərdəki  önəmli çatışmazlıqlardan biri aradan qalıdırılıb.
Bu mexanizm necə çalışır ?
:  Microsftun məhşur xidmətlərindən biri olan Active Directory xidməti hər birimizə tanışdır. Active Directory xidmətində mövcud olan forest və domain functional level-lərin upgrade mexanzminə bənzər funksionallıq eynilə Clustering tərəfində təqdim olunub.

Şəkilə diqqət etdiyimiz zaman dədə-baba dövründən davam edən Failover Clustering xidməti üçün eyni əməliyyat sistemi  məhdudiyyəti artıq aradan qaldırılıb. Belə ki, mövcud Cluster daxilində  WinSrv 2012 R2 və Server 2016 fəaliyyət göstərə bilir. Və bu imkan vasitəsilə biz 2012 R2 üzərində çalışan Hyper-V maşınlarını Server 2016 üzərinə canlı daşıyaraq (Live Migration) digər Hostları da yeni sistemə yüksəltmə imkanını qazanmış oluruq. Burdakı proses in-place upgrade deyil, Hostların cluster mühitindən çıxarılaraq normal şəkildə tövsiyə olunan fresh install vasitəsilə sistemlərinin yenidən qurulub Cluster mühitinə daxil olunması nəzərdə tutulub.

Şəkildəki misala nəzər saldığımız zaman sol tərəfdə Windows Server 2012 R2 Failover Cluster mühitinə daxil  olunmuş Server 2016 ƏS görürük. Gördüyümüz kimi bu vəziyyətdə CFL (Cluster Functional Level) = 8-dir. Bütün Server 2012 R2 mühitini Server 2016-ya yüksəltdikdən sonra powershell vasitəsilə CFL yüksəldilməsi gərəklidir (CFL=9). Mixed OS platformasının dəstəklənməsinə baxmayaraq 4 həftə ərzində bütün Cluster arxitekturasının Windows Server 2016-ya daşınması tövsiyə olunur.
Qeyd: CFL -i yüksəltdikdən sonra öncəki səviyyəyə endirilməsi hal-hazırda dəstəklənmir.

2. Workgroup & Multi-Domain Clusters : Windows Server 2012 R2 və öncəki ƏS-lərində  Failover Clustering xidməti qurulan zaman eyni domain üzvlüyü ana tələblərdən biri idi. Əsasən MS SQL server kimi mühitlərdə bu məhdudiyyətin aradan qaldırılması önəmli dəyişikliklərdən biri sayılır. Windows Server 2012 R2 ilə həyatımza daxil olan Active Directory-Detached Cluster funksionallığı Active Directory asılılığını qismən azaltsa da, bu məhdudiyyət də Windows Server 2016 ƏS ilə aradan qaldırılmış oldu.

 a) Single-Domain Clusters: Bu metod əvvəlki ƏS-ləri tərəfindən dəstəklənən və davam edən funksionallıqdır. Hyper-V tərəfdə Live Migration kimi funksionallığın önəmli olduğu mühitlərdə tövsiyə olunandır.

b) Multi-Domain Clusters: Windows Server 2016-nın təqdim etdiyi bu yeni imkan vasitəsilə artıq fərqli domainlərdəki nodları eyni cluster mühitində çalışdırmaq mümkündür.

c) Workgroup Clusters: Bu funksionallıq vasitəsilə artıq domain üzvlüyünə ehtiyac qalmadan workgroup mühitində Failover Cluster xidməti dəstəklənir.

Ümumi olaraq nəzər  yetirdiyimiz zaman bu imkanlarla MS SQL tərəfdə domain xidmətindən asılılıq aradan qalxsa da (SQL Serverə xas kimlik doğrulama mexanizmi) Hyper-V kimi mühitlərdə asılılıq davam etməkdədir. Təbii olaraq bu məhdudiyyətlərin olması Hyper-V, File Server kimi məhsulların Kerberosdan müəyyən mənada asılı olması ilə əlaqədardır.

3. Virtual Machine Resiliency : Compute & Storage resiliency olaraq iki bölümə ayıra biləcəyimiz bu imkan vasitəsilə gözlənilməz anlıq kəsinitilərə qarşı WSFC xidməti daha dayanaqlı hala gətirilərək yaşanacaq xidmət kəsintiləri minimallaşdırılıb. WSFC xidmətinə aid müəyyən servislərdə yaşanan problemlər  və yaxud fiziki əsaslı baş verən ani kəsintilər zamanı, sistem avtomatik olaraq bəzi önləmlər alaraq virtual maşınların crash olmasını və yaxud hər hansı bir  Hostun (Node) cluster mühiti üçün yaradacağı risklərin qarşısını almış olur (Resiliency Workflow- mexanizmi izlənir). Lab mühitində bir neçə süni problemlər yaradaraq bu statuslardakı dəyişikliklərə diqqət yetirək. , Unmonitored (VM-səviyyəsində), Pause-Critical (CSV-səviyyəsində)

a) Cluster servisini (clussvc.exe) kill etdiyimiz zaman aşağıdakı nəticə ilə qarşılaşacağıq. Cluster servisində nasazlıq yaşanan Host avtomatik olaraq Isolated moda keçirilərək aktiv üzvlükdən arındırılmış olur. Lakin Host VM-lar üçün xidmət göstərməyə davam edir və VM-lar bu müddət ərzində Unmonitored modda fəaliyyətini davam etdirirlər.

b) Server aktivləşən zaman Host yenidən aktiv Cluster mühitinə daxil olmuş olur. Lakin 1 saat ərzində bu hal təkrarlanarsa Host Quarantined moduna daşınmış olacaq.

c) Host Quarantined moda daşındıqdan sonra avtomatik olaraq üzərindəki bütün VM-lar digər Nodlara daşınmış olacaq.

d) Müdaxilə etmədiyimiz təqdirdə default olaraq bu müddət 2 saat davam edir.

f) Manual müdaxilə üçün Start-ClusterNode -CQ əmrindən yararlanaraq Nodu yenidən aktiv mühitə daşıya bilərik.

g) CSV (Cluster Shared Volume)-la bağlı yaşanan ani kəsintilərdə (FC/FCoE/İSCSI/SAS) VM-lər Paused-Critical moda daşınaraq VM-lərin crash olma riski minimallaşdırılmışdır. Sınaq üçün arxa planda fəaliyyət göstərən İSCSI Storage-i restart edərək belə bir nəticə əldə edə bilərik :).

h) CSV bağlantısı qısa zaman ərzində bərpa olarasa VM fəaliyyətinə davam etmiş olacaq. Təbii olaraq Cluster mühiti üçün bir storage kəsinitisinin baş verməsi ən böyük risklərdən biridir. Və bu misaldakı kimi hər zaman uğurlu olmayacağıq, ona görə də VM-lərin failed  moda düşməsi bir çox hallarda qaçınılmazdır.

4. Virtual Machine Start Ordering: Windows Server 2016 tərəfində növbəti yenliklərdən biridir. Server 2012-dən bizə tanış olan VM-ların açılışı zamanı Low, Medium, High kimi funksionallıqlardan yararlanaraq maşınların açılmasına öncəlik tanıyırdıq. Bu funksionallıq müəyyən mənada tam effektiv deyildi. Yeni imkan vasitəsilə artıq biz maşınlar açılan zaman onları qruplar halına salaraq, müəyyən saniyələr daxilində ardıcıl açılışını təmin edə bilərik. Bu həll toplu və yaxud bir qrup VM-lərin açılışı zamanı online xidmətə başlayacaq sistemlərin doğru şəkildə çalışmasına əhəmiyyətli dərəcədə köməklik göstərmiş olur. Misal üçün: DNS serverdən və yaxud Domain xidmətindən asılı olan hər hansı bir xidmətin daha öncə aktiv hala gəlməsi və ya Database xidməti göstərən server aktivləşmədən öncə bu serverdən asılı olan Application serverin aktivləşməsi kimi problemlərin önünə keçmək üçün bu funksionallıqdan yararlana bilərik. Hal-hazırda bu funksionallığın icrası powershell üzərindən mümkündür.

a) Sadə bir misal vasitəsilə Set-lər yaradaraq MSSQL-DB01 serverin DC01-dən sonra açılmasını təmin edirik.

 

b) Əmrlərin icrası tamalandıqdan sonra  sınaq üçün MSSQL-DB01 Serverini başlatdığınız zaman  diqqət edəcəksiniz ki, DC01  sönülü olsa da avtomatik olaraq açılış moduna keçəcək. Bunun səbəbi Add-ClusterGroupSetDependency əmri ilə MSSQL-DB01 -i bir növ DC01-in açılış vəziyyətindən asılı hala gətirmiş olmağımızdır.

Bu funksionallıq bizə Blade Serverləri xatırlatsa da qurğular üzərindəki imkanlar bu qədər təkmil deyil.

5. VM Load Balancing: Windows Server 2016 -dakı Cluster mühiti üçün digər yeniliklərdən biridir. Host üzərində CPU və RAM səviyyəsində yükləri analiz edərək avtomatik Virtual maşınların Cluster mühitində balanslaşmış şəkildə fəaliyyət göstərməsinə imkan yaradır. SCVMM -tərəfdə mövcud olan Dynamic Optimization  bənzəri funksionallığı həyata keçirir.  Default olaraq aktivdir.

 

6. Cloud Witness: Stretch Cluster həlli üçün önəmli yeniliklərdən biridir. Windows Server 2012 mühitində müzakirə olunan önəmli mövzulardan biri idi. Bu tip ssenarilərdə witness üçün istifadə etdiyimiz 3-cü bölgə yerinə Microsoft Azure üzərindəki bu xidmətdən yararlana bilərik.

7. Storage Replica: Və Microsoft tarixindəki önəmli dəyişiklərdən biri. SSDC (Software-Defined Data Center) ideologiyası həyatımza daxil olduğu gündən bəri bir çox vendor kim Microsoftda bu mövzuda ciddi təkmilləşdirmələr aparır. Server 2016 ilə artıq block səviyyəsində Asynchronous və əsasən də Synchronous  replika həyata keçirə bilərik. Disaster ssenariləri üçün çox əhəmiyyətli yenilik olan bu funksionallıq soft əsaslı bir həlldir. İstənilən storage modelindən asılı olmayaraq Stretch Cluster, Server to Server, Cluster to Cluster arası replikasiyalar həyata keçirmək mümkündür. Microsoft məhsullarının bəzilərinin özünə xas əvvəlki həllərini bu həllə qarışdırmamaqda yarar var (misal üçün : Exchange DAG). Bu məhsulun tək mənfi tərəfi Windows Server 2016 Datacenter Edition vasitəsilə gəlməsidir. Hal-hazırda digər versiyalar tərfindən dəstəklənmir.

8. Fault Domain Awareness: Microsoft Azure tərəfədə  bənzəri həllə  qarışlaşmağınız mümkündür.  Bu funksionallığın əsas hədəflərindən biri yaşanacaq hər hansı fiziki problem zamanı (biz buna plansız kəsintilər də deyə bilərik – misal üçün: gözlənilmədən hər hansı bir serverin sıradan çıxması) xidmət kəsintisini minimallaşdırmaqdır. Fault domainləri Node, Chassis, Rack, Site səvviyəsində tənzilənməsi mümkündür.

 


Fault Domainləri hardware qrupları kimi qələmə verə bilərsiniz. Misal üçün biz virtual maşınları Azure platformasında çalışdıran zaman FD-lər vasitəsilə VM-ləri ayrı-ayrı qurğular üzərində tuta bilirik. Bunun nəticəsində plansız kəsintilər zamanı VM-lərin bir hissəsi failover olarkən digər hissəsi xidmətə davam edir.

Davamı var……

 

Qaynaqlar: Məqalələr yazılarkən rəsmi Microsoft qaynaqları əsəs götürülür.

  1. SQL Server 2016 and  Windows Server 2016 Better Together White  Paper
  2. Workgroup and Multi-Domain Clusters
  3. Virtual Machine Start Ordering
  4. VM Load Balancing in Windows Server 2016
  5. OS Rolling Upgrades in Windows Server 2016
  6. Virtual Machine Load Balancing in Windows Server 2016
  7. Fault domain awareness in Windows Server 2016
  8. Virtual Machine Load Balancing overview
  9. Storage Replica Overview
  10. Simplified SMB Multichannel and Multi-NIC Cluster Networks

 

Səs: +110. Bəyənilsin Zəifdir

Şərhlər ( 8 )

  1. Super! 🙂

  2. Müəllim, çox fasilə vermə ) Adamın gözünü oxşayır məqalə ) Əlinə zehninə sağlıq )

  3. Super Allah razi olsun, əllərinə, zehninə sağılıq

  4. Hocam zehninə sağlıq…

     

  5. Əla çox təşəkkür edirəm.

  6. Çox sağ olun, müəllim.

    Allah zehninizə qüvvət versin.

  7. Eşq olsun…

  8. Təşəkkürlər.

Şərh yazın