Düzenle

Aracılığıyla paylaş


SCI puanını kullanarak Azure uygulama sürdürülebilirliğini ölçme

Azure Monitor
Azure Automation
Azure Logic Apps
Azure Table Storage
Power BI

Bu örnek iş yükü, kullanılabilir proxy'leri temel alan bir sürdürülebilirlik modeli oluşturmanıza yardımcı olur. Bu model, bir uygulamanın karbon verimliliğinin puanlanmasına olanak tanır. Bu Yazılım Karbon Yoğunluğu (SCI) puanı, bir uygulamanın karbon çıkışındaki değişiklikleri ölçmek için bir temel sağlar.

Not

Karbondioksit dışındaki diğer sera gazlarının çevre üzerinde farklı etkileri vardır. Örneğin, bir ton metan 80 ton karbondioksit ile aynı ısıtma etkisine sahiptir. Kural gereği, bu makale her şeyi CO2 eşdeğeri ölçüye göre normalleştirir. Karbona yapılan başvurular her zaman CO2 eşdeğeri anlamına gelir.

Mimari

Bir uygulamanın karbon etkisini puanlayan kullanılabilir proxy'leri temel alan bir sürdürülebilirlik modeli oluşturma diyagramı.

Bu mimarinin bir Visio dosyasını indirin.

Veri akışı

  1. SCI puanını hesaplamak için kullanılacak uygulama veri kaynaklarını yapılandırın.
  2. Azure Tablo Depolama verileri bir Azure Depolama hesabına kaydedin.
  3. SCI puanını hesaplamak için olay işleyicilerini kullanın. Olay işleyicileri Azure İşlevleri, Azure Logic Apps ve Azure Blob Depolama içerebilir. Puan, birim başına gram cinsinden yayılan karbon miktarıdır; burada birim uygulama ölçeklendirme faktörüne veya ara sunucular kullanılarak yaklaşık olarak ifade edilir.
  4. Uygulamada talep şekillendirmeyi tetikleme veya uygulamanın önceden tanımlanmış eko modunu başlatmak için Azure İşlevleri, Logic Apps ve otomasyon runbook'larını kullanın.
  5. Zaman içindeki puana ilişkin raporlar ve görselleştirmeler için Power BI'ı kullanın.

Bileşenler

  • Azure için Emisyon Etkisi Kontrol Paneli, bulut tabanlı emisyonlarınızı ve karbon tasarrufu potansiyelinizi ölçmenize yardımcı olur. Bulut kullanımıyla ilgili doğrudan ve dolaylı sera gazı emisyonlarını izler.
  • Uygulama Analizler, uygulama performansı yönetimi (APM) sağlayan bir Azure İzleyici uzantısıdır. Uygulama Analizler, kişilerin uygulamanızı nasıl kullandığını anlamanıza yardımcı olur. Uygulama verimliliğini artırmak için bu bilgileri kullanın.
  • Azure Tablo Depolama, yapılandırılmış NoSQL verileri olarak da bilinen ilişkisel olmayan yapılandırılmış verileri depolayan bir hizmettir. Şemasız tasarıma sahip bir anahtar/öznitelik deposu sağlar. Birçok uygulama türü için Tablo Depolama verilerine erişim hızlı ve uygun maliyetlidir. Tablo Depolama genellikle benzer veri hacimleri için geleneksel SQL'den daha düşük maliyetlidir.
  • Azure Logic Apps , çok az kodla ve hiç kod olmadan otomatik iş akışları oluşturup çalıştırabileceğiniz bir platformdur. Görsel tasarımcıyı kullanarak ve önceden oluşturulmuş işlemlerden seçim yaparak ara sunucu kaynaklarını, veri depolamayı ve verimlilik hesaplama sistemlerini tümleştirip yöneten bir iş akışı oluşturun.
  • Azure İşlevleri daha az kod yazmanızı, daha az altyapı korumanızı ve maliyetlerden tasarruf etmenizi sağlayan sunucusuz bir çözümdür. Bulut altyapısı, uygulamalarınızı çalışır durumda tutmak için gereken tüm güncel kaynakları sağlar.
  • Power BI , verileri gerçek zamanlı içgörüler sağlayan analizlere ve raporlara dönüştürebilir. Verileriniz ister bulut tabanlı ister şirket içi olsun, Azure ve Power BI görselleştirmeleri ve analizleri hayata geçirmek için tümleştirmeye ve bağlantıya sahiptir.

