Azure Accelerated Networking Kavramı
Azure Accelerated Networking Kavramı yani ” Hızlandırılmış Ağ İletişimi“ olarak geçmektedir.
Organizasyonunuz içerisinde Azure ortamınızda hizmet veren Uygulamalarınız yada Sanal Makineleri yani kısacası iş yükleriniz bazı zamanlarda Ağ anlamında darboğaz yaşamaktadır. Bazı Uygulamalarınızın veya Sanal Makinelerinizin daha düşük işlemci kullanımı ile yüksek hızlarda Data gönderip alması gerekmektedir. Bunun için “ Accelerated Networking “ türkçe olarak “ Hızlandırılmış Ağ “ , Ortamınızdaki İş yüklerinizi planlarken ön planda bulunduracağınız en önemli aşama olabilmektedir. Organizasyon ortamınızda oluşturacağınız ve özelliği etkinleştirme sağladığınızda “ Sanal Makine “ başına 25 Gbps ‘ye kadar veya daha fazlası hızları hissetmeniz ve görmeniz olanaklı hale gelmektedir.
Aşağıdaki şekilde ortamınızda Accelerated Networking özelliği etkinleştirilmediğinizde Mimariyi çizerek anlatmak istedim. Burada anlatmak istediğim Accelerated Networking özelliği aktif olmayan A ve B Sanal Makinelerde giren ve çıkan Tüm Network trafiğini , Host’tan yada Virtual Switch’ten geçmektedir.
Aşağıdaki şekilde ortamınızda Accelerated Networking özelliği etkinleştirdiğinizdeki Mimariyi çizerek anlatmak istedim. Burada anlatmak istediğim Accelerated Networking özelliği aktif olan A ve B Sanal Makinelerinin NIC’leri aracılığıyla iletilir. Önceki şekilde belirtilen Sanal Switch’in içerdiği tüm Network Politikaları donanımda boşaltılarak Uygulanmış olur. Burada önceki Mimaride belirtmiş olduğumuz Virtual Machine ve Network Interface Card arasında Sanal Switch bulunmamaktadır.
Azure Accelerated Networking özelliğini aktifleştirmeniz Organizasyonunuzun Azure ortamına ne kazandırmaktadır ? Kısaca bir açıklayalım o halde:
- Azure ortamında hizmet veren Sanal Makinelerde Fazla işlemci kullanımını sağlanmaz , Fazla Kullanım kapasitesinden tasarruf etmiş olursunuz.
- Aynı sürede daha fazla Datanın gönderilmesini sağlayarak yüksek düzeyde verim elde edersiniz.
Azure Accelerated Networking özelliği sadece etkilentirmiş olduğunuz Sanal Makinelerde geçerlidir. Daha iyi bir verim elde etmek istiyorsanız , Aynı VNET bağlı minum 2 Sanal Makinede bu özelliği etkinleştirmeniz gerekmektedir.
Azure Ortamında harikalar yaratacak bu özellik için birtakım gereksinimleri karşılamanız gerekmektedir ? Bu gereksinimler Nelerdir ?
En az 2 veya daha fazla vCPU ( Sanal İşlemci ) sahip olan ” General Purpose “ boyutundaki Sanal Makinelerde tüm Azure Region’larında veya En az 4 vCPU veya daha fazla vCPU sahip Hyperthreading ortamınızdaki Sanal Makinelerde kullanılabilmektedir.
Accelerated Networking özelliğini Sanal Makinelerin oluşturulma sırasında yada Stopped yani durdurulmuş , Deallocated yani Serbest bırakılmış statüde olan Sanal Makinelerinde etkinleştirebilirsiniz.
Eğer Sanal Makineyi önceden oluşturup Accelerated Networking özelliğini etkinleştirmek istiyorsanız , Tercih ettiğiniz Sanal Makine Boyutları bu özelliği desteklemediği için özelliğini etkinleştirme konusunda problem yaşayabilirsiniz.
Azure Ortamında Accelerated Networking özelliğini kullanabileceğiniz İşletim Sistemleri Hem Linux Hemde Windows İşletim Sistemleriyle kullanmak mümkündür. Bunlardan bahsetmek gerekirse ;
Windows Sanal Makinelerde ;
Windows Server 2019 Standart or Datacenter
Windows Server 2016 Standart or Datacenter
Windows Server 2012 R2 Standart or Datacenter
Azure Ortamında Windows İşletim Sistemli Makine oluşturacaksanız yada Oluşturduysanız yukarıdaki İşletim Sistemleri ve Sürümlerini desteklemektedir.
Linux Sanal Makinelerde ise Azure Galerisinde bulunan imajlardan gidilmesi tavsiye edilmektedir.
O halde Azure Accelerated Networking ile alakalı uygulamalar yapalım:
İlk olarak Azure Ortamına Yeni bir Sanal Sunucu kurulumunda etkinleştirme işlemi nasıl yapılıyor onun uygulamasını yapalım . O halde başlayalım.
Azure Ortamınıza giriş yaptıktan sonra Azure arama çubuğuna “ Virtual Machines “ yazarız. Virtual Machine oluşturma işlemlerine başlamak için seçeneği seçerek devam ederiz.
Virtual Machine oluşturma ekranına gitmek için “ Create “ seçeneğinden “ Virtual Machine “ seçeneğini seçeriz. Ortamınızda ilk Sanal Makineyi oluşturacaksınız “ Create “ seçeneğini seçmeniz yeterlidir.
İlk olarak Azure ortamımıza ait Subscription’umuzu seçerek Servisi oluşturmak istediğimiz Resource grubumuzu seçeriz. Önceden Resource Group oluşturma işlemi gerçekleştirdiğim için “ RG_WestUS “ adındaki Resource Grubumu seçerim. Eğer Resource Group oluşturmadıysanız kutucuğun hemen altındaki “ Create new “ seçeneğini seçerek Resource Group oluşturma işlemlerini tamamlayabilirsiniz.
Instance details bölümünde ise “ virtual machine name “ kutucuğuna oluşturacağımız Makinenin ismini yazarak kutucuğu isteğimize göre doldururuz.
“ Region “ bölümünde oluşturacağımız makinenin hangi Region’da oluşturmak istersek , Onu seçeriz. Region “ (US) West US “ region’unu seçeriz. Accelerated Networking özelliğini aktif etmek için bölge farketmeksizin seçiminizi özgürce yapacağınızı hatırlatmak isterim.
Ardından Instance details kısmında oluşturacağımız Sanal Makine için istediğimiz Azure Image seçeriz. Ben Makinelerimin işletim Sistemini Lab yapıma göre “ Windows Server 2019 Datacenter- Gen1 “ seçiyorum. Ayrıca Azure Accelerated Networking etkinleştirmesine uygun bir İşletim Sürümü seçmem burada önem arz etmektedir.
Ardından oluşturacağımız Sanal Makinemiz için “ Size “ belirtmemiz gerekmektedir. Burada Seçmiş olduğum Size “ General Purpose “ kategorisinde olmalıdır. Aksi takdirde Size sebebiyle Accelerated Networking özelliğini kullanamamaktayız.
“ Administrator Account “ kısmında ise Sanal Makineye erişebilmek için “ Username ve Password “ Bilgilerini girerek bazı işlemleri tamamlamış oluruz.
“ Networking “ bölümünü seçerek “ Azure Accelerated Networking “ ayarlarına geliriz.
“ Accelerated networking “ özelliğini aktifleştirmek bu kadar basit karşısındaki kutucuğu işaretleyerek devam ederiz. Ardından Sanal Makineyi oluşturmak için “ Review + create “ seçeneğini seçeriz.
Yaptığımız konfigürasyonlarda herhangi bir hata olmadığını ve Kaynağı oluşturma işlemlerinde herhangi bir engel olmadığını “ Validation passed “ uyarısı alarak anlamış oluruz. Ardından kaynak oluşturma işlemlerine başlamak için “ Create “ seçeneğini seçeriz.
Kaynak oluşturma işlemleri devam ediyor. Seçtiğiniz Kaynak çeşidine göre veya Size durumuna göre oluşturma işlemleri değişiklik göstermektedir.
Kaynağımızın problemsiz oluştuğunu görürüz. Ardından oluşturduğumuz kaynağı incelemek isterseniz “ Go to Resource “ seçeneğini seçerek , ilgili Resource konfigürasyon ekranına gidebilirsiniz.
“ Go to Resource “ seçeneğini seçtiğinizde oluşturmuş olduğumuz “ ACNetSRV1 “ Sanal Makinesinin özelliklerine ve konfigüre işlemleri yapabileceğiniz arayüze erişmiş olursunuz. Bu Arayüzden “ Networking “ bölümüne girdiğimizde “ Accelerated Networking “ konfigürasyonunun “ Enabled “ durumda olduğunu görmüş oluruz.
Şimdide Azure Ortamınızda var olan Sanal Sunucunuzun etkinleştirme işlemi nasıl yapılıyor onun uygulamasını yapalım . O halde başlayalım:
Azure Ortamınıza giriş yaptıktan sonra Azure arama çubuğuna “ Virtual Machines “ yazarız. Yukarıda belirttiğim gibi Azure ortamınızda var olan Sanal Makinenizde bu özelliği aktifleştirebilmeniz için Sanal Makine “ Stopped yada Deallacoted “ durumda olması gerekmektedir. Ayrıca Makine “ Size “ durumlarınıda gözden geçirdiğimizde “ Standart_D2s_v3 “ Size “ General Purpose “ kategorisinde olduğu için işlemlere başlayabiliriz. Bunun birden fazla yöntemi mevcut. Öncelikle “ OZDEMIRSRV “ Sanal Makinesinde “ Accelerated Networking “ özelliği aktif değildi. Onu kontrol etmek için Sanal Makine objesine çift tıklarız.
Ardından Sanal Makinesinin özelliklerine ve konfigüre işlemleri yapabileceğiniz arayüze erişmiş olursunuz. Bu Arayüzden “ Networking “ bölümüne girdiğimizde “ Accelerated Networking “ konfigürasyonunun tahmin ettiğim gibi “ Disabled “ durumda olduğunu görmüş oluruz.
Ardından bir farklılık mevcut mu ? Onu kontrol edelim onun için Sanal Makineyi “ Start “ işlevi uygulayarak açalım. Diğer oluşturmuş olduğumuz “ ACNETSRV1 “ ve “ OZDEMIRSRV “ arasındaki farkı görmek için logon oluruz.
Ardından logon olduktan sonra , en görünür olan Network konfigürasyon ve özelliklerde farklılık olmasını beklemekteyim. Bunun için Sunucularımızın Network Adaptors kısmında “ Status “ konfigurasyonlarına baktığımda “ Speed “ ve “ Activity bölümünde bulunan Sent ve Recived değerlerinden” farklılığı anlamış olurum.
Gördüğünüz gibi farklılıklar gözle görülür derecede mevcut. Şimdi bu Sanal Makinede Accelerated Networking özelliğini aktifleştirme işlemini sağlayalım. Bunun için Makineyi “ Stopped “ durumuna almalıyım.
Bu işlemleri Azure Cloud Shell aracı ile gerçekleştirmeniz mümkündür. Onun için Azure Arama Çubuğunun yanında bulunan “ Azure Cloud Shell “ simgesine tıklarız. Ardından Cloud Shell üzerinden aşağıdaki komutu vererek “ Running “ durumda olan Sanal Makineyi “ Deallacoted “ duruma almak için aşağıdaki komutu kendi ortamımıza göre değiştirme işlemi sağlarız.
“ az vm deallocate –resource-group RG_WestUS –name OZDEMIRSRV “ şeklinde yazarak “ Enter “ tuşuna basarız.
Ardından Script Running duruma geldiğini görürüz. Sanal Makine “ Status “ Deallocating “ duruma geldiğini görürüz.
Ve ilgili Script başarılı olmuştur. Sanal Makinenin “ Stopped “ duruma geldiğini görürüz.
Ardından en önemli beklediğimiz durum Bu Sanal Makinemizin Accelerated Networking özelliği Disable durumdaydı. Bunun Aktifleştirilmesi için aşağıdaki komutu kullanırız. Buradaki Konfigürasyonları kendi yapıma ve Sanal Makineme göre konfigüre ediyorum.
“ az network nic update –name ozdemirsrv338 –resource-group RG_WestUS –accelerated-networking true “
Ardından Klavyemizden “ Enter “ tuşuna basarız. Ve Aktifleştirme işlemine başlarız.
Ardından Script doğru şekilde çalıştığını görmüş oluruz ve Accelerated Networking özelliği “ Enabled “ duruma gelmiş olduğunu görürüz.
Sonrasında Sanal Makineyi “ Start “ durumuna alırız. Durumunu incelemek amaçlı Sanal Makineye Logon olduğumuzda Yukarıdaki eski halinden farklı olduğunu görürüz.
Ve Son olarak 2 Sanal Makinemizde kontrol etmemiz gereken bir nokta daha var. Onu da hemen uygulayalım :
Windows seçeneğini seçerek arama çubuğuna “ Device Manager “ yada “ devmgmt.msc “ yazarak ilgili seçeneği seçeriz.
Ardından “ Network adapters “ aygıtını aşağıya genişleterek “ Mellanox ConnectX-4 Lx Virtual Ethernet Adapter #2 “ adında Ethernet Adaptörünün oluştuğunu gördüyseniz , Accelerated Networking iletişimi artık Sanal Makinede etkin haldedir.
Makalemi zaman ayırıp okuduğunuz için çok teşekkür ederim. Diğer makalelerimde görüşmek üzere
Faydalı olması Dileğiyle…
Eline sağlık.
Teşekkürler Hakan Hocam.