Azure Virtual Network , Ortamınızdaki Sanal Makineler , Web Uygulamaları ve Veritabanları gibi kaynaklarınızın birbirleriyle iletişim kurmasını sağlar. Azure Virtual Network , Azure kaynaklarını birbirine bağlayan bir dizi kaynak olarak da tanımlayabiliriz. Genellikle VNet olarak adlandırılmaktadır. Bu kavramın “ Sanal Ağ “ olarak anılmasının sebebi ona erişirken donanıma erişiminizin bulunmamasıdır. Tıpkı bir Sanal Makine gibi, kullanımı size ait. Fakat Fiziksel Donanım gizlenmiştir. Yani bir anlama soyutlanmıştır.
Azure Virtual Network, Aşağıdaki Temel Network özelliklerini kullanıcılarına sağlamaktadır:
- Microsoft Azure Cloud kaynaklarınızın birbirleriyle iletişim kurması
- Hybrid yapınız mevcut ise On-Premise yapınızın Azure ortamıyla iletişim kurması
- Ağ Trafiğini Yönlendirme , Trafiği Filtreleme işlemleri
- Virtual Network’leri birbirine bağlama işlemleri
- İzole ve Segmentasyon İşlemleri
Azure Virtual Network kaynaklarını oluşturmadan önce ayrıca 2 kavramdan bahsetmek isterim:
Adress Spaces ve Subnet Kavramları bu kavramlar Nedir ? Azure Virtual Network içerisindeki rolleri nelerdir ? Bunlardan kısaca bahsedelim:
Adress Spaces : Adres Alanı olarak anılmaktadır. Kullanılabilen IP adresleri aralığıdır. IP Adresi , bir evin sokak adresi gibidir. Yapınızdaki kaynağı benzersiz bir şekilde bulmak için tasarlanmıştır.
Bir Virtual Network kaynağına bağlı olan her hizmet veya kaynak, kendi alanı içindeki İp Adreslerine sahiptir. Aynı VNet üzerindeki hizmetler bu şekilde birbirini bulabilir ve iletişim kurabilir. VNet’e bir adres alanı atarsanız ve her bağlı cihaz, hizmet veya kaynak bu adres alanında atanan bir IP adresini otomatik olarak almaktadır.
Subnet : Sanal Ağınızı bir veya daha fazla alt ağa bölmenize olanak tanımaktadır. Sanal Ağımızın Address Space yani Adres Alanınını bir kısmını her alt ağa tahsis etmekteyiz. Bunu yaparak aynı VNet üzerinde birden çok ağa sahip olabilirsiniz.
Subnet işlemleri Neden bu kadar önemlidir? Buna neden ihtiyaç duyarız?
Hangi hizmetlerin birlikte çalıştığını takip etmeyi kolaylaştırır, Adres tahsisi daha verimlidir.
Ancak tek önemli nedeni: Bir Network Security Group yani Ağ Güvenlik Grubu kullanarak tek tek alt ağları güvence altına alabilmenizdir.
Her Virtual Network tek bir bölgeye aittir. Yani bir VNet üzerindeki hizmetlerin ve kaynakların tümünün fiziksel olarak aynı bölgede olduğunu düşünebilirsiniz. Bölgeler arasında iletişim kurabilmek için VNet’leri birbirine bağlayabilirsiniz.
Her VNet tek bir Subscription’a yani Aboneliğe aittir. Yine de her abonelikte birden fazla Virtual Network olabilir.
Her Azure Kaynağı gibi bu bahsetmiş olduğumuz Kaynakların Avantajları mevcuttur. Bir Virtual Network’ün ne gibi Avantajları mevcuttur. Bunlardan bahsedelim biraz:
- Bir düğmeyi tıklatarak bir oluşturduğunuz Sanal Ağı ihtiyaçlarınıza göre ölçeklendirebilirsiniz.
- Sanal Ağlar, Azure’un temel bir parçası olduğundan ölçeklendirmeden de yararlandığını yukarıdaki maddemizde belirtmiştik. Adres alanınızda aniden oluşan taleplere ihtiyacınız olursa aniden VNet yada bunları hemen karşılayabilirsiniz.
- Sanal Ağlar, kaynaklarınız için High Availability yani yüksek kullanılabilirlik sağlamaktadır. Bu genellikle Peering Virtual Network aracılığıyla gerçekleşebilmektedir. Bir Load Balancer yani Yük dengeleyici kullanarak veya bir VPN Virtual Gateway yani VPN Ağ Geçidi aracılığıyla 2 VNet’I birbirleriyle haberleştirebilirsiniz.
- Oluşturduğunuz Sanal Ağlarla, Hizmetleri ve Ortamınızdaki ürünleri çok verimli ve basit bir şekilde izole edebilirsiniz. Alt Ağları ve Ağ Güvenlik Gruplarını kullanarak, kaynaklarınızı bir VNet içinde yönetebilir ve düzenleyebilirsiniz.
Şimdi Yukarıda Bahsetmiş olduğumuz Virtual Network Temel özelliklerini kısaca açıklayalım:
İzolasyon ve Segmentasyon, Azure Ortamınızda bulunan veya oluşturmuş olduğunuz Birden çok izole Sanal Ağ oluşturmanıza Azure olanak tanımaktadır. Yapınızda Virtual Network oluşturma işlemi sağladığınızda Public veya Private IP Adres Aralıklarını kullanarak Private bir IP Adres alanı oluşturabilme imkanına sahipsiniz. Bu IP adres alanını Alt Ağlara bölebilirsiniz. Yapınızda oluşturmuş olduğunuz birden fazla Virtual Network kaynaklarınızı birbiriyle haberleşmeyecek şekilde yalıtabilme imkanınız mevcuttur.
Hybrid yapınız mevcut ise On-Premise yapınızın Azure ortamıyla iletişim kurması , Azure Ortamınızda bulunan yada oluşturacağınız Azure Kaynaklarının bibirleriyle güvenli bir şekilde iletişim kurabilme imkanına sahipsiniz. Bu işlemleri gerçekleştirebilmenin 2 Yöntem mevcuttur :
Birinci Yöntem olarak , Virtual Network Kaynaklarınız , sadece Sanal Makinelerinizi değil , Aynı zamanda örnek verebileceğim Azure Kaynaklarıyla da Bağlantı sağlayabilmektedir. Bu Kaynaklara Örnek Vermek gerekirse : Azure Kubernetes Servisi , Azure VM Scale Set için Application Hizmet Ortamı , Power Apps.
İkinci Yöntem olarak , Service Endpoint yani Hizmet Uç Noktaları Diğer Azure Kaynakları türlerine bağlanmak için kullanılabilmektedir. Bu kaynaklara Örnek vermek gerekirse : Azure SQL Veritabanları ve Storage Account . Yani bu Yöntem , Yapınızdaki Birden çok Azure kaynağını birbirine bağlamanıza , Kaynaklarınızın Güvenliğini arttırmak ve Kaynaklarınız arasında En uygun olan yönlendirmeyi sağlamak için Sanal Ağlara imkan tanımaktadır.
Ayrıca Azure Virtual Network ile Azure ortamınızda bulunan Kaynaklarınızı Şirket içi yani On-Premise yapıda bulunan kaynaklarla haberleştirebilirsiniz. Azure Aboneliğinize bağlı Hem Local hemde Cloud ortamlarınızı kapsayan bir Network oluşturabilirsiniz. Bu işlemleri sağlayabilmeniz için 3 Yapıyı ortamınızda Devreye almanız gerekmektedir. Bu Yapıları kısaca açıklamak gerekirse:
- Point-to-Site Virtual Private Networks : Bu yapıya Noktadan Site’a Bağlantı denilmektedir. Organizasyonunuzun dışındaki bir bilgisayar ile şirketinizdeki kaynaklarınıza Güvenli ve Şifrelenmiş şekilde bağlantı sağlarsınız.
- Site-to-Site Virtual Private Networks : Bu yapıya Site’den Site’ye Bağlantı denilmektedir. On-Premise yapınızdaki VPN Cihazınızı veya Azure ortamınızdaki Azure Virtual Network Gateway aracılığıyla Azure ortamınızdaki Cihazlarınız On-Premise yapıdaki Network yapısındaymış gibi haberleşme sağlayabilirsiniz. Azure ile On-Premise arasındaki Bağlantı Şifreli ve İnternet üzerinden çalışmaktadır.
- Azure Express Route : Azure ortamınızda Daha Fazla Bandwith’e yani Bant Genişliğine ve daha da yüksek seviyelere ihtiyaç duyduğunuz ortamlar için tam uyumlu olduğunu söyleyebilirim. Azure Express Route ile bağlantınız İnternet üzerinden değil , Özel Bağlantı sağlanmaktadır.
Ağ Trafiğini Yönlendirme , Trafiği Filtreleme işlemleri , Azure Yapınızdaki herhangi bir Virtual Network’teki , On-Premise ağlarınızdaki Subnet’ler arasındaki trafiği Azure’a yönlendirebilirsiniz.
Ayrıca Yönlendirmeyi kontrol edebilir ve Bu konfigürasyonlarınızı aşağıda sıralayacağım gibi geçersiz kılabilirsiniz. Bunları açıklamak gerekirse ;
- Route Table , Bir Route Table , Trafiğin nasıl yönlendirileceği hakkında kurallar tanımlamanıza imkan tanımaktadır. Network Yapınızdaki Paketlerin Subnet’ler arasında nasıl yönlendirildiğini kontrol altına alan Birden çok Özel Route Table oluşturabilirsiniz.
- Border Gateway Protocol ( BGP ) , Azure VPN Gateway’leriyle veya On-Premise yapınızdaki BGP yollarınızı Azure ortamında bulunan Azure Virtual Network’lerinize yaygınlaştırmak için kullanım sağlayabilirsiniz.
Azure Virtual Network yapınızdaki Subnet’ler arasındaki trafiği aşağıdaki yöntemlerle Filtreleyebilirsiniz. Bunlardan kısaca bahsetmek gerekirse :
- Network Security Groups , Yani Ağ Güvenlik Grupları olarak anılmaktadır. Bir Network Securtiy Group yapınızda bulunan birden çok gelen ve giden Güvenlik kurallarına göre kaynaklarınız arasında , Dışarıdan veya İçeride trafiğe izin vermek , Trafiği engellemek için Source ( Kaynak ) , Destination IP ( Hedef IP ) , Bağlantı Noktaları , Protokol faktörlerine göre kurallar tanımlayabilirsiniz.
- Network Virtual Appliances, Yani Ağ Sanal Cihazları olarak Anılmaktadır. Bir Network Virtual Appliances , Özel bir Sanal Makinedir.Bu Özel Sanal Makine Belirli bir Network işlevlerini yerine getirmektedir. Bu işlevlere örnek vermek gerekirse : Firewall Devreye alma veya WAN optimizasyonu gerçekleştirme gibi örnekleyebiliriz.
Virtual Network’leri birbirine bağlama işlemleri , İleride bahsedeceğimiz Virtual Network Peering hizmetini kullanarak , Virtual Network’leri birbirine bağlayabilirsiniz. Peering yani Eşleme sayesinde , Her birinde Kaynaklarınızı etkinleştirir ve Birbirleriyle iletişim kurmasını sağlayabilmektedir. Bu Virtual Network’ler Ayrı Region’larda bölgelerde olması farketmeksizin birbirleriyle haberleşebilir duruma gelmektedir.
Bu Makalemizde Azure ortamınızda Nasıl Virtual Network Kaynağı oluşturması sağlayabilirsiniz. Onunla alakalı adım adım uygulama gerçekleştiriyor olacağız :
İlk olarak Azure Ortamına Yeni bir Virtual Network oluşturmak için Azure Ortamınıza giriş yaptıktan sonra Azure arama çubuğuna “ Virtual Networks “ yazarız. Virtual Network oluşturma işlemlerine başlamak için seçeneği seçerek devam ederiz.
Virtual Network oluşturma ekranına gitmek için “ Create “ seçeneğini seçeriz yada aşağıda “ Create Virtual Networks “ seçeneğini seçeriz.
Bir Virtual Network yapılandırma işlemi için aşağıdaki adımları uygulayarak , işlem sağlayabilirsiniz : Subscription Konfigürasyonları , Oluşturacağınız Virtual Network konfigürasyonları , IP Adres konfigürasyonları , Güvenlik Konfigürasyonları , Etiketleme Konfigürasyonlarını sağlayarak Virtual Network oluşturma işlemini sağlamış olursunuz.
“ Project Details “ bölümünde Azure ortamınızda bulunan Subscription’lardan istediğiniz “ Subscription “ seçerek devam ederiz. Ardından Azure ortamınızda herhangi bir Resource Group oluşturmadıysanız , “ Resource Group “ tanımlı checkbox’un altındaki “ Create New “ seçeneğini seçerek , Resource Group oluşturma işlemleri gerçekleştirebilirsiniz.
“ Instance Detais “ bölümünde “ Name “ kutucuğuna Virtual Network kaynağınıza Bulunduğunuz Subscription’da Benzersiz bir ad olarak tanımlanması önem arz etmektedir. Adı seçerken , Hatırlaması kolay ve Yapınızda diğer oluşturmuş olduğunuz Virtual Network’lerden rahatlıkla ayırt edilebilecek , Açıklayıcı olacak şekilde belirlemeniz yararınıza olacaktır. “ Region “ konfigürasyonlarında oluşturacağınız Virtual Network hangi Azure Region’da bulunmasını isterseniz ilgili region seçeneği seçerek “ Next : IP Addresses > “ seçeneğini seçerek devam ederiz.
“ Address Space ” bölümünde oluşturacağınız Virtual Network üzerinde adres alanı tanımlarsınız , Bu belirleyeceğiniz Adress Spaces , Aboneliğiniz içinde ve Bağlantı sağladığınız Diğer Ağlardan benzersiz olmalıdır. Azure yapımız için bize önerilen şuan varsayılan olarak gelen Adres Alanı , “ 10.0.0.0/16 ‘lık “ Adres Alanını seçeriz. Bu adres alanında Tanımlanan adresler , “ 10.0.0.0 ile 10.0.255.255 “ arasında tanımlanmış olmaktadır. İkinci bir Adres Alanı oluşturmak isterseniz. Alttaki kutucuğa istemiş olduğunuz IP Adres Alanını yazarak , ikinci bir Adres Alanı tanımlayabilirsiniz. Burada dikkat etmeniz gereken nokta , Birinci olarak belirlemiş olduğunuz IP Adres Alanı ile İkinci Adres alanında belirlemiş olduğunuz IP Adres alanı çakışacak şekilde belirlenmemelidir. ( Adres Alanı oluşturma işleminde 10.0.0.0 /24 şeklinde yazmalısınız. Kullanacağınız IP Aralığını sağında görebilirsiniz. )
Oluşturmuş olduğumuz IP Adress Spaces IPv4 kategorisindedir. Fakat yapınızda “ IPv6 “ kategorisine uygun cihazlarınız mevcutsa yada IPv6 yapısında bir Adres Alanı oluşturmak isterseniz , “ Add IPv6 address space “ seçeneğinin yanındaki kutucuğu işaretlemeniz gerekmektedir.
“ Add Subnet “ seçeneğini seçerek , oluşturacağınız Virtual Network Adres aralığında bölümleme yapan bir veya birden çok Subnet oluşturabilirsiniz. Subnet’ler arasında yönlendirme , Varsayılan Trafiğe bağlı olacağını vurgulamak isterim. Subnet konfigürasyonlarımızı Default olarak önerilen konfigürasyonlara göre gerçekleştirerek devam ederiz. “ Next : Security > “ seçeneğini seçerek devam ederiz.
“ Next : Security > “ seçeneğini seçtikten sonra “ BastionHost , DdoS Protection Standart , Firewall “ konfigürasyonlarını isteğinize ve yapınıza göre konfigüre edebilirsiniz. Buradaki Default konfigürasyonları ile devam edeceğim. Fakat ilk öncelik bu kavramları kısaca açıklamak isterim :
BastionHost , Virtual Network içinde sağladığınız tamamen platform tarafından yönetilen yeni bir “ Platform as a Service ( PaaS ) “ hizmetidir. SSL ( Secure Socket Layers ) üzerinden direk Azure Portalı üzerinden Güvenli ve Sorunsuz şekilde SSH veya RDP bağlantılarını gerçekleştirebilirsiniz. Azure Bastion aracılığıyla bir Sanal Makineye bağlandığınızda , Ortamınızdaki Sanal Makinelerinizin Public IP Adresine ihtiyacı bulunmadığının bilgisini vermek isterim. Etkinleştirmek için “ Enable “ seçeneğinin yanındaki seçeneği işaretleyerek konfigürasyonları sağlayarak ortamınızda aktifleştirebilirsiniz. “ Disable “ seçeneği ile bu özelliği devredışı bırakabilirsiniz.
DdoS Protection Standart , DdoS Koruma Planı olarak anılmaktadır. Bu Virtual Network kaynağınızda tüm korunan kaynaklar için bir DdoS saldırsının etkilerine karşı koruma sağlamak için Saldırı Bildirimi ve Telemetri aracılığıyla Azure ortamınızdaki kaynaklarınız için Advanced DdoS azaltma sağlayan Ücretli bir hizmettir. Temel DdoS koruması , varsayılan olarak ve hiç bir ek ücret ödemeden Azure platformuna entegre edildiğini vurgulamak isterim. Etkinleştirmek için “ Enable “ seçeneğinin yanındaki seçeneği işaretleyerek konfigürasyonları sağlayarak ortamınızda aktifleştirebilirsiniz. “ Disable “ seçeneği ile bu özelliği devredışı bırakabilirsiniz.
Firewall , Azure ortamında hizmet vermektedir. On-Premise yapılarda bulunan Fiziksel Firewall cihazlarından herhangi bir farkı bulunmamaktadır. Firewall Konfigürasyonu “ Enable “ yanındaki kutucuğu işaretleyerek , Aktifleştirme sağladığınızda Azure ortamınız için Firewall oluşturabilirsiniz. Azure Virtual Network’e bağlı Kaynaklarınızı koruyan , Yönetilen bir Cloud tabanlı Ağ Güvenlik hizmetidir. “ Disable “ seçeneği ile bu özelliği devredışı bırakabilirsiniz.
Ardından konfigürasyonlar gerçekleştirdiğinizde “ Next : Tags > “ seçeneğini seçerek bir sonraki etiketleme adımına geçebilirsiniz.
“ Tags “ bölümde oluşturacağınız Virtual Network kaynağının daha kolay bulunabilmesi için etiketleme standartı belirleyerek , oluşturma işlemlerini gerçekleştirebilirsiniz. Kaynak oluşturma işlemlerinin kontrol edilebilmesi ve oluşturma işlemlerinin sürecini başalatabilmek için “ Next : Review + create > “ seçeneğini seçerek devam ederiz.
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.
Oluşturma işlemleri başladı.
Virtual Network oluşturma işlemleri devam etmektedir.
Virtual Network kaynağımızın oluşturma işlemi tamamlanmıştır. Oluşturmuş olduğumuz Virtual Network kaynağına ve konfigürasyonlarına erişmek için “ Go to resource “ seçeneğini seçeriz.
Oluşturmuş olduğumuz Virtual Network kaynağımızın konfigürasyon ekranımıza problemsiz eriştiğimizi gördük ve Virtual Network kaynağımıza bağlı herhangi bir Azure ortamında oluşturmuş olduğumuz yada olan bir cihazımızın bulunmadığını görmüş oluruz. Bağlı cihazımız için Hizmet veya Kaynağı oluşturma esnasında Virtual Network konfigürasyonlarında “ Ozdemir_Vnet “ adındaki Virtual Network kaynağımı seçerek , Bu Virtual Network kaynağıma bağlayabilme imkanına sahip olabiliriz.
Virtual Network Kaynağı oluşturma işlemimiz tamamlanmıştır.
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.