Alternatifler

Bu belgede kullanılan Azure hizmetlerini benzer hizmetlerle değiştirebilirsiniz. Hesaplamayı altyapınız üzerinde minimum etkiyle yapmak ve mevcut kaynakların yoğunluğu ve kullanımını artırmak için ortamınızda zaten dağıtılmış olan Azure hizmetlerini veya araçlarını kullanın:

  • Power BI panoları yerine Azure İzleyici Çalışma Kitaplarını veya Azure Yönetilen Grafana hizmetlerini kullanın.
  • Uygulama Analizler için Elasticsearch veya Open APM gibi başka bir APM aracını kullanın.
  • MySQL veya MariaDB gibi başka bir kayıt sistemi kullanarak veri tablolarını kaydedebilirsiniz.
  • Çalışan bir Azure İşlevleri veya Logic Apps uygulamanız varsa, hesaplamayı mevcut dağıtımlardan düzenli olarak başlatmayı göz önünde bulundurun.
  • Uygulama kaynakları birden çok kaynak grubuna dağıtılmışsa, maliyet verilerini ilişkilendirmek ve uygulamanın yaydığı karbon miktarını hesaplamak için etiketleri kullanın.

Senaryo ayrıntıları

Bu bölümlerde, karbon çıkışındaki değişiklikleri ölçmek için bir taban çizgisi hesaplamak için gereken ayrıntılar açıklanmaktadır.

Veri kaynakları

Birkaç değişkeni olan bir ara sunucu denklemi oluşturmayı deneyin. Uygulama davranışını ve performansını temsil eden proxy ölçümlerini seçin. Bu örnekte aşağıdaki ölçümler kullanılır:

Ölçümler için Uygulama Analizler ayarlama hakkında bir öğretici için bkz. ASP.NET Core uygulamaları için Uygulama Analizler SDK'sı.

Denkleme aşağıdakiler gibi daha fazla değişken ekleyebilirsiniz:

  • Altyapı ve uç hizmetler karbon emisyonları
  • Elektrik üretimi ve talebi zamana göre değiştiği için kullanıcıların bağlandığı süre
  • Uygulamanın zaman içindeki performansının nasıl değiştiğini açıklayabilen diğer herhangi bir tuhaf ölçümü

Bu denklemi, kullanıcı sayısını yansıtabilecek bir puan olarak oluşturmak, karbon puanına en yakın tahmini temsil eder. Bu değer, uygulamanın sürdürülebilirliğindeki değişiklikler ve iyileştirmeler için karşılaştırmadır.

Uygulama performansında dikkat edilmesi gereken bir diğer nokta da maliyettir. Çoğu durumda performans verimliliğinin maliyet ve karbon tasarrufu ile doğrudan bağıntısı vardır.

Açıklama Sonuç
Performans daha yüksektir, ancak maliyetler aynıdır Uygulama iyileştirilmiş ve azaltılmış karbon emisyonları
Maliyetler daha düşük, ancak performans aynıdır Uygulama iyileştirilmiş ve azaltılmış karbon emisyonları
Performans ve maliyetler yüksek Uygulama en iyi duruma getirilmemiş ve karbon emisyonları artmış
Maliyetler yüksek, ancak performans düşük veya eşit Uygulama iyileştirilmiş ve artan karbon emisyonları değildir veya enerji maliyeti daha yüksektir ve bu da daha yüksek karbon emisyonlarına neden olur

Uygulama SCI puanı, maliyet ve performans arasındaki bu bağıntı her uygulama için benzersizdir. Birçok faktöre bağlıdır. Bu üç değişken için veri toplamak, bunların varyasyonlarını tahmin etmek için bir algoritma oluşturmanıza olanak tanır. SCI, uygulama mimarisi ve desenleri hakkında bilinçli kararlar vermenizi sağlar.

Hesaplamalar

Bu senaryoda, başlangıç noktası olarak Emisyon Etkisi Kontrol Paneli toplanan verileri işleyin. SCI temel hesaplaması aşağıdaki gibidir:

SCI = C * R

Bileşenler şunlardır:

  • SCI. Yazılım Karbon Yoğunluğu sonucu.

  • C. Uygulama için karbon emisyonları.

    Bu değer, uygulamanın Azure'da nasıl dağıtılacağına bağlıdır. Örneğin, tüm uygulama kaynakları tek bir kaynak grubundaysa, bu kaynak grubunun karbon emisyonları değişken olacaktır C .

    Not

    Bu senaryo, mimariye ve uç veya kullanıcı davranışına bağlı olan diğer emisyon kaynaklarını dikkate almaz. Bu önemli noktalar, karbon proxy'lerini kullanırken bir sonraki adımdır.

  • R. Uygulamanın ölçeklendirme faktörü.

    Bu değer, göz önünde bulundurulan zaman aralığı veya API istekleri ya da web istekleri için ortalama eşzamanlı kullanıcı sayısı olabilir. Ölçeklendirme faktörü, puan hesabının yalnızca dağıtım ayak izi yerine uygulamanın kullanımının genel etkisini hesaba katmasına olanak tanır.

Zaman penceresi bu hesaplamanın bir diğer önemli yönüdür. Karbon emisyonları herhangi bir enerji tüketen cihaz veya sistem için farklılık gösterir, çünkü enerji şebekesi bazı zamanlarda yenilenebilir veya alternatif enerji kaynaklarına sahip olabilir, ancak diğerlerinde olmayabilir. Örneğin güneş enerjisi değişkendir. Mümkün olduğunca hassas olmak için, mümkün olan en kısa zaman dilimiyle (örneğin, günlük veya saatlik hesaplama) başlayın.

Emisyon Etkisi Kontrol Paneli abonelik içindeki hizmetlere göre aylık karbon bilgileri sağlar. Tek bir kaynak grubu için bu sayıyı almak için aşağıdaki denklemi kullanın:

Carbon (res-group) = (Carbon(subscription) * Cost(res-group)) / Cost(subscription)

Aşağıdaki bölümde açıklandığı gibi, kaynak grubunuzun aylık karbon bilgilerini ve kalan verileri depolayın.

Veri depolama

Önceki bölümde toplanan karbon ve karbon proxy bilgilerini depolayın. Zaman içinde karbon puanını görselleştirmek ve bilinçli seçimler yapmak için bilgileri panolara veya raporlara aktarın. Sürdürülebilirlik nedeniyle ve İyi Tasarlanmış Çerçeve'nin en iyi uygulamalarıyla uyumlu olarak azure tablo Depolama gibi en düşük uygulanabilir kayıt sistemini kullanın.

Toplanan verileri açıklayan tablolarda aşağıdaki örnekte olduğu gibi veriler kullanılır:

Raporlardan alınan veriler:

  • Tarih
  • Kaynak grubu adı
  • C panosundan karbon emisyonları
  • Maliyet

APM'den alınan veriler:

  • CPU
  • Bellek
  • Yanıt süresi oranı (gönderme/alma) Ölçeklendirme faktörü R

Hesaplamalar: SCI

Daha fazla bilgi için bkz.

Veri bağıntıları

Uygulama karbonu, performansı ve maliyetiyle ilgili veriler, uygulamanıza özgü bir bağıntı algoritması oluşturmanıza olanak tanır. Bu bilgiler maliyet, performans ve karbon iyileştirme planlaması yaparken rehberlik sağlar.

Not

Azure rezervasyonları veya maliyet tasarrufu planları gibi indirimler içeren denklemler, bağıntı algoritmasında tutarsızlıklar oluşturur.

Algoritma seçimi hakkında daha fazla bilgi için bkz . Azure Machine Learning için algoritmaları seçme.

Veri görüntüleme

Verileri ve hesaplamaları, özelleştirilmiş bir Azure İzleyici Çalışma Kitabı veya basit bir Power BI panosu gibi çeşitli yollarla görüntüleyebilirsiniz. Daha fazla bilgi için bkz. Application Analizler kullanarak özel anahtar performans göstergesi (KPI) panoları oluşturma ve Rapordan Power BI panosu oluşturma.

SCI puan eylemi tetikleyicileri

Ara sunucuları kullanarak bir uygulamanın karbon etkisini puanladıktan sonra, bir sonraki adım karbon puanındaki olumsuz koşulların tetiklenmesi gereken eylemleri tanımlamaktır. Bu koşullara bazı örnekler şunlardır:

  • Enerji üretimi ve talebi yüksektir ve enerji üretimi pahalıdır
  • Doğal afet veya jeopolitik çatışma nedeniyle elektrik kullanılamıyor
  • Edge altyapısı, fazla kaynak tüketimi veya tedarik zinciri sorunları nedeniyle kullanılamaz hale geliyor

Uygulamayı etkileyebilecek hata noktalarını belirledikten sonra, uygulamayı karbon artışlarına dayanıklı hale getirmek için hangi eylemlerin gerçekleştireceğine karar verin.

Uygulamanın eco-mode sürümünü oluşturmayı göz önünde bulundurun. Eko mod sürümü, tam uygulamanın daha basit, daha küçük, daha ucuz, daha yeşil bir sürümüdür. Karbon emisyonu artışları varsa uygulama bu en düşük özelliklere geri döner.

Son kullanıcıların eko mod sürümünü seçmesine yardımcı olun. İnsanların karbon emisyonlarını azaltma karşılığında daha yalın bir arabirim, daha az grafik ve sınırlı özelliklerle iyi olduklarını bildirmeleri için yeşil bir düğme sağlayın. Kullanıcıların dahil olması, teknik değişikliğin yanı sıra kültürel değişime de yol açmak için bir fırsat sağlar:

  • Bu seçimin etkisini belirtin: Yeşil sürümü kullanarak X> miktarda karbon tasarrufu <veya karbon puanımızı Y'ye <>getirmeniz gerekir.
  • Kullanıcı davranışı hakkında bilgi edinin ve eco-mode sürümünü seçimlerini yansıtacak şekilde değiştirin. Örneğin, birisi uygulama özelliklerinin yalnızca yüzde 10'unu kullanıyorsa, yeşil sürümün ideal bir kullanıcısı olabilir.
  • İdeal olarak, zaman içinde tam sürüm emisyon için iyileştirilmiştir ve sürümler sonunda yakınsanacaktır.

Dikkat edilmesi gereken noktalar

Bu önemli noktalar, bir iş yükünün kalitesini artırmak için kullanılabilecek bir dizi yol gösteren ilke olan Azure İyi Tasarlanmış Çerçeve'nin yapı taşlarını uygular. Daha fazla bilgi için bkz . Microsoft Azure İyi Tasarlanmış Çerçeve.

Güvenlik

Güvenlik, kasıtlı saldırılara ve değerli verilerinizin ve sistemlerinizin kötüye kullanılmasına karşı güvence sağlar. Daha fazla bilgi için bkz . Güvenlik sütununa genel bakış.

Daha fazla güvenlik için Azure hizmet kaynaklarını yalnızca sanal ağınızla güvenli hale getirmek için Azure Sanal Ağ hizmet uç noktalarını kullanın. Bu yaklaşım, bu kaynaklara genel İnternet erişimini kapatır ve yalnızca sanal ağınızdan gelen trafiğe izin verir.

Bu yaklaşımla Azure'da bir sanal ağ oluşturur ve ardından Azure hizmetleri için özel hizmet uç noktaları oluşturursunuz. Bu hizmetler daha sonra bu sanal ağdan gelen trafikle sınırlandırılır. Ayrıca şirket içi ağınızdaki hizmetlere bir ağ geçidi üzerinden de ulaşabilirsiniz.

Not

Verileri şirket içinden Azure Depolama'a taşımak için şirket içi bilgisayarlarınızdan genel IP adreslerine izin vermeniz veya Azure ExpressRoute'u kullanmanız gerekir. Ayrıntılar için bkz . Ayrılmış Azure hizmetlerini sanal ağlara dağıtma.

Güvenli çözümler tasarlama hakkında genel yönergeler için Azure güvenlik belgelerine bakın.

Maliyet iyileştirme

Maliyet iyileştirmesi, gereksiz giderleri azaltmanın ve operasyonel verimlilikleri iyileştirmenin yollarını aramaktır. Daha fazla bilgi için bkz . Maliyet iyileştirme sütununa genel bakış.

Emisyon Etkisi Kontrol Paneli ve Microsoft Maliyet Yönetimi raporları ücretsizdir. Bu örnek, maliyet ve karbon emisyonlarından tasarruf etmek için kasıtlı olarak en düşük düzeydedir. Bu mimariyi birkaç alternatif Azure hizmeti kullanarak dağıtabilirsiniz.

Uygulama dağıtımınızda zaten sahip olduğunuz tüm eşdeğer hizmetleri kullanın. Aşağıdaki kaynaklar bileşen fiyatlandırma bilgilerini sağlar:

Performans verimliliği

Performans verimliliği, kullanıcılar tarafından anlamlı bir şekilde yerleştirilen talepleri karşılamak amacıyla iş yükünüzü ölçeklendirme becerisidir. Daha fazla bilgi için bkz . Performans verimliliği sütununa genel bakış.

Bu mimarinin birincil amacı, uygulamalarınız için maliyet ve karbonun kendisi üzerinde en az etkiye sahip bir sürdürülebilirlik puanı sağlamaktır. Bileşenlerin çoğu hizmet olarak platform (PaaS) ve kullanıma ve trafiğe göre bağımsız olarak ölçeklendirilebilen sunucusuz Azure hizmetleridir.

Bu örnekteki pano ve depolama arabirimi yoğun kullanım ve danışmanlık için uygun değildir. Bu çözümü birçok kullanıcıya sağlamayı planlıyorsanız şu alternatifleri göz önünde bulundurun:

Katkıda Bulunanlar

Bu makale Microsoft tarafından yönetilir. Başlangıçta aşağıdaki katkıda bulunanlar tarafından yazılmıştır.

Asıl yazarlar:

Diğer katkıda bulunan:

Genel olmayan LinkedIn profillerini görmek için LinkedIn'de oturum açın.

Sonraki adımlar

Bu çalışma, Yeşil Yazılım Vakfı'nın ilkeleri ve metodolojisi ile uyumlu haledir.

Daha yeşil bir uygulama oluşturmanın bir sonraki adımı, karbon kullanan SDK'yi uygulamanıza eklemektir. Belirli karbon koşullarını karşıladıktan sonra tetikleyicileri gerçek zamanlı olarak otomatikleştirebilirsiniz. Daha fazla bilgi için bkz . Green Software Foundation Carbon Aware SDK.

İyi Tasarlanmış Çerçeve'de sürdürülebilirlik bulut iş yükü kılavuzu için Sürdürülebilirlik iş yükü belgelerine bakın.

Sürdürülebilirlik hakkında daha fazla bilgi için şu makalelere bakın: