Category: Infrastructure

Project Bicep – Yeni Nesil ARM Şablonları – Bölüm 2

Serinin ilk bölümünde temel gereksinimlerimizi ve Bicep kullanımının avantajları/getirdikleri hakkında konuştuk. Şimdi biraz daha detaya ineceğiz ve Azure Resource Manager Şablonu ile Bicep arasında değişken, kaynak, parameter tanımlama gibi konulara bakacağız. İlk örnek olarak parameter tanımlamanın farklılıklarından bahsetmek istiyorum. Azure Resource Manager şablonlarında parametrelerimiz çok önemli bir kriterdir. Parameterlere bazen environment tipini ( dev/test/prod) bununla beraber isim standardlarını oluşturabiliyor. Tabi bunun dışında farklı paramterlerde kullanabiliyoruz, özetle dağıtılacak olacak her servise göre değişebiliyor.

Örnek: Parametre tanımlamak ( Bicep > Azure Resource Manager Template )


Tags:


Project Bicep – Yeni Nesil ARM Şablonları – Bölüm 1

Bu yazı serisi içerisinde temel hedefliğimiz nokta, Microsoft’un neden Project Bicep geliştirmeye doğru adım attığını olacak, bununla beraber Bicep ile Azure Resource Manager Şablonlarının temel farklılıklarını konuşarak dağıtımlar yapmaya çalışacağız. Öncelikle Project Bicep nedir ve bunun altında yatan hikayesi nedir bunu anlayamaya çalışalım.

Bicep – Yeni Nesil Azure Dağıtım Şablonları

Bicep, Azure kaynaklarını declarative olarak dağıtmak için Microsoft Azure ekibi (Alex Frankel)  tarafından geliştirilen bir Domain Spesific Language(DSL) olduğunu söyleyebiliriz. Daha temiz bir sözdizimi, modüler hale gelmiş şablonlar ve geliştirilen kodun yeniden kullanımı için daha iyi yazma deneyimini sunarak büyük ölçüde basitleştirmeyi amaçlamaktadır. Azure Resource Manager şablonlarını kullanarak dağıtım yaptıysanız, JSON formatında olan bu şablonları başlangıç seviyesi için hiçte kolay olmadığını ve büyük ortamlar için ne kadar zor ve komplex hale geldiğini  kolayca farkedeceksiniz. İşte tam bu noktada karşımıza Bice adında henüz daha deneme aşamasında olan (experimental language, stage) karşımıza çıkıyor olacak. Bicep ürünü henüz Microsoft tarafından duyrulmadan önce (Private Preview’den tutun Public Preview olan haline kadar tüm Product toplantılarına) katılarak edindiğim tecrübelerim/elimden geldiği kadar yorum yaparak bu araca anlamaya ve yorumlayama çalıştım.

Bicep, Azure Resource Manager şablonları geliştirmek yerine Bicep kendine ait olan sade, basit ve anlaşılır yazım düzenine bağlı kalarak ve onu kullanarak inşaa edilmiş bir araç olduğunu söyleyebiliriz. Temel amacı, bir ARM Şablonunda yapılabilecek her şeyin bicepte (şuan bilinen belirli geçici sınırlamaların dışında) yapılabileceği anlamına geliyor. ARM şablonunda geçerli olan tüm kaynak türleri, apiVersionlar ve özellikler, Bicep’te üzerinden geliştirebilir ve dağıtabilirsiniz. Tekrar etmek gerekirse, Bicep kendine ait olan yazım düzeni içerisine basit sadece ve anlaşılır biçimde Azure Resource Manager şablonları geliştirmenize olanak tanıyor. Konuya başlamadan önce Bicep kelime anlamına bakmanıza tavsiye ederim.


Tags:


Azure Kubernetes Service (AKS) – #4 – Storage Options in Azure – 02

Microsoft Cloud and Datacenter Management MVP (Microsoft Valuable Professional) unvanına sahip olan Fırat Yaşar ile birlikte Azure Kubernetes Service (AKS) – #4 – Storage Options in Azure – 02 konusunu değerlendirdiğimiz içeriğimize videomuzdan ulaşabilirsiniz. Konunun devamı için Fırat Yaşar ile hazırladığımız diğer videomuza kanalımızdan ulaşabilirsiniz.



Azure Kubernetes Service (AKS) – #3 – Deploy a Sample Application

Microsoft Cloud and Datacenter Management MVP (Microsoft Valuable Professional) unvanına sahip olan Fırat Yaşar ile birlikte Azure Kubernetes Service (AKS) – #3 – Deploy a Sample Application konusunu değerlendirdiğimiz üçüncü içeriğimize videomuzdan ulaşabilirsiniz. Konunun devamı için Fırat Yaşar ile hazırladığımız diğer videomuza kanalımızdan ulaşabilirsiniz.

 



Azure Kubernetes Service (AKS) – #2 – Deploy an Azure Kubernetes Service Cluster

Microsoft Cloud and Datacenter Management MVP (Microsoft Valuable Professional) unvanına sahip olan Fırat Yaşar ile birlikte Azure Kubernetes Service (AKS) – #2 – Deploy an Azure Kubernetes Service Cluster değerlendirdiğimiz ikinci içeriğimize videomuzdan ulaşabilirsiniz. Konunun devamı için Fırat Yaşar ile hazırladığımız diğer videolarımıza kanalımızdan bulabilirsiniz.

 



Azure Kubernetes Service (AKS) – #1 – Kubernetes Core Concepts and Architecture

Microsoft Cloud and Datacenter Management MVP (Microsoft Valuable Professional) unvanına sahip olan Fırat Yaşar ile birlikte Azure Kubernetes Service (AKS) – #1 – Core Concepts Kubernetes servisini değerlendirdiğimiz birinci içeriğimize videomuzdan ulaşabilirsiniz. Konunun devamı için Fırat Yaşar ile hazırladığımız diğer videomuza kanalımızdan ulaşabilirsiniz.



MSHOWTO SEMINAR – Azure Yönetimi ve Windows Admin Center

21 Aralık günü MsHowto Bilişim Topluluğu tarafından düzenlenen etkinlikte “Windows Admin Center ve Azure Yönetimi” isimli sunum ile büyük bir kitleye seslendim. Konuşmacı olarak yer aldığım seminer için Başakşehir Living Lab ekibine teşekkür ederim.Keyifli bir organizasyon oldu. Katılım gösteren tüm herkese teşekkür ediyorum.



Azure Bastion – #2 – Configuring and Deploying

Microsoft Cloud and Datacenter Management MVP (Microsoft Valuable Professional) unvanına sahip olan Fırat Yaşar ile birlikte Azure Bastion servisini değerlendirdiğimiz ikinci içeriğimize videomuzdan ulaşabilirsiniz. Konunun devamı için Fırat Yaşar ile hazırladığımız diğer videomuza kanalımızdan ulaşabilirsiniz.



Serverless automation using PowerShell Core in Azure Functions – Bölüm 4

Bir önceki yazımızda Visual Studio Code üzerinde ilk fonksiyonumuzu oluşturduk. Hatırlarsanız fonksiyonumuzun adı getResourceStatus olarak belirlemiştik. Fonksiyon bize Azure sanal sunucuların hakkında anlık raporlar (html output olarak) üretmesini sağlamak temel hedefi idi. Bu fonksiyon RESTful isteklerin kabul ediyor olacak ve istediğimiz zaman abonelik içerisinde bulunan sanal sunucuların yapılandırma bilgilerini anlık ve her yerden bir web request ile raporlayabileceğiz.

Fonksiyonumuzu deploy etmeden önce bildiğiniz gibi Azure Subscription içerisine Azure Function App deploy etmemiz gerekiyor. Bunu dilerseniz Azure Portal, ARM Template, VSCode, Powershell yapabilirsiniz. Bu yazı içerisinde size aşağıdaki Powershell Script’ini takip ederek Azure Function App oluşturmanızı yardımcı olacak olan kod bloğunu paylaşıyorum.




Serverless automation using PowerShell Core in Azure Functions – Bölüm 3

Artık ilk Event-Based Automation çözümümüzü beraber geliştirebiliriz, senaryomuzu basit ve anlaşılır yapmak için hemen beraber belirleyelim. Başlangıç seviyesi için kesinlikle basit bir senaryodan ilerleyeceğiz. Örneğin, Azure Function ‘HTTP’ trigger (tetikleyicisini) kullanarak parametrik olarak gönderilen sanal sunucunun adına göre Azure Function bizim için HTML bir Report oluşturmasını isteyelim. Giriş yazımızı hatırlarsanız, o kısımda ‘HTTP’ kullanırsak bize bir RESTful HTTP uç noktaları sunar API gibi davranacağından bahsetmiştik. Şimdi ön gereksinimlerimiz neler bunlara bir göz gezdirelim.

  • Azure Subscription
  • Visual Studio Code
  • Powershell Core – 6
  • Visual Studio Code üzerinde AZ Function Core Tools eklentisi

Yukarıda ön gereksinimleri elde ettiğinizi varsayarak çözümü geliştirmeye başlayabiliriz. Önce hemen bir VS Code üzerinde Azure Function projesi oluşturalım. Visual Studio Code üzerinde terminal’e gelip hızlı bir şekilde aşağıdaki işlemleri yaparak yeni bir Azure Function App Projesi oluşturalım.