Sunucusuz teknolojileri kullanarak iş akışlarını ve yinelenen görevleri bulutta otomatikleştirmek, kuruluşun DevOps ekibinin üretkenliğini önemli ölçüde artırabilir. Sunucusuz model, olay odaklı bir yaklaşıma uyan otomasyon senaryoları için idealdir.
Mimari
Senaryolar
Bu makalede iki önemli bulut otomasyonu senaryosu gösterilmektedir:
Maliyet merkezi etiketlemesi: Bu uygulama, her Azure kaynağının maliyet merkezlerini izler. Azure İlkesi hizmeti, bir gruptaki tüm yeni kaynakları varsayılan maliyet merkezi kimliğiyle etiketler. Azure Event Grid, kaynak oluşturma olaylarını izler ve ardından bir Azure işlevini çağırır. İşlev Azure Active Directory ile etkileşim kurar ve yeni kaynağın maliyet merkezi kimliğini doğrular. Farklıysa etiketi güncelleştirir ve kaynak sahibine bir e-posta gönderir. Azure Active Directory için REST sorguları basitlik için sahtedir. Azure AD Azure AD PowerShell modülü veya Python için MSAL kitaplığı kullanılarak da tümleştirilebilir.
Azaltma yanıtı: Bu örnek, azaltma için bir Azure Cosmos DB veritabanını izler. Azure Cosmos DB'ye veri erişim istekleri İstek Birimlerindeki (veya RU'lardaki) kapasiteyi aştığında Azure İzleyici uyarıları tetiklenir. Bu uyarılara yanıt olarak otomasyon işlevini çağırmak için bir Azure İzleyici eylem grubu yapılandırılır. İşlev RU'ları daha yüksek bir değere ölçeklendirerek kapasiteyi artırır ve uyarıları durdurur.
Not
Bu çözümler, bu görevleri yerine getirmek için yalnızca dışarıda değildir ve sunucusuz teknolojilerin ortam sinyallerine (olaylara) nasıl tepki gösterebileceğini ve ortamınızdaki değişiklikleri nasıl etkileyebileceğinizi gösteren bir örnek olarak gösterilir. Pratik olduğu durumlarda, özel çözümler üzerinden platforma özel çözümler kullanın. Örneğin Azure Cosmos DB, Azaltma yanıtı senaryosuna yerel bir alternatif olarak otomatik ölçeklendirme aktarım hızını yerel olarak destekler.
Senaryo 1 için başvuru uygulaması GitHub'da kullanılabilir.
Bu sunucusuz bulut otomasyonu senaryolarındaki işlevler genellikle sistem otomasyonunda kullanılan en yaygın iki betik dili olan PowerShell ve Python'da yazılır. Bunlar Azure CLI'daki Azure İşlevleri Core Araçları kullanılarak dağıtılır. Alternatif olarak, Azure İşlevleri dağıtmak ve yönetmek için Az.Functions PowerShell cmdlet'ini kullanırsınız.
İş akışı
Olay tabanlı otomasyon senaryoları en iyi Azure İşlevleri kullanılarak uygulanır. Bu yaygın desenleri izler:
Kaynaklardaki olaylara yanıt verme. Bunlar, Azure kaynağı veya kaynak grubu oluşturma, silme, değiştirme vb. gibi olaylara verilen yanıtlardır. Bu desen, bu tür olaylar için işlevi tetikleme amacıyla Event Grid kullanır. Maliyet merkezi etiketleme senaryosu bu desenin bir örneğidir. Diğer yaygın senaryolar şunlardır:
- DevOps ekiplerine yeni oluşturulan kaynak gruplarına erişim izni verme,
- bir kaynak silindiğinde DevOps'a bildirim gönderme ve
- Azure Sanal Makineler (VM) gibi kaynaklar için bakım olaylarına yanıt verme.
Zamanlanmış görevler. Bunlar genellikle zamanlayıcıyla tetiklenen işlevler kullanılarak yürütülen bakım görevleridir. Bu desene örnek olarak şunlar verilebilir:
- gece bir kaynağı durdurmak ve sabah başlamak,
- Blob Depolama içeriğini düzenli aralıklarla okuma ve Azure Cosmos DB belgesine dönüştürme,
- artık kullanımda olmayan kaynakları düzenli aralıklarla taramak ve kaldırmak ve
- otomatik yedeklemeler.
Azure uyarılarını işleme. Bu düzen, Azure İzleyici uyarılarını ve eylem gruplarını Azure İşlevleri ile tümleştirme kolaylığını kullanır. İşlev genellikle ölçümlere, log analytics'e ve uygulamalardan ve altyapıdan kaynaklanan uyarılara yanıt olarak düzeltme eylemleri gerçekleştirir. Azaltma yanıtı senaryosu bu desene bir örnektir. Diğer yaygın senaryolar şunlardır:
- SQL Veritabanı boyut üst sınırına ulaştığında tablonun kesilmesi,
- Vm'de hatalı bir şekilde durdurulan bir hizmeti yeniden başlatma ve
- bir işlev başarısız olursa bildirim gönderme.
Dış sistemlerle düzenleme. Bu düzen, iş akışını yönetmek için Logic Apps kullanarak dış sistemlerle tümleştirmeye olanak tanır. Logic Apps bağlayıcıları, birkaç üçüncü taraf hizmetin yanı sıra Microsoft 365 gibi Microsoft hizmetleriyle kolayca tümleştirebilir. Azure İşlevleri gerçek otomasyon için kullanılabilir. Maliyet merkezi etiketleme senaryosu bu düzeni gösterir. Diğer yaygın senaryolar şunlardır:
- değişiklik istekleri veya onayları gibi BT işlemlerini izleme ve
- otomasyon görevi tamamlandığında e-posta bildirimi gönderme.
Web kancası veya API olarak kullanıma sunma. Azure İşlevleri kullanan otomasyon görevleri, işlevi HTTP tetikleyicisi kullanarak web kancası/API olarak kullanıma sunarak üçüncü taraf uygulamalarına ve hatta komut satırı araçlarına tümleştirilebilir. İşleve dış erişimin güvenliğini sağlamak için hem PowerShell'de hem de Python'da birden çok kimlik doğrulama yöntemi kullanılabilir. Otomasyon, uygulamaya özgü dış olaylara (örneğin, power apps veya GitHub ile tümleştirme) yanıt olarak gerçekleşir. Yaygın senaryolar şunlardır:
- başarısız olan bir hizmet için otomasyonu tetikleme ve
- kullanıcıları kuruluşun kaynaklarına ekleme.
ChatOps arabirimi oluşturma. Bu düzen müşterilerin sohbet tabanlı bir operasyonel arabirim oluşturmasına ve geliştirme ve operasyon işlevlerini ve komutlarını insan işbirliğine uygun olarak çalıştırmasına olanak tanır. Bu, Azure Bot Framework ile tümleşebilir ve dağıtım, izleme, yaygın sorular vb. için Microsoft Teams veya Slack komutlarını kullanabilir. ChatOps arabirimi, üretim olaylarını yönetmek için her adımın sohbette otomatik olarak belgelendiği gerçek zamanlı bir sistem oluşturur. Daha fazla bilgi için ChatOps'un DevOps'a daha iyi nasıl yardımcı olabileceğini okuyun.
Hibrit otomasyon. Bu düzende, yerel makinenize bir yazılım bileşeni yüklemek için Azure App Service Karma Bağlantıları kullanılır. Bu bileşen, söz konusu makinedeki kaynaklara güvenli erişim sağlar. Karma ortamları yönetme özelliği şu anda PowerShell işlevlerini kullanan Windows tabanlı sistemlerde kullanılabilir. Yaygın senaryolar şunlardır:
- şirket içi makinelerinizi yönetme ve
- atlama sunucusu aracılığıyla güvenlik duvarının arkasındaki diğer sistemleri (örneğin, şirket içi SQL Server) yönetme.
Bileşenler
Mimari aşağıdaki bileşenlerden oluşur:
Azure İşlevleri. Azure İşlevleri bu mimaride olay odaklı, sunucusuz işlem özelliklerini sağlar. İşlev, olaylar veya uyarılar tarafından tetiklendiğinde otomasyon görevlerini gerçekleştirir. İki senaryoda, http isteğiyle bir işlev çağrılır. Durum bilgisi olmayan ve bir kez etkili olan işlev geliştirilerek kod karmaşıklığı en aza indirilmelidir.
Bir tek etkili işlevin birden çok yürütmesi aynı sonuçları oluşturur. Bir kez etkililiği korumak için azaltma senaryosundaki işlev ölçeklendirmesi basit tutulur. Gerçek dünya otomasyonunda ölçeği uygun şekilde artırıp azaltmayı unutmayın. İşlevlerinizi yazarken en iyi yöntemler için Azure İşlevleri performansını ve güvenilirliğini iyileştirme'yi okuyun.
Azure Logic Apps. Logic Apps, yerleşik bağlayıcılar kullanılarak kolayca uygulanan daha basit görevleri gerçekleştirmek için kullanılabilir. Bu görevler e-posta bildirimlerinden dış yönetim uygulamalarıyla tümleştirmeye kadar değişebilir. Logic Apps'i üçüncü taraf uygulamalarla kullanmayı öğrenmek için Azure'da temel kurumsal tümleştirme makalesini okuyun.
Logic Apps kod içermeyen veya düşük kodlu görsel tasarımcı sağlar ve bazı otomasyon senaryolarında tek başına kullanılabilir. Senaryonuza hangi hizmetin uyabileceğini görmek için Azure İşlevleri ile Logic Apps arasındaki bu karşılaştırmayı okuyun.
Event Grid. Event Grid, diğer Azure hizmetlerinden gelen olaylar ve özel olaylar (özel konular olarak da adlandırılır) için yerleşik desteğe sahiptir. Kaynak oluşturma gibi operasyonel olaylar, Event Grid'in yerleşik mekanizması kullanılarak otomasyon işlevine kolayca yayılabilir.
Event Grid, yayımlama-abone olma modeliyle olay tabanlı otomasyonu basitleştirerek HTTPS üzerinden teslim edilen olaylar için güvenilir otomasyon sağlar.
Azure İzleyici. Azure İzleyici uyarıları kritik koşulları izleyebilir ve Azure İzleyici eylem gruplarını kullanarak düzeltici eylem gerçekleştirebilir. Bu eylem grupları Azure İşlevleri ile kolayca tümleştirilir. Bu, altyapınızda veritabanı azaltma gibi hata koşullarını izlemek ve düzeltmek için yararlıdır.
Otomasyon eylemi. Bu geniş blok, otomasyon işlevselliği sağlamak için işlevinizin etkileşim kurabileceği diğer hizmetleri temsil eder. Örneğin, ilk senaryoda olduğu gibi etiket doğrulaması için Azure Active Directory veya ikinci senaryoda olduğu gibi sağlanması gereken bir veritabanı.
Dikkat edilmesi gerekenler
Bu önemli noktalar, bir iş yükünün kalitesini geliştirmek için kullanılabilecek bir dizi yol gösteren ilke olan Azure Well-Architected Framework'ün yapı taşlarını uygular. Daha fazla bilgi için bkz. Azure Well-Architected Framework Microsoft.
Dayanıklılık
Azure İşlevleri
HTTP zaman aşımlarını işleme
Daha uzun bir otomasyon görevinde HTTP zaman aşımlarından kaçınmak için bu olayı bir Service Bus içinde kuyruğa alın ve gerçek otomasyonu başka bir işlevde işleyebilirsiniz. Gerçek Azure Cosmos DB RU sağlama hızlı olsa da azaltma yanıtı otomasyon senaryosu bu düzeni gösterir.
çağrılar arasında durumu koruyan Dayanıklı İşlevler, yukarıdaki yaklaşıma bir alternatif sağlar. Dayanıklı İşlevler yalnızca belirli dilleri destekler.
Günlük hataları
En iyi uygulama olarak, işlevin otomasyon görevlerini gerçekleştirirken tüm hataları günlüğe kaydetmesi gerekir. Bu, hata koşullarının düzgün bir şekilde giderilmesini sağlar. Azure İşlevleri, telemetri sistemi olarak Application Insights ile tümleştirmeyi yerel olarak destekler.
Eşzamanlılık
Otomasyon işlevinizin eşzamanlılık gereksinimini doğrulayın. Eşzamanlılık, host.json dosyasında değişkeni maxConcurrentRequests
ayarlanarak sınırlıdır. Bu ayar, işlev uygulamanızda çalışan eş zamanlı işlev örneklerinin sayısını sınırlar. Her örnek CPU ve bellek tükettiğinden, yoğun CPU kullanan işlemler için bu değerin ayarlanması gerekir. maxConcurrentRequests
İşlev çağrılarınız çok yavaş görünüyorsa veya tamamlanamadıysa daha düşük. Daha fazla ayrıntı için Eşzamanlılığı daha iyi işlemek için konak davranışlarını yapılandırma bölümüne bakın.
Bir kez etkililik
Otomasyon işlevinizin bir kez etkili olduğundan emin olun. Hem Azure İzleyici hem de Event Grid abone olunan olay çözüldü, tetiklendi, devam ediyor vb. gibi ilerleme durumunu gösteren uyarılar veya olaylar yayabilir, kaynağınız sağlanıyor, başarıyla oluşturuldu vb. hatta yanlış yapılandırma nedeniyle yanlış uyarılar gönderebilir. Yanlış veya yanlış yapılandırılmış olayların istenmeyen sonuçlara neden olmaması için işlevinizin yalnızca ilgili uyarılar ve olaylar üzerinde çalıştığından ve diğer tüm uyarıları yoksaydığından emin olun. Daha fazla bilgi için bkz. Aynı giriş için Azure İşlevleri tasarlama.
Event Grid
İş akışınız Event Grid kullanıyorsa, senaryonuzun kılavuzu tıkamak için yeterli olan yüksek hacimli olaylar oluşturabileceğini denetleyin. Teslim onaylandığında olayları nasıl işlediğini anlamak ve mantığınızı uygun şekilde değiştirmek için bkz. Event Grid ileti teslimi ve yeniden deneme . Maliyet merkezi iş akışı, yalnızca bir kaynak grubundaki kaynak oluşturma olaylarını izlediğinden bunun için ek denetimler uygulamaz. Aboneliğin tamamında oluşturulan izleme kaynakları, daha fazla sayıda olay oluşturarak daha dayanıklı bir işleme gerektirebilir.
Azure İzleyici
Yeterince fazla sayıda uyarı oluşturulursa ve otomasyon Azure kaynaklarını güncelleştirirse, Azure Resource Manager azaltma sınırlarına ulaşılabilir. Bu, söz konusu abonelikteki altyapının geri kalanını olumsuz etkileyebilir. Azure İzleyici tarafından oluşturulan uyarıların sıklığını sınırlayarak bu durumdan kaçının. Belirli bir hata için oluşturulan uyarıları da sınırlayabilirsiniz. Daha fazla bilgi için Azure İzleyici uyarıları belgelerine bakın .
Güvenlik
Güvenlik, kasıtlı saldırılara ve değerli verilerinizin ve sistemlerinizin kötüye kullanımına karşı güvence sağlar. Daha fazla bilgi için bkz. Güvenlik sütununa genel bakış.
İşleve erişimi denetleme
Yetkilendirme düzeyini ayarlayarak HTTP ile tetiklenen bir işleve erişimi kısıtlayın. Anonim kimlik doğrulaması ile işlevine gibi http://<APP_NAME>.azurewebsites.net/api/<FUNCTION_NAME>
bir URL ile kolayca erişilebilir. İşlev düzeyinde kimlik doğrulaması, URL'de işlev anahtarları gerektirerek http uç noktasını karartabilir. Bu düzey function.json dosyasında ayarlanır:
{
"bindings": [
{
"authLevel": "function",
"type": "httpTrigger",
"direction": "in",
"name": "Request",
"methods": [
"get",
"post"
]
},
{
"type": "http",
"direction": "out",
"name": "Response"
}
]
}
Üretim ortamı için, işlevin güvenliğini sağlamak için ek stratejiler gerekebilir. Bu senaryolarda işlevler Azure platformunda diğer Azure hizmetleri tarafından yürütülür ve İnternet'e sunulmaz. İşlev yetkilendirmesi bazen web kancası olarak erişilen işlevler için yeterlidir.
İşlev kimlik doğrulamasının üzerine güvenlik katmanları eklemeyi göz önünde bulundurun, örneğin,
- istemci sertifikalarıyla kimlik doğrulama veya
- App Service Kimlik Doğrulamasını etkinleştirerek çağıranın işlevini barındıran dizinin parçası olduğundan veya dizinine erişimi olduğundan emin olun.
İşlev düzeyinde kimlik doğrulaması, Azure İşlevleri kullanan Azure İzleyici eylem gruplarının kullanabileceği tek seçenektir.
İşlevin üçüncü taraf bir uygulama veya hizmetten çağrılması gerekiyorsa, API Management bir katmanla buna erişim sağlanması önerilir. Bu katman kimlik doğrulamayı zorunlu kılmalıdır. API Management, yalnızca API yürütülürse ödeme yapmanızı sağlayan Azure İşlevleri ile tümleşik bir tüketim katmanına sahiptir. Daha fazla bilgi için Bkz. OpenAPI ile işlevlerinizi oluşturma ve kullanıma sunma.
Çağrı hizmeti hizmet uç noktalarını veya özel bağlantıyı destekliyorsa aşağıdaki daha maliyetli seçenekler göz önünde bulundurulabilir:
- Erişimi sınırlamak için sanal ağdaki işlevleri kilitleyebileceğiniz ayrılmış bir App Service planı kullanın. Tüketim tabanlı sunucusuz modelde bu mümkün değildir.
- İşlev uygulamalarınız tarafından kullanılacak ayrılmış bir sanal ağ içeren Azure İşlevleri Premium planını kullanın.
Bu seçenekler arasındaki fiyatlandırmayı ve özellikleri karşılaştırmak için ölçeklendirme ve barındırma Azure İşlevleri okuyun.
İşlevin erişebileceği şeyleri denetleme
Azure Active Directory özelliği olan Azure kaynakları için yönetilen kimlikler, işlevin kimlik doğrulamasını ve diğer Azure kaynaklarına ve hizmetlerine erişmesini basitleştirir. Azure AD tarafından yönetildiğinden kodun kimlik doğrulama kimlik bilgilerini yönetmesi gerekmez.
İki tür yönetilen kimlik vardır:
Sistem tarafından atanan yönetilen kimlikler: Bunlar Azure kaynağının bir parçası olarak oluşturulur ve birden çok kaynak arasında paylaşılamaz. Bunlar, kaynak silindiğinde silinir. Bunları, tek bir Azure kaynağını içeren veya bağımsız kimliklere ihtiyaç duyan senaryolar için kullanın. Her iki senaryo da yalnızca tek bir kaynağı güncelleştirdiğinden sistem tarafından atanan kimlikleri kullanır. Yönetilen kimlikler yalnızca başka bir kaynağı güncelleştirmek için gereklidir. Örneğin, bir işlev yönetilen kimlik olmadan kaynak etiketlerini okuyabilir. İşlevinize sistem tarafından atanan bir kimlik eklemek için bu yönergelere bakın.
Kullanıcı tarafından atanan yönetilen kimlikler: Bunlar tek başına Azure kaynakları olarak oluşturulur. Bunlar birden çok kaynak arasında paylaşılabilir ve artık gerekli olmadığında açıkça silinmesi gerekir. İşlevinize kullanıcı tarafından atanan kimlik ekleme hakkındaki bu yönergeleri okuyun. Aşağıdaki senaryolar için bunları kullanın:
- Tek bir kimliği paylaşabilen birden çok kaynağa erişim gerektirme veya
- Sağlama sırasında kaynakların güvenliğini sağlamak için ön yetkilendirme gerekir veya
- İzinlerin tutarlı olması gerekirken sık sık geri dönüştürülen kaynaklara sahip olun.
Kimlik Azure işlevine atandıktan sonra kaynaklara erişmek için Azure rol tabanlı erişim denetimini (Azure RBAC) kullanarak bir rol atayın. Örneğin, bir kaynağı güncelleştirmek için katkıda bulunan rolünün işlevin kimliğine atanmalıdır.
Maliyet iyileştirmesi
Maliyet iyileştirmesi, gereksiz giderleri azaltmanın ve operasyonel verimlilikleri artırmanın yollarını gözden geçmektir. Daha fazla bilgi için bkz. Maliyet iyileştirme sütununa genel bakış.
Maliyetleri tahmin etmek için Azure fiyatlandırma hesaplayıcısını kullanın. Aşağıda maliyeti düşürme konusunda dikkat edilmesi gereken bazı noktalar yer alır.
Azure Logic Apps
Mantıksal uygulamaların kullandıkça öde fiyatlandırma modeli vardır. Tetikleyiciler, eylemler ve bağlayıcı yürütmeleri, mantıksal uygulama her çalıştırıldığında ölçülür. Tetikleyiciler de dahil olmak üzere tüm başarılı ve başarısız eylemler yürütme olarak kabul edilir.
Mantıksal uygulamaların sabit bir fiyatlandırma modeli de vardır. Azure sanal ağında güvenli kaynaklarla iletişim kuran mantıksal uygulamaları çalıştırmanız gerekiyorsa, bunları bir Tümleştirme Hizmeti Ortamı'nda (ISE) oluşturabilirsiniz.
Ayrıntılar için bkz . Azure Logic Apps için fiyatlandırma modeli.
Bu mimaride, iş akışının düzenlemesi için maliyet merkezi etiketleme senaryosunda mantıksal uygulamalar kullanılır.
Yerleşik bağlayıcılar, bir otomasyon görevi tamamlandığında Azure İşlevleri bağlanmak ve e-posta bildirimi göndermek için kullanılır. İşlevler, HTTP tetikleyicisi kullanılarak web kancası/API olarak kullanıma sunulur. Mantıksal uygulamalar yalnızca bir HTTPS isteği gerçekleştiğinde tetiklenir. Bu, işlevlerin belirli ölçütleri sürekli yokladığı ve denetlediği bir tasarımla karşılaştırıldığında uygun maliyetli bir yoldur. Her yoklama isteği bir eylem olarak ölçülür.
Daha fazla bilgi için bkz . Logic Apps fiyatlandırması.
Azure İşlevleri
Azure İşlevleri aşağıdaki üç fiyatlandırma planıyla kullanılabilir.
Tüketim planı. Bu, yalnızca işlevinizin çalıştığı süre için ödeme yaptığınız uygun maliyetli, sunucusuz plandır. Bu plan kapsamında işlevler bir kerede 10 dakikaya kadar çalıştırılabilir.
Premium plan. Ayrılmış sanal ağ, daha uzun yürütme süresi vb. gibi ek gereksinimlere sahip otomasyon senaryoları için Azure İşlevleri Premium planı kullanmayı göz önünde bulundurun. Bu işlevler bir saate kadar çalıştırılabilir ve yedekleme çalıştırma, veritabanı dizin oluşturma veya rapor oluşturma gibi daha uzun otomasyon görevleri için seçilmelidir.
App Service planı. Azure App Service Karma Bağlantıları kullanan karma otomasyon senaryolarının App Service planını kullanması gerekir. Bu plan kapsamında oluşturulan işlevler, bir web uygulamasına benzer şekilde sınırsız süreyle çalıştırılabilir.
Bu otomasyon senaryolarında Azure İşlevleri, Azure Active Directory'de etiketleri güncelleştirme veya RU'ları daha yüksek bir değere ölçeklendirerek Azure Cosmos DB yapılandırmasını değiştirme gibi görevler için kullanılır. Bu görevler etkileşimli olduğundan ve uzun süre çalışmadığından Tüketim planı bu kullanım örneğine uygundur.
Azure Cosmos DB
Azure Cosmos DB, sağlanan aktarım hızı ve tüketilen depolama için saate göre faturalandırılır. Sağlanan aktarım hızı, eklemeler, okumalar gibi tipik veritabanı işlemleri için kullanılabilen saniyede İstek Birimleri (RU/sn) cinsinden ifade edilir. Depolama, depolanan verileriniz ve dizininiz için kullanılan her GB için faturalandırılır. Daha fazla bilgi için bkz. Azure Cosmos DB fiyatlandırma modeli .
Bu mimaride, Azure Cosmos DB'ye veri erişim istekleri İstek Birimlerindeki (veya RU'lardaki) kapasiteyi aştığında Azure İzleyici uyarıları tetikler. Bu uyarılara yanıt olarak, otomasyon işlevini çağırmak için bir Azure İzleyici eylem grubu yapılandırılır. işlevi RU'ları daha yüksek bir değere ölçeklendirir. Bu, maliyetin düşük tutulmasına yardımcı olur çünkü yalnızca iş yüklerinizin ihtiyaç duyduğu kaynaklar için saatlik olarak ödeme yapmanız gerekir.
İş yükünüzle ilgili hızlı bir maliyet tahmini elde etmek için Azure Cosmos DB kapasite hesaplayıcısını kullanın.
Daha fazla bilgi için Azure Well-Architected Framework Microsoft Maliyet bölümüne bakın.
Dağıtma konuları
Uygulamanızın davranışını yöneten kritik otomasyon iş akışları için verimli bir DevOps işlem hattı kullanılarak sıfır kapalı kalma süresi dağıtımı gerçekleştirilmelidir. Daha fazla bilgi için sunucusuz arka uç dağıtımını okuyun.
Otomasyon birden çok uygulamayı kapsıyorsa, otomasyon için gereken kaynakları ayrı bir kaynak grubunda tutun. Otomasyon tek bir uygulamayı kapsıyorsa, otomasyon ve uygulama kaynakları arasında tek bir kaynak grubu paylaşılabilir.
İş akışı bir dizi otomasyon işlevi içeriyorsa, tek bir işlev uygulamasındaki bir senaryoya uygun işlevleri gruplandırın. Daha fazla bilgi için İşlev uygulamasını yönetme makalesini okuyun.
Uygulamanızı dağıtırken izlemeniz gerekir. Geliştiricilerin performansı izlemesini ve sorunları algılamasını sağlamak için Application Insights'ı kullanmayı göz önünde bulundurun.
Daha fazla bilgi için Microsoft Azure Well-Architected Framework'teki DevOps bölümüne bakın.
Azure kaynaklarında kesin eylemler
Yukarıdaki her iki senaryoda da sonuç, doğrudan Azure Resource Manager etkileşimi aracılığıyla Azure kaynak durumundaki bir değişiklikti. Amaçlanan sonuç bu olsa da, değiştirilen kaynaklar başlangıçta Bicep veya Terraform şablonları gibi bildirim temelli olarak dağıtıldıysa bunun ortamınız üzerindeki etkisini göz önünde bulundurun. Bu değişiklikler kaynak şablonlarınıza geri çoğaltılmadığı sürece, bu şablonların bir sonraki kullanımı bu otomasyon tarafından yapılan değişiklikleri geri alabilir. Şablonlar aracılığıyla düzenli olarak dağıtılan Azure kaynaklarındaki kesinlik temelli değişiklikleri karıştırmanın etkisini göz önünde bulundurun.
Bu senaryoyu dağıtın
Maliyet merkezi senaryosunu dağıtmak için GitHub'da dağıtım adımlarına bakın.