Aracılığıyla paylaş


Azure Service Fabric için en iyi mimari uygulamalar

Azure Service Fabric, ölçeklenebilir ve güvenilir mikro hizmetleri ve kapsayıcıları paketlemeyi, dağıtmayı ve yönetmeyi kolaylaştıran bir dağıtılmış sistemler platformudur. Bu kaynaklar, küme olarak bilinen, ağa bağlı bir sanal veya fiziksel makine kümesine dağıtılır.

Bu makalede, bir mimar olarak işlem karar ağacı gözden geçirip iş yükünüz için işlem platformu olarak Service Fabric'i seçtiğiniz varsayılır. Bu makaledeki kılavuz, ilkesine bağlı olanWell-Architected Çerçevesi sütunlarının ilkelerine eşlenen mimari öneriler sunar.

Teknoloji kapsamı

Bu gözden geçirme, aşağıdaki Azure kaynakları için birbiriyle ilişkili kararlara odaklanır:

  • Service Fabric

Note

Bu hizmet kılavuzu , Azure Sanal Makineler ve ölçek kümeleri hizmet kılavuzundaki yönergelere dayalıdır. Sanal makine (VM) ölçek kümeleri Service Fabric düğümlerini destekler. Service Fabric düğümleriniz için işlem arka ucunu çalıştırma hakkında öneriler için bu hizmet kılavuzuna bakın.

Service Fabric mimari ve yapılandırma kılavuzunda küme ve iş yükü arasında ayrım yapmak önemlidir. Service Fabric küme yöneticisi ve kaynak sağlayıcısı, küme yapılandırmasıyla ilgili sorumluluğu paylaşır. Geliştiriciler iş yükü yapılandırmasını yönetir. Bu kılavuz, her iki rol için de önemli noktalar ve öneriler sağlar.

Aşağıdaki tasarım denetim listeleri ve öneriler, kılavuzun küme mimarisi, iş yükü mimarisi veya her ikisi için geçerli olup olmadığını gösterir.

Reliability

Güvenilirlik sütununun amacı, yeterli dayanıklılık vehatalardan hızlı bir şekilde kurtarabilmek için sürekli işlevsellik sağlamaktır.

Güvenilirlik tasarım ilkeleri tek tek bileşenler, sistem akışları ve bir bütün olarak sistem için uygulanan üst düzey bir tasarım stratejisi sağlar.

İş yükü tasarımı denetim listesi

Güvenilirlik içintasarım gözden geçirme denetim listesini temel alarak tasarım stratejinizi başlatın. Service Fabric'in güvenilirliğini göz önünde bulundurarak iş gereksinimlerinizle ilgili olup olmadığını belirleyin. Gerektiğinde daha fazla yaklaşım içerecek şekilde stratejiyi genişletin.

  • (Küme) İş yükü için genel güvenilirlik hedef ölçümünü temel alarak kümeniz için uygun güvenilirlik düzeyini belirleyin. Tanımladığınız kümenin güvenilirlik düzeyi, birincil düğüm türünüz için dağıtılacak en az düğüm sayısını belirler. Daha fazla bilgi için bkz . Güvenilirlik düzeyleri.

  • (Küme) Kritik iş yükleri için Service Fabric kümeleriniz için kullanılabilirlik alanlarını kullanmayı göz önünde bulundurun.

  • (Küme) Üretim senaryoları için en az beş VM gerektiren Silver dayanıklılık katmanına sahip Standart yönetilen küme SKU'su kullanın. Standart SKU, üretim dışı senaryolar için uygun olan Temel SKU'dan daha fazla güvenilirlik sağlar.

  • (Küme) Ön uç hizmetleri ve arka uç hizmetleri gibi farklı iş yükü türlerini yalıtmak için iş yükleriniz için ek ikincil düğüm türleri oluşturun. Ardından bu hizmetleri bağımsız olarak yönetebilir ve ölçeklendikleyebilirsiniz. Her bir düğüm türü, kendi ölçek kümesitarafından desteklenir.

Yapılandırma önerileri

Recommendation Benefit
(Küme) Azure API Management, Service Fabric ile doğrudan tümleştirebilir . Kümede barındırılan API'ler için çapraz kesme işlevselliğini kullanıma açmak ve boşaltmak için API Management'ı kullanmayı göz önünde bulundurun. API Management, Service Fabric kümesine dağıtılan API'leri güvenli bir şekilde yayımlamanıza, yönetmenize ve izlemenize yardımcı olan zengin özelliklere sahip bir uygulama ağ geçididir.
(İş Yükü) Durum bilgisi olan iş yükü senaryoları için Reliable Services modelini kullanmayı göz önünde bulundurun. Reliable Services modeli, sistem hataları veya ağ sorunlarıyla karşılaştığınızda veya hizmetlerin kendisi arızalarla karşılaştığında hizmetlerinizi etkin tutar. Durum verisine sahip hizmetler için, arızalar oluştuğunda durumunuz saklanır.

Security

Güvenlik sütununun amacı, iş yüküne gizlilik, bütünlük ve kullanılabilirlik garanti sağlamaktır.

Güvenlik tasarım ilkeleri Service Fabric'in teknik tasarımına yaklaşımlar uygulayarak bu hedeflere ulaşmak için üst düzey bir tasarım stratejisi sağlar.

İş yükü tasarımı denetim listesi

Güvenlik için tasarım gözden geçirme denetim listesini temel alarak tasarım stratejinizi başlatın ve güvenlik duruşunu geliştirmek için güvenlik açıklarını ve denetimleri belirleyin. Gerektiğinde daha fazla yaklaşım içerecek şekilde stratejiyi genişletin.

  • (Küme ve iş yükü) Service Fabric ürün güvenliği yönergeleri hakkında bilgi edinin. Daha fazla bilgi için aşağıdaki kaynaklara bakın:

  • (Küme) Ağ segmentasyonu ve denetimleri uygulama. Alt ağlar ve düğüm türleri arasındaki trafik akışını kısıtlamak için ağ güvenlik gruplarını (NSG) yapılandırın.

  • (Küme) Uygulama gizli dizilerini ve istemci sertifikalarını güvenli bir şekilde yönetmek için yerel araçları kullanın. Uygulama gizli dizilerini yönetmek için Service Fabric Gizli Dizi Deposu'nı kullanın. Sertifikaları yönetmek için Azure Key Vault'ı kullanın.

  • (Küme) İç yük dengeleyici kullanmak ve her düğüm türü için farklı yük dengeleyiciler ve NSG'ler tanımlamak için mevcut yük dengeleyicinizi kullanmayı göz önünde bulundurun.

  • (Küme) Kümeye erişimi güvenli bir şekilde denetlemeye yardımcı olmak için Microsoft Entra tümleştirmesini etkinleştirin. Kullanıcılar, Entra kimlik bilgileriyle kimlik doğrulaması yapabilir. Alternatif olarak, küme istemcisi ve yönetici sertifikalarını kullanabilirsiniz. Küme istemci sertifikalarını Service Fabric Explorer kullanıcıları arasında dağıtmayın.

  • (Küme ve iş yükü) İstemci sertifikalarının son kullanma tarihini izlemek için bir işlem oluşturun.

  • (Küme ve iş yükü) Geliştirme, hazırlama ve üretim için ayrı kümeler oluşturun. Üretim ortamları genellikle üretim dışı ortamlara göre daha sıkı güvenlik denetimleri gerektirir. Ortamların birbirinden yalıtılmış olması, bir ortamın güvenliği tehlikeye atılırsa bir güvenlik katmanı ekler.

Yapılandırma önerileri

Recommendation Benefit
(Küme) Uygulama dağıtımı ve iş yükleri için doğru bağlantı noktalarını açtığınızdan emin olun. Bu yapılandırma, Service Fabric kaynaklarıyla iş yükünün geri kalanı arasında güvenli iletişim sağlanmasına yardımcı olur.
(Küme) Gizli dizileri dağıtmak için Service Fabric Gizli Dizi Deposu'nı kullandığınızda değerleri şifrelemek için ayrı bir veri şifreleme sertifikası kullanın. Ayrı bir şifreleme sertifikası sertifikaları yalıtarak tek bir hata noktası riskini azaltır ve daha ayrıntılı erişim denetimi sağlar.
(Küme) Service Fabric kümeniz için istemci sertifikanıza bir erişim denetimi listesi (ACL) uygulayın. ACL, sertifikalara erişimi daha iyi denetleyebilmeniz için ek bir kimlik doğrulaması düzeyi sağlar.
(Küme) Kümenizdeki düğümler arasında kaynak kullanımını yönetmek için kaynak isteklerini ve sınırlarını kullanın. Kaynak sınırları, bir hizmetin çok fazla kaynak kullanmamasını ve diğer hizmetleri yoksun bırakmamasını sağlamaya yardımcı olur.
(İş Yükü) Service Fabric uygulamalarına istemci sertifikalarını dahil edin. Kimlik doğrulaması için istemci sertifikaları hem küme hem de iş yükü düzeyinde gelişmiş güvenlik sağlar.
(İş Yükü) Azure kaynaklarda Service Fabric uygulamalarının kimliğini doğrulamak için yönetilen kimlik kullanın. Yönetilen kimlikler, çeşitli hizmetlerin kimliğini doğrulamak için kodunuzdaki kimlik bilgilerini yerel olarak bir geliştiricinin iş istasyonuna veya kaynak denetimine kaydetmeden güvenli bir şekilde yönetmenize yardımcı olur.
(Küme ve iş yükü) Güvenilmeyen uygulamaları barındırmak için:
- Mevcut en güçlü korumalı alan teknolojisini kullanın.
- Service Fabric çalışma zamanına erişimi kaldırın.
- Diğer Service Fabric en iyi yöntemlerini izleyin.
Bu uygulamalar, yalnızca güvenilir ve doğrulanmış uygulamaların kritik bileşenlerle etkileşime geçebilmesini sağlamaya yardımcı olur. Ayrıca güvenlik açıkları veya kötü amaçlı kod içeren güvenilmeyen uygulamaların normal küme işlemleri üzerindeki etkisini azaltır.

Maliyet İyileştirme

Maliyet İyileştirme, harcama düzenlerini algılamaya, kritik alanlardaki yatırımlara öncelik vermeye ve diğer alanları kuruluşun bütçesini karşılamak için iş gereksinimlerini de dikkate alarak optimize etmeye odaklanır.

Maliyet İyileştirme tasarım ilkeleri bu hedeflere ulaşmak ve Service Fabric ve ortamıyla ilgili teknik tasarımda gerektiğinde ödün vermek için üst düzey bir tasarım stratejisi sağlar.

İş yükü tasarımı denetim listesi

Yatırımlar için Maliyet İyileştirme için tasarım gözden geçirme denetim listesini temel alarak tasarım stratejinizi başlatın. İş yükünün iş yükü için ayrılan bütçeyle uyumlu olması için tasarımda ince ayarlamalar yapın. Tasarımınız doğru Azure özelliklerini kullanmalı, yatırımları izlemeli ve zaman içinde iyileştirme fırsatları bulmalıdır.

  • (İş yükü ve küme) Azure fiyatlandırma hesaplayıcısını kullanarak ilk maliyeti tahmin edin. Service Fabric kümesi oluştururken seçtiğiniz işlem örnekleri, depolama, ağ kaynakları ve IP adresleri ücretlendirilir. Service Fabric'in kendisi ücret ödemez. Maliyet modelleme hakkında daha fazla bilgi için bkz. Uygulama planlaması için örnek maliyet hesaplama işlemi.

  • (Küme) Uygun VM SKU'larını seçin. İş yükü özelliklerine göre VM'leri seçin. Örneğin, iş yükünün YOĞUN CPU kullanımına sahip olup olmadığını veya kesintiye uğrayılabilir işlemler çalıştırıp çalıştırmadığını belirleyin.

  • (Küme) Uygun küme SKU'larını seçin. Aksini yapmak için belirli bir nedeniniz yoksa üretim ortamları için Standart SKU'yu ve üretim dışı ortamlar için Temel SKU'yu kullanın. Her ortamda uygun düğüm türlerini ve boyutlarını kullanın.

  • (Küme ve iş yükü) Uygun yönetilen disk katmanlarını ve boyutlarını seçin. Disk depolama için Well-Architected Framework hizmet kılavuzunu gözden geçirin. Gereksiz kaynak giderlerini önlemek için geçici disk teklifleri içeren VM SKU'larını kullanmayın.

Yapılandırma önerileri

Recommendation Benefit
(Küme) Durum bilgisini korumanız gerekmiyorsa geçici disk desteği içeren bir VM SKU'su düşünün. Ödeme yaptığınız kaynakları optimize edin. Yönetilen disk yerine geçici bir disk, durum bilgisi olmayan iş yüklerinin maliyetlerini azaltabilir.
(Küme ve iş yükü) VM SKU seçiminizi iş yükü gereksinimleriyle uyumlu hale getirme. Gereksinimlerinizi karşılamak için ölçek kümelerinde barındırılan doğru düğüm türlerini tanımladığınızdan emin olun. Seçiminizi iş yükü taleplerinizle eşleştirmek, gereksiz ve pahalı VM SKU'ları için ödeme yapmaktan kaçınmanıza yardımcı olur.
(Küme ve iş yükü) Disk türü seçiminizi iş yükü gereksinimleriyle uyumlu hale getirme. Uygun bir yönetilen disk türü, pahalı ve gereksiz disk türleri için ödeme yapmaktan kaçınmanıza yardımcı olur.

Operasyonel Mükemmellik

Operasyonel Mükemmellik öncelikli olarak geliştirme uygulamaları, gözlemlenebilirlik ve sürüm yönetimiyordamlarına odaklanır.

operasyonel mükemmellik tasarım ilkeleri iş yükünün operasyonel gereksinimleri için bu hedeflere ulaşmak için üst düzey bir tasarım stratejisi sağlar.

İş yükü tasarımı denetim listesi

Service Fabric ile ilgili gözlemlenebilirlik, test ve dağıtım süreçlerini tanımlamaya yönelik Operasyonel Mükemmellik için tasarım gözden geçirme denetim listesini temel alarak tasarım stratejinizi başlatın.

  • (Küme ve iş yükü) Kümeler, ilgili altyapı ve uygulamanın kendisi dahil olmak üzere Service Fabric bileşenlerinizi izleme ve uyarı platformunuzla tümleştirin. Daha fazla bilgi için bkz. İzleme en iyi yöntemleri.

  • (Küme ve iş yükü) Çözümünüzün durumunu sürekli izlemek için Service Fabric sistem durumu modelini kullanın. Bu araç, genel iş yükü sistem durumu modelinizi tamamlamalıdır.

  • (Küme ve iş yükü) İstemci sertifikalarının son kullanma tarihini izlemek için bir işlem oluşturun. Örneğin Key Vault'un bir özelliği, sertifikanın kullanım ömrünün belirli bir yüzdesi geçtiğinde bir e-posta gönderir.

  • (Küme ve iş yükü) Küme dağıtımlarınızı yönetmek için sürekli tümleştirme ve sürekli dağıtım (CI/CD) uygulamalarını kullanın. CI/CD işlem hatlarınızı yönetmek için Azure Pipelines veya Github Actions gibi amaca yönelik olarak oluşturulmuş bir araç kullanın. Bu araçlar, uygun kaynak denetimi stratejileriyle tüm ortamlardaki tüm iş yükü dağıtımlarını merkezi olarak yönetmenize yardımcı olur.

Yapılandırma önerileri

Recommendation Benefit
(İş Yükü) İş yüklerinizi izlemek için Application Insights'ı kullanın. Application Insights, canlı web uygulamaları için uygulama telemetrisini toplamanıza ve analiz etmenize olanak tanıyan kapsamlı uygulama performansı izlemesi sağlar. Bu uygulama, uygulamanızın sistem durumunu ve performans izlemesini geliştirir.
(Küme ve iş yükü) Küme ve kapsayıcı altyapısı olaylarını izlemek için Azure İzleyici'yi kullanın. Azure İzleyici, uygulamalarınızdan ve Azure altyapınızdan günlükleri ve ölçümleri toplamak ve analiz etmek için kullanabileceğiniz kapsamlı izleme ve tanılama özellikleri sağlar. Azure İzleyici, Azure platformuyla, Service Fabric dahil olmak üzere, iyi entegre olur.
(Küme) Sağlık modellemenizin bir parçası olarak uygun küme sağlık ilkelerini uygulayın. Bu ilkeler, hataların küme durumu açısından değerlendirilme biçimini özelleştirmenizi sağlar. Örneğin, küme hata olarak kabul edilmeden önce tolere edilen en yüksek iyi durumda olmayan düğüm yüzdesini ayarlayabilirsiniz.
(Küme) Sağlık modellemenizin bir parçası olarak, uygun uygulama ve hizmet türü sağlık politikalarını uygulayın. Uygulama durumu ilkesi, olayların nasıl değerlendirildiği ve uygulamalar ve alt bileşenleri için sistem durumu durumlarının nasıl toplandığı açıklanır. Service Fabric, bir sağlık raporu varsa veya alt bileşenlerinden biri uyarı veya hata durumundaysa bir varlığı sağlıksız olarak kabul eder.
(Küme ve iş yükü) Test stratejinizin bir parçası olarak çözümünüzde arızalar eklemek için Azure Chaos Studio kullanın. Çözümünüze kasıtlı olarak arızalar eklemek, potansiyel arıza noktalarını belirlemenize ve olay yanıtı önlemlerini uygulamanıza yardımcı olur.
(Küme ve iş yükü) CI/CD çözümünüz olarak Azure Pipelines'u kullanın. Azure Pipelines gibi bir CI/CD çözümü, dağıtımlarınızı verimli, tutarlı ve güvenli bir şekilde yönetmenize yardımcı olur. Azure Pipelines, Service Fabric dağıtımları için yerel desteğe sahiptir.

Performans Verimliliği

Performans Verimliliği, kapasiteyi yöneterek yük artış olduğunda bile kullanıcı deneyimini korumakla ilgilidir. Strateji kaynakları ölçeklendirmeyi, olası performans sorunlarını tanımlamayı ve iyileştirmeyi ve en yüksek performans için iyileştirmeyi içerir.

Performans Verimliliği tasarım ilkeleri beklenen kullanıma karşı bu kapasite hedeflerine ulaşmak için üst düzey bir tasarım stratejisi sağlar.

İş yükü tasarımı denetim listesi

Service Fabric için temel performans göstergelerini temel alan bir temel tanımlamaya yönelik Performans Verimliliği için tasarım gözden geçirme denetim listesini temel alarak tasarım stratejinizi başlatın.

  • (Küme) İş yükünüzün gerektirdiği performans iyileştirme ve geliştirme özelliklerinden yararlanın. Altındaki işlem platformu hakkında öneriler için Bakınız: Sanal Makineler hizmet kılavuzu.

  • (Küme) Kullanılmayan kapasite için gereksiz harcamalara neden olmadan performans gereksinimlerinizi karşılayan VM'leri ve disk boyutlarını dağıtın. Gelecekteki büyüme planlarınızı karşılamak için kolayca kapasite ekleyebildiğinizden emin olun.

  • (İş Yükü) Service Fabric'in desteklediği programlama modellerini anlayın. İş yükü gereksinimleriniz için en iyi modeli seçin. Her programlama modelinin benzersiz avantajları ve dezavantajları vardır ve belirli iş yükü gereksinimleriniz diğerlerinden daha iyi bir modelle uyumlu olabilir.

  • (İş Yükü) İş yükünüzü tasarlamak için yerleşik bulut mimarisi desenlerini kullanın. Service Fabric uygulama tasarımlarını tamamlayan desenler mikro hizmet, olay odaklı ve arka plan işleme mimarisi desenlerini içerir.

Yapılandırma önerileri

Recommendation Benefit
(Küme) Güvenlik ilkeleriniz açık kaynak yazılım işlemlerini ve yollarını dışlamanıza olanak sağlıyorsa, Windows VM'lerinizde çalışan Service Fabric işlemlerini Microsoft Defender Virüsten Koruma'dan hariç tutun. Bu yapılandırma, Microsoft Defender Virüsten Koruma'nın neden olduğu performans etkisini ve kaynak tüketimi yükünü azaltır.
(Küme) İkincil düğüm türü için isteğe bağlı düğüm eklemek veya azaltmak için kümeniz için otomatik ölçeklendirmeyi etkinleştirin. otomatik ölçeklendirme, iş yükünüz için hizmet veren düğüm sayısını izleyip iyileştirebildiğiniz için yönetim ek yükünü ve olası iş etkisini azaltır.
(Küme) Hızlandırılmış ağ kullanmayı göz önünde bulundurun. Hızlandırılmış ağ, ana bilgisayarı veri yolundan atlayan ve en zorlu ağ iş yükleri için gecikme süresini, değişim ve CPU kullanımını azaltan yüksek performanslı bir yol sağlar.
(Küme) Azure Disk Şifrelemesi yerine konakta şifreleme kullanmayı göz önünde bulundurun. Ana bilgisayarda şifreleme, Azure Depolama'daki VM verilerini şifreleyerek özel görüntüler de dahil olmak üzere tüm işletim sistemi türlerini ve görüntülerini destekler. Azure Disk Şifrelemesi bu özellikleri desteklemez.
(İş Yükü) İş yükünüz için en uygun Service Fabric programlama modellerini uygulayın. Uygun bir programlama modeli, durum yönetimi, eşzamanlılık ve mevcut kod tabanınızın yeniden kullanımı gibi iş yükü gereksinimlerini destekleyen yerleşik özelliklerden yararlanır. Dağıtım standartlarınızı korumak için bu standartlara uygun bir programlama modeli seçin.
(Küme ve iş yükü) İş gereksinimlerinizi karşılamak için ölçeklendirme uygulayın. İş yükünüz için doğru ölçeklendirme mekanizmasını bulun. Ölçeklendirme, çözümünüz için en fazla kaynak kullanımını sağlar.

Azure ilkeleri

Azure, Service Fabric ve bağımlılıklarıyla ilgili kapsamlı bir yerleşik ilke kümesi sağlar. Önceki önerilerden bazıları Azure İlkesi aracılığıyla denetlenebilir. Örneğin, şunları denetleyebilirsiniz:

  • Service Fabric kümeleri alanlar arası yedekli olacak şekilde yapılandırılır.
  • Service Fabric kümeleri, ClusterProtectionLevel özelliği EncryptAndSign olarak ayarlanmıştır.
  • Service Fabric kümeleri yalnızca istemci kimlik doğrulaması için Microsoft Entra Id kullanacak şekilde yapılandırılır.

Kapsamlı idare için Service Fabric için Azure İlkesi yerleşik tanımlarını ve kümelerin ve uygulamaların güvenliğini etkileyebilecek diğer ilkeleri gözden geçirin.

Azure Danışmanı önerileri

Azure Danışmanı, Azure dağıtımlarınızı iyileştirmek için en iyi yöntemleri izlemenize yardımcı olan kişiselleştirilmiş bir bulut danışmanıdır.

Daha fazla bilgi için bkz. Azure Danışmanı.

Örnek mimari

Temel önerileri gösteren temel mimari: Mikro hizmetler için kapsayıcı düzenleme.