Affinity ve anti-affinity kurallar ile ortamımızda bulunan sanal sunucularımızın konumlanacağı esxi hostlar için kural tanımlamaları yapabiliriz.
Affinity rule: Sanal sunucularımızın aynı esxi host üzerinde bulunmasını istiyorsak affinity rule tanımı yapmalıyız.
Anti-affinity rule: Sanal sunucularımızın farklı esxi host üzerinde bulunmasını istiyorsak anti-affinity rule tanımlamalıyız.
Bu işlem için 2 seçenek bulunmaktadır;
VM-VM Affinity Rules: Seçilen sanal sunucuların aynı yada farklı esxi host üzerinde çalışıp çalışmayacağının belirlendiği kural tipidir.
VM-Host Affinity Rules: Sanal sunucu gruplarının belirlenen esxi host grupları üzerinde çalışıp çalışmayacağının belirlendiği kural tipidir.
Test işlemlerim için 2 tane esxi hostum bulunmaktadır. Örnek senaryolarım aşağıdaki gibidir;
1-) Aynı esxi host üzerinde bulunan WSQLSRV01 ve WSQLSRV02 sunucularını farklı esxi host üzerinde çalışması için kural tanımlanacaktır.
2-) Farklı esxi host üzerinde bulunan proxyserver ve rheltest sunucularını aynı esxi host üzerinde çalışması için kural tanımlanacaktır.
3-) VM group ve Host group tanımlanarak kural yazılacaktır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/1-1-1024x278.png)
![](https://mutlubalik.com/wp-content/uploads/2023/11/2-1024x260.png)
Kural tanımlamalarını yapmak için işlem yapılacak cluster seçildikten sonra Configure -> VM/Host Rules sekmesine geçiş yapılarak Add ile yeni bir kural penceresi açılır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/3-1024x425.png)
![](https://mutlubalik.com/wp-content/uploads/2023/11/16.png)
Açılan Create VM/Host Rule penceresinde;
Name: Oluşturulacak kurala tanımlayıcı bir isim verilir.
Type altında bulunan;
Keep Virtual Machines Together: Seçilen sanal sunucuların aynı host üzerinde çalıştırılmasını sağlar.
Separate Virtual Machines: Seçilen sanal sunucuların farklı host üzerinde çalıştırılmasını sağlar.
Virtual Machines to Hosts: Seçilen sunucu grubunun seçilen host grubu üzerinde çalışmasını veya çalışmamasını sağlar.
İlk senaryom için WSQLSRV01 ve WSQLSRV02 sunucularını seçtikten sonra Seperate Virtual Machines kuralını oluşturuyorum.
![](https://mutlubalik.com/wp-content/uploads/2023/11/3_.png)
Kuralı oluşturduktan sonra WSQLSRV01 sunucusu esxist02 hostuna migrate olmaya başlamıştır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/4-1024x361.png)
Migrate işlemi tamamlandı. Yazılan kural sonrasında SQL sunucular farklı esxi host üzerinde çalışmaktadır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/5-1024x209.png)
İkinci senaryoda proxyserver ve rheltest sunucularının aynı host üzerinde çalışması için Keep Virtual Machines Together kuralını oluşturuyorum.
![](https://mutlubalik.com/wp-content/uploads/2023/11/6.png)
Kuralı oluşturduktan sonra proxyserver sunucusu esxist02 hostuna migrate olmaya başlamıştır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/7-1024x395.png)
Migrate işlemi tamamlandı. Yazılan kural sonrasında proxyserver ve rheltest sunucuları aynı esxi host üzerinde çalışmaktadır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/8-1024x219.png)
Son senaryoda VM group ve Host group oluşturarak test işlemlerini gerçekleştireceğim.
VM/Host Groups sekmesine geçiş yapıldıktan sonra Add ile yeni bir kural ekleme penceresi açılır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/9_-1024x465.png)
Açılan Create VM/Host Group penceresinde;
Name: Oluşturulacak olan gruba tanımlayıcı bir isim verilir.
Type: Sunucular için VM, Hostlar için Host grup seçilir.
srmist sunucusunu seçerek vm group oluşturma işlemini tamamlıyorum.
![](https://mutlubalik.com/wp-content/uploads/2023/11/9.png)
esxist hostunu seçerek grup oluşturma işlemini tamamlıyorum.
![](https://mutlubalik.com/wp-content/uploads/2023/11/10.png)
VM ve Host grupları başarılı bir şekilde oluşturulmuştur.
![](https://mutlubalik.com/wp-content/uploads/2023/11/11-1024x323.png)
Kural tanımlamak için VM/Host Rules sekmesine geçilerek Add ile yeni bir kural penceresi açılır. Açılan Create VM/Host group penceresinde Type olarak Virtual Machines to Hosts seçilir.
Aşağıdaki gibi 4 tane seçenek sunulmaktadır;
- Must run on hosts in group: Seçilen VM grup seçilen Host grup üzerinde çalışmak zorundadır.
- Should run on hosts in group: Seçilen VM grup seçilen Host grup üzerinde çalışmalıdır. Ancak zorunlu değildir.
- Must not run on hosts in group: Seçilen VM grup seçilen Host grup üzerinde çalışamaz.
- Should not run on hosts in group: Seçilen VM grup seçilen Host grup üzerinde çalışmamalıdır. Ancak zorunlu değildir.
![](https://mutlubalik.com/wp-content/uploads/2023/11/12.png)
Test için SRM grubundaki sunucuların SRM ESXi Host grubunda bulunan esxi hostlarında zorunlu çalışması için Must run on hosts in group seçimini yaparak kural oluşturuyorum.
![](https://mutlubalik.com/wp-content/uploads/2023/11/13.png)
Kural oluşturulmuştur. Detayları görüntülenmektedir.
![](https://mutlubalik.com/wp-content/uploads/2023/11/15-1024x444.png)
srmist sunucusunu farklı bir esxi host üzerine migrate etmek istediğimde Virtual machine ‘srmist’ on host ‘esxist02.mutlubalik.com’ would violate a virtual machine – host affinity rule. uyarı mesajı görüntülenmektedir. Kural başarılı bir şekilde çalışmaktadır.
![](https://mutlubalik.com/wp-content/uploads/2023/11/14-1024x617.png)
Bu makalede DRS affinity rule tiplerini inceleyerek test işlemlerini gerçekleştirdik.
Bir sonraki makalede görüşmek üzere. Sağlıkla kalın…
reference: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.resmgmt.doc/GUID-FF28F29C-8B67-4EFF-A2EF-63B3537E6934.html
görsel :https://i.ytimg.com/vi/I6OlN4_6BZ8/maxresdefault.jpg