Hibrit uygulama tasarımında dikkat edilmesi gerekenler

Microsoft Azure tek tutarlı hibrit bulut. Geliştirme yatırımlarınızı yeniden kullanmanıza olanak sağlar ve veri merkeziniz içinde Azure'ın bir uzantısı olan küresel Azure' a, bağımsız Azure bulutlarına ve Azure Stack uygulamalarına olanak sağlar. Bulutlara yayılan uygulamalar hibrit uygulamalar olarak da adlandırılır.

Azure Uygulaması Mimarisi Kılavuzu ölçeklenebilir, esnek ve yüksek oranda kullanılabilir uygulamalar tasarlamaya için yapılandırılmış bir yaklaşım açıklar. Azure Uygulaması Mimarisi Kılavuzu'Azure Uygulaması konular, tek bir bulut için ve bulutlara yayılan uygulamalar için tasarlanmış uygulamalar için eşit olarak geçerlidir.

Bu makale, Azure Uygulaması Architecture Kılavuzu'Azure Uygulaması özellikle karma uygulamalar tasarlamaya odaklanan yazılım kalitesinin yapı yapılarını geliştirer. Ayrıca, karma uygulamalar yalnızca bir buluta veya bir şirket içi veri merkezine ait olmadığınız için bir yerleştirme sütunu ekleriz.

Hibrit senaryolar geliştirme için kullanılabilen kaynaklarla büyük ölçüde değişiklik gösterir ve coğrafya, güvenlik, internet erişimi ve diğer önemli noktalar gibi konuları da içerir. Bu kılavuzda dikkat edilecek noktalar numaralanamasa da, takip etmek için bazı önemli yönergeler ve en iyi yöntemler sağ olabilir. Karma uygulama mimarisini başarıyla tasarlamak, yapılandırmak, dağıtmak ve bakımını yapmak, doğal olarak tanınmayacak birçok tasarım konusu içerir.

Bu belge, karma uygulamalar uygulanırken ortaya çıkabilecek olası soruları toplamayı hedefler ve bu uygulamalarla çalışmak için dikkat edilmesi gerekenler (bu sütunlar) ve en iyi yöntemleri sağlar. Tasarım aşamasında bu soruları ele alan bu soruları üretimde neden olacak sorunlardan kaçınabilirsiniz.

Temelde, bunlar karma uygulama oluşturmadan önce düşünmemiz gereken sorulardır. Çalışmaya başlama için aşağıdaki adımları gerçekleştirin:

  • Uygulama bileşenlerini tanımlama ve değerlendirme.
  • Uygulama bileşenlerini sütunlara göre değerlendirin.

Uygulama bileşenlerini değerlendirme

Bir uygulamanın her bileşeni, daha büyük uygulama içinde kendi özel rolüne sahiptir ve tasarımla ilgili dikkat edilmesi gereken tüm noktalarla birlikte gözden geçir gerekir. Her bileşenin gereksinimleri ve özellikleri, uygulama mimarisinin belirlenmesine yardımcı olmak için bu noktalarla eşlemektedir.

Uygulama mimarinizi inceler ve nelerden oluşanları belirleyerek, uygulamanın bileşenlerini parçalara dönüştürebilirsiniz. Bileşenler ayrıca, uygulamanıza etkileşimde bulunan diğer uygulamaları da içerebilir. Bileşenleri tanım olarak, şu soruları sorarak amaçlanan hibrit işlemlerinizi özelliklerine göre değerlendirin:

  • Bileşenin amacı nedir?
  • Bileşenler arasındaki bağımlılıklar nedir?

Örneğin, bir uygulamanın iki bileşen olarak tanımlanmış bir ön uç ve arka uç olabilir. Karma bir senaryoda ön uç bir bulutta, arka uç ise diğer buluttadır. Uygulama, ön uç ile kullanıcı arasında ve aynı zamanda ön uç ile arka uç arasında iletişim kanalları sağlar.

Bir uygulama bileşeni birçok form ve senaryo tarafından tanımlanır. En önemli görev, bunları ve bunların bulut veya şirket içi konumunu belirlemektir.

Envantere dahil etmek için yaygın uygulama bileşenleri Tablo 1'de listelenir.

Tablo 1. Ortak uygulama bileşenleri

Bileşen Karma uygulama kılavuzu
İstemci bağlantıları Uygulamanız (herhangi bir cihazda) kullanıcılara tek giriş noktasından çeşitli yollarla ve aşağıdaki yollarla erişebilir:
- Kullanıcının uygulamayla çalışmak için bir istemci yüklemesini gerektiren bir istemci-sunucu modeli. Tarayıcıdan erişilen sunucu tabanlı bir uygulama.
- İstemci bağlantıları, bağlantı bozuk olduğunda bildirimler veya dolaşım ücretleri uygulanabilecek uyarılar içerebilir.
Kimlik Doğrulaması Uygulamaya bağlanan bir kullanıcı veya bir bileşenden diğerine bağlanan bir kullanıcı için kimlik doğrulaması gerekebilir.
API'ler Geliştiricilere API kümeleri ve sınıf kitaplıkları ile uygulamanıza program aracılığıyla erişim ve İnternet standartlarına dayalı bir bağlantı arabirimi sabilirsiniz. Api'leri kullanarak bir uygulamayı bağımsız çalışma mantıksal birimlerine de dönüştürebilirsiniz.
Hizmetler Bir uygulamanın özelliklerini sağlamak için kısa ve öz hizmetleri çalıştırabilirsiniz. Hizmet, uygulamanın üzerinde çalıştır olduğu altyapı olabilir.
Kuyruklar Kuyrukları kullanarak uygulama bileşenlerinizin yaşam döngülerinin ve durumlarının durumunu düzenleyebilirsiniz. Bu kuyruklar, abone olan taraflara mesajlaşma, bildirimler ve arabelleğe alma özellikleri sağlar.
Veri depolama Bir uygulama durumsuz veya durumlu olabilir. Durum bilgisi olan uygulamaların çok sayıda biçim ve birim tarafından karşılanması için veri depolaması gerekir.
Verileri önbelleğe alma Tasarımınıza uygun bir veri önbelleğe alma bileşeni, gecikme süresi sorunlarını stratejik olarak ele alma ve bulut seri aktarımlarını tetikleme konusunda rol oynayabilir.
Veri alımı Veriler, bir web formundaki kullanıcı tarafından gönderilen değerlerden sürekli yüksek hacimli veri akışına kadar birçok şekilde bir uygulamaya gönderebilirsiniz.
Veri işleme Veri işleme görevleriniz (raporlar, analizler, toplu dışarı aktarmalar ve veri dönüştürme gibi) kaynakta işlenebilir veya verilerin bir kopyası kullanılarak ayrı bir bileşene yüklenebilir.

Uygulama bileşenlerini sütunlar için değerlendirme

Her bileşen için, her bir sütun için özelliklerini değerlendirin. Her bileşeni tüm sütunlarla değerlendirirken, gözatmayabilirsiniz ve hibrit uygulamanın tasarımını etkileyen sorular sizin için bilinen bir durum olabilir. Bu noktalara göre hareket etmek, uygulamalarınızı iyileştirmeye değer katacaktır. Tablo 2, karma uygulamalarla ilgili olarak her bir sütuna ilişkin bir açıklama sağlar.

Tablo 2. Ayağı

Ayağı Açıklama
Yerleştirme Karma uygulamalarda bileşenlerin stratejik konumu.
Ölçeklenebilirlik Sistemin artan yükü idare edebilme özelliği.
Kullanılabilirlik Hibrit uygulamanın işlevsel ve çalışıyor olduğu sürenin oranı.
Dayanıklılık Karma bir uygulamanın kurtarılma özelliği.
Yönetilebilirlik Sistemi üretimde çalışır durumda tutan operasyon süreçleri.
Güvenlik Hibrit uygulamaları ve verileri tehditlere karşı koruma.

Yerleştirme

Karma bir uygulamanın, veri merkezi gibi bir yerleşim konuları vardır.

Yerleştirme, karma bir uygulamaya en iyi hizmeti ve en iyi şekilde hizmet etmek için bileşenleri konumlandırmanın önemli görevidir. Tanımı gereği, karma uygulamalar şirket içinde buluta ve farklı bulutlar arasında gibi konumlara yayma. Uygulamanın bileşenlerini bulutlara iki şekilde yerleyebilirsiniz:

  • Dikey hibrit uygulamalar
    Uygulama bileşenleri konumlar arasında dağıtılır. Her bileşenin yalnızca tek bir konumda yer alan birden çok örneği olabilir.

  • Yatay hibrit uygulamalar
    Uygulama bileşenleri konumlar arasında dağıtılır. Her bileşenin birden çok konuma yayılan birden çok örneği olabilir.

    Bazı bileşenler konumlarını bilirken diğerleri konum ve yerleşim hakkında bilgi sahibi değildir. Bu verim bir soyutlama katmanıyla elde edilebilir. Mikro hizmetler gibi modern bir uygulama çerçevesine sahip olan bu katman, bulutlar genelinde düğümlerde çalışan uygulama bileşenlerinin yerleşimi ile uygulamanın nasıl hizmet sun katedişini tanımlayabilir.

Yerleştirme denetim listesi

Gerekli konumları doğrulayın. Uygulamanın veya bileşenlerinin belirli bir bulutta çalışması veya belirli bir bulut için sertifikasyon gerektirmesi gerektiğinden emin olun. Bu, şirketinizin bağımsızlık gereksinimlerini veya yasalara göre dikte edilenleri içerebilir. Ayrıca, belirli bir konum veya yerel ayarı için şirket içi işlemlerin gerekli olup olmadığını da belirleme.

Bağlantı bağımlılıklarını tespit edin. Gerekli konumlar ve diğer faktörler, bileşenleriniz arasındaki bağlantı bağımlılıklarını dikte ediyor olabilir. Bileşenleri hazırlarken, aralarındaki iletişim için en uygun bağlantı ve güvenliği belirlersiniz. Seçenekler VPN,ExpressRoute ve KarmaBağlantılar'dır.

Platform özelliklerini değerlendirme. Her uygulama bileşeni için, uygulama bileşeni için gerekli kaynak sağlayıcısının bulutta kullanılabilir olup, bant genişliğinin beklenen aktarım hızı ve gecikme süresi gereksinimlerini karşılayabileceğine bakın.

Taşınabilirlik planı. Taşıma işlemlerini planlamak ve hizmet bağımlılıklarını önlemek için kapsayıcılar veya mikro hizmetler gibi modern uygulama çerçevelerini kullanın.

Veri egemenliği gereksinimlerini belirleme. Karma uygulamalar, yerel bir veri merkezi gibi veri yalıtımını birlikte kullanma için kullanılır. Bu gereksinimi yerine getirme başarısını iyileştirmek için kaynaklarınızı yerleştirmeyi gözden geçirme.

Gecikme süresini planla. Bulutlar arası işlemler, uygulama bileşenleri arasında fiziksel mesafeye neden olabilir. Gecikme sürelerini karşılamak için gereksinimleri tespit edin.

Trafik akışlarını denetleme. Genel bulutta ön uç tarafından erişilen kişisel bilgi verileri için en yüksek kullanımı ve uygun ve güvenli iletişimleri ele alın.

Ölçeklenebilirlik

Ölçeklenebilirlik, sistemin bir uygulama üzerindeki artan yükü işleyebilme becerisidir. Bu, uygulamanın boyutuna ve kapsamına ek olarak diğer faktörler ve güçler hedef kitle boyutunu etkileyene kadar zaman içinde değişebilir.

Bu yapının temel tartışmaları için bkz . Mimari mükemmelliğinin beş yapı yapıtlarında ölçeklenebilirlik.

Hibrit uygulamalar için yatay ölçeklendirme yaklaşımı, talebi karşılamak için daha fazla örnek eklemeye ve daha sessiz dönemlerde bunları devre dışı bırakmaya olanak sağlar.

Karma senaryolarda, bileşenler bulutlara yayılırken bileşenlerin ölçeğini genişletme ek olarak dikkate alınması gerekir. Uygulamanın bir kısmını ölçeklendirmek için başka bir bölüme ölçeklendirmek gerekli olabilir. Örneğin, istemci bağlantılarının sayısı artar ancak uygulamanın web hizmetlerinin ölçeği uygun şekilde artırılamasa, veritabanı üzerindeki yük uygulamayı doygunlukla doldurabilirsiniz.

Bazı uygulama bileşenleri doğrusal olarak ölçeği uzarken, diğerlerinin ölçeklendirme bağımlılıkları vardır ve bunlar hangi ölçüde ölçeklendirildikleri ile sınırlı olabilir. Örneğin, uygulama bileşenleri konumları için karma bağlantı sağlayan bir VPN tüneli, ölçeklendirilen bant genişliği ve gecikme süresiyle ilgili bir sınıra sahiptir. Bu gereksinimlerin karşı olduğundan emin olmak için uygulamanın bileşenleri nasıl ölçeklendirildi?

Ölçeklenebilirlik denetim listesi

Ölçeklendirme eşiklerini tespit. Uygulamanıza çeşitli bağımlılıkları işlemek için, farklı bulutlarda bulunan uygulama bileşenlerinin birbirinden bağımsız olarak ne ölçüde ölçekleyene kadar ölçeklendirebilir, ancak yine de uygulamayı çalıştırma gereksinimlerini karşılar. Karma uygulamaların genellikle bir özelliği işlemek için uygulamanın geri kalanıyla etkileşime geçme ve uygulamanın geri kalanını etkilemesi için uygulamanın belirli alanlarını ölçeklendirmesi gerekir. Örneğin, bir dizi ön uç örneğinin aşılırken arka uç ölçeklendirmesi gerekli olabilir.

Ölçek zamanlamalarını tanımlama. Çoğu uygulamanın yoğun dönemleri vardır, bu nedenle en iyi ölçeklendirmeyi koordine etmek için yoğun zaman çizelgelerini toplamanız gerekir.

Merkezi bir izleme sistemi kullanın. Platform izleme özellikleri otomatik ölçeklendirme sağlar, ancak karma uygulamaların sistem durumunu ve yükünü toplanmış merkezi bir izleme sistemine ihtiyacı vardır. Merkezi bir izleme sistemi, bir kaynağı bir konumda ölçeklendirmeyi ve başka bir konumdaki kaynağa bağlı olarak ölçeklendirmeyi başlatabilirsiniz. Buna ek olarak, merkezi bir izleme sistemi hangi bulutların otomatik ölçeklendirme kaynaklarını ve hangi bulutların olmadığını izleyebilir.

Otomatik ölçeklendirme özelliklerini (kullanılabilir olduğu gibi) geliştirin. Otomatik ölçeklendirme özellikleri mimarinizin bir parçası ise, bir uygulama bileşeninin ölçeğinin ne zaman artır, genişletil, aşağı veya in gerektiğini tanımlayan eşikler ayarlayarak otomatik ölçeklendirme gerçekleştirebilirsiniz. Otomatik ölçeklendirmeye örnek olarak, artan kapasiteyi işlemek için bir bulutta otomatik olarak ölçeklendirilen ancak farklı bulutlara yayılan uygulamanın diğer bağımlılıklarının da ölçeklendirilen bir istemci bağlantısı örneğidir. Bu bağımlı bileşenlerin otomatik ölçeklendirme özelliklerine sahip olmak gerekir.

Otomatik ölçeklendirme kullanılamıyorsa, merkezi izleme sistemi eşikleri tarafından tetiklenen el ile ölçeklendirmeye uyum sağlayacak betikleri ve diğer kaynakları uygulamayı göz önünde bulundurabilirsiniz.

Konuma göre beklenen yükü belirleme. İstemci isteklerinin iş kolu olan karma uygulamalar öncelikli olarak tek bir konuma bağlı olabilir. İstemci isteklerinin yükü eşiği aşarsa, gelen isteklerin yükünü dağıtmak için farklı bir konuma ek kaynaklar eklenebilir. İstemci bağlantılarının artan yükleri işleyeye sahip olduğundan emin olun ve ayrıca istemci bağlantılarının yükü işlemesi için otomatik yordamları saptayın.

Kullanılabilirlik

Kullanılabilirlik, sistemin işlevsel ve çalışıyor olduğu zamandır. Kullanılabilirlik, çalışma süresi yüzdesi olarak ölçülür. Uygulama hataları, altyapı sorunları ve sistem yükü kullanılabilirliği azaltır.

Bu yapının temel tartışmaları için mimari mükemmelliği'nin beş yapı yapı örneğinde Kullanılabilirlik'e bakın.

Kullanılabilirlik denetim listesi

Bağlantı için yedeklilik sağlama. Karma uygulamalar, uygulamanın yaydığı bulutlar arasında bağlantı gerektirir. Karma bağlantı için bir teknoloji seçeneğine sahipsiniz. Bu nedenle, birincil teknoloji seçiminize ek olarak, birincil teknolojinin başarısız olması için otomatik yük devretme özellikleriyle yedeklilik sağlamak için başka bir teknoloji kullanın.

Hata etki alanlarını sınıflandırma. Hataya karşı iyi uygulamalar birden çok hata etki alanı gerektirir. Hata etki alanları, şirket içinde tek bir sabit diskin başarısız olması, raf üstü anahtarın devre dışı olması veya tam veri merkezi kullanılamıyor olması gibi hata noktasını yalıtmanıza yardımcı olur. Karma uygulamada konum, hata etki alanı olarak sınıflandırılabilir. Daha fazla kullanılabilirlik gereksinimleriyle, tek bir hata etki alanının nasıl sınıflandırılmış olması gerektiğini değerlendirmeye o kadar çok ihtiyaç vardır.

Yükseltme etki alanlarını sınıflandırma. Yükseltme etki alanları, uygulama bileşenlerinin örneklerinin kullanılabilir olduğundan emin olmak için kullanılırken, aynı bileşenin diğer örneklerine güncelleştirmeler veya özellik yükseltmeleri ile hizmet sunulmaktadır. Hata etki alanlarında olduğu gibi, yükseltme etki alanları konumlar arasında yerleştirmelerine göre sınıflandırılabilir. Bir uygulama bileşeninin başka bir konuma yükseltilmeden önce bir konumda yükseltilebilir olup olmadığını veya başka etki alanı yapılandırmalarının gerekli olup olmadığını belirlemeniz gerekir. Tek bir konumun birden çok yükseltme etki alanı olabilir.

Örnekleri ve kullanılabilirliği izleme. Yüksek oranda kullanılabilir uygulama bileşenleri, yük dengeleme ve zaman uyumlu veri çoğaltma aracılığıyla kullanılabilir. Hizmet kesintiye uğramadan önce kaç örneğin çevrimdışı olacağını belirlemeniz gerekir.

Kendi kendini iyileştirin. Bir sorun uygulama kullanılabilirliği kesintisine neden oluyorsa, bir izleme sistemi tarafından yapılan bir algılama, başarısız örneği boşaltma ve yeniden uygulama gibi uygulama için kendi kendini düzeltme etkinlikleri başlatabiliyor. Bunun için büyük olasılıkla karma Sürekli Tümleştirme ve Sürekli Teslim (CI/CD) işlem hattıyla tümleştirilmiş merkezi bir izleme çözümü gerekir. Uygulama, bir uygulama bileşeninin yeniden dedployment gerektirebilirsiniz sorunları belirlemek için bir izleme sistemi ile tümleşiktir. İzleme sistemi, uygulama bileşenini ve potansiyel olarak diğer bağımlı bileşenleri aynı veya başka konumlarda yeniden ya da başka bir konumda yeniden olmak için karma CI/CD'yi tetikler.

Hizmet düzeyi sözleşmelerini (SLA) koruma. Kullanılabilirlik, müşterilerinizle olan hizmet ve uygulamalarla bağlantınızı sürdürmek için yapılan sözleşmeler için kritik öneme sahiptir. Hibrit uygulamanıza bağlı olan her konumda kendi SLA'sı olabilir. Bu farklı SLA'lar, hibrit uygulamanıza genel SLA'yı etkileyebilir.

Dayanıklılık

Resiliency, karma bir uygulamanın ve sistemin hatalardan kurtarılabilme ve çalışmaya devam etme becerisidir. Bu durumda, bir hata oluştuğunda uygulamanın tamamen işlevsel bir durumuna geri dönmesi, bu durumdan sonra bu durumun devam eden bir durumla karşı karşıya olduğunu gösterir. Yedekleme, çoğaltma ve olağanüstü durum kurtarma gibi çözümlere yönelik resilians stratejileri vardır.

Bu yapının temel tartışmaları için mimari mükemmelliği'nin beş yapı yapı örneğinde yer alan Resiliency (Resiliency ) belgesine bakın.

Dayanıklılık denetim listesi

Olağanüstü durum kurtarma bağımlılıklarını ortaya çıkarma. Bir bulutta olağanüstü durum kurtarma, başka bir buluttaki uygulama bileşenlerinde değişiklik gerektirir. Bir buluttaki bir veya birden çok bileşen aynı bulutta veya başka bir buluttaki başka bir konuma başarısız olursa bağımlı bileşenlerin bu değişikliklerden haberdar olması gerekir. Buna bağlantı bağımlılıkları da dahildir. Resiliency, her bulut için tamamen test edilmiş bir uygulama kurtarma planı gerektirir.

Kurtarma akışı kurma. Etkili bir kurtarma akışı tasarımı, uygulama bileşenlerini arabelleklere, yeniden denemelere, başarısız veri aktarımını yeniden denemeye ve gerekirse farklı bir hizmete veya iş akışına uyum sağlayacak şekilde değerlendirdi. Hangi yedekleme mekanizmasını kullanabileceğinizi, geri yükleme yordamının neleri içerdiğini ve ne sıklıkta test edildiklerini belirlemeniz gerekir. Artımlı ve tam yedeklemelerin sıklığını da belirlemeniz gerekir.

Kısmi kurtarmaları test etmek. Uygulamanın bir bölümü için kısmi kurtarma, kullanıcılara kullanılamayan tüm kullanıcılara güvence sağlar. Planın bu bölümü, kısmi geri yüklemenin, yedekleme öncesinde uygulamayı normal bir şekilde kapatmak için uygulamayla etkileşimde bulunan bir yedekleme ve geri yükleme hizmeti gibi herhangi bir yan etkiye sahip olmadığını garantilemektedir.

Olağanüstü durum kurtarma aracılarını belirleme ve sorumluluğu atama. Kurtarma planı, kimlerin ve hangi rollerin yedekleme ve kurtarma eylemleri başlatanın yanı sıra nelerin yedeklene ve geri yüklenebilir olduğunu açıklamalı.

Kendi kendini iyileştirme eşiklerini olağanüstü durum kurtarma ile karşılaştırın. Otomatik Kurtarma başlatma için bir uygulamanın kendi kendini onaran yeteneklerini ve bir uygulamanın kendi kendini onaramasının başarısız veya başarılı olarak kabul edilmesi için gereken süreyi belirleme. Her bulutun eşiklerini belirleme.

Dayanıklılık özelliklerinin kullanılabilirliğini doğrulayın. Her konum için dayanıklılık özelliklerinin ve özelliklerinin kullanılabilirliğini belirleme. Bir konum gerekli özellikleri sağlamıyorsa, bu konumu dayanıklılık özelliklerini sağlayan merkezi bir hizmetle tümleştirmeyi düşünün.

Altzamanları belirleme. Uygulamanın tamamı ve uygulama bileşenleri gibi bakım nedeniyle beklenen kapalı kalma süresini belirleme.

Belge sorunlarını giderme yordamları. Kaynakları ve uygulama bileşenlerini yeniden dağıtmaya ilişkin sorun giderme yordamlarını tanımlayın.

Yönetilebilirlik

Karma uygulamalarınızı yönetmenin önemli noktaları, mimarinizi tasarlarken kritik öneme sahiptir. İyi yönetilen bir karma uygulama, ortak bir geliştirme ardışık düzeninde tutarlı uygulama kodu tümleştirmesini sağlayan kod olarak bir altyapı sağlar. Altyapıda yapılan değişikliklerin tutarlı sistem genelinde ve bireysel testlerini uygulayarak, değişiklikler testleri geçirirseniz, bunlar kaynak kodla birleştirilmelerine izin vererek, tümleşik bir dağıtım sağlayabilirsiniz.

bu pilde temel tartışmak için, mimarinin üstün olan beş paragraf DevOps bölümüne bakın.

Yönetilebilirlik denetim listesi

İzlemeyi uygulayın. Bulut genelinde yayılan, sistem durumunun ve performansının toplu bir görünümünü sağlamak için bir merkezi izleme sistemi kullanın. Bu sistem, hem uygulama bileşenlerini hem de ilgili platform yeteneklerini izlemeyi içerir.

Uygulamanın izlenmesini gerektiren parçalarını saptayın.

Koordinat ilkeleri. Bir karma uygulamanın yaydığı her konum, izin verilen kaynak türlerini, adlandırma kurallarını, etiketleri ve diğer ölçütleri kapsayan kendi ilkesine sahip olabilir.

Rolleri tanımlayın ve kullanın. Bir veritabanı yöneticisi olarak, uygulama kaynaklarına erişmesi gereken farklı kişiler (bir uygulama sahibi, bir veritabanı yöneticisi ve son kullanıcı gibi) için gerekli izinleri belirlemeniz gerekir. Bu izinlerin kaynaklar üzerinde ve uygulama içinde yapılandırılması gerekir. Rol tabanlı erişim denetimi (RBAC) sistemi, uygulama kaynakları üzerinde bu izinleri ayarlamanıza olanak sağlar. Bu erişim hakları, tüm kaynaklar tek bir bulutta dağıtıldığında, ancak kaynaklar bulutlara yayıldığında daha fazla dikkat gerektirse de zorlayıcı bir işlem gerektirir. Bir bulutta ayarlanan kaynaklarla ilgili izinler, başka bir bulutta ayarlanan kaynaklar için uygulanmaz.

CI/CD işlem hatlarını kullanın. Sürekli tümleştirme ve sürekli geliştirme (CI/CD) işlem hattı, bulutlar arasında yayılan uygulamaları yazma ve dağıtmaya yönelik tutarlı bir işlem sağlayabilir ve altyapı ve uygulamalarına yönelik kalite güvencesi sağlar. Bu işlem hattı, altyapı ve uygulamanın bir bulutta test yapılmasını ve başka bir buluta dağıtılmasını sağlar. İşlem hattı, karma uygulamanızın belirli bileşenlerini tek bir buluta ve diğer bileşenlere, karma uygulama dağıtımı için temel oluşturacak şekilde dağıtmanıza olanak tanır. Bir CI/CD sistemi, yükleme sırasında, veritabanı için bir bağlantı dizesi gerektiren Web uygulaması gibi bağımlılıkları işlemek için kritik öneme sahiptir.

Yaşam döngüsünü yönetin. Bir karma uygulamanın kaynakları konumlara yayılabildiğinden, her bir konumun yaşam döngüsü yönetim yeteneğinin tek bir yaşam döngüsü yönetim biriminde toplanması gerekir. Nasıl oluşturulduğunu, güncelleştirileceğini ve silindiğini göz önünde bulundurun.

Sorun giderme stratejilerini inceleyin. Karma uygulama sorunlarını giderme, tek bir bulutta çalışan aynı uygulamadan daha fazla uygulama bileşeni içerir. Bulutlar arasındaki bağlantının yanı sıra, uygulama bir yerine iki platformda çalışmaktadır. Karma uygulamalardaki sorunları gidermeye yönelik önemli bir görev, uygulama bileşenlerinin toplu sistem durumunu ve performans izlemesini incelemektir.

Güvenlik

Güvenlik, herhangi bir bulut uygulaması için başlıca önemli noktalara biridir ve karma bulut uygulamaları için daha da kritik hale gelir.

Bu pilde temel tartışmak için, mimaride üstün olan beş paragraf üzerinde güvenlik bölümüne bakın.

Güvenlik denetim listesi

İhlalin olduğunu varsayın. Uygulamanın bir bölümü tehlikeye atılırsa, yalnızca aynı konumda değil, ancak konumlar arasında değil, ihlalin yayılmasını en aza indirmek için çözüm olduğundan emin olun.

İzin verilen ağ erişimini izleyin. Uygulamanın yalnızca belirli bir alt ağdan erişmesi gibi ağ erişim ilkelerini belirleme ve yalnızca uygulamanın düzgün çalışması için gereken bileşenler arasındaki en düşük bağlantı noktalarına ve protokollere izin verme.

Güçlü kimlik doğrulaması yapın. Güçlü bir kimlik doğrulama düzeni, uygulamanızın güvenliği için önemlidir. Çoklu oturum açma özellikleri sağlayan ve şu şemalarından birini veya birkaçını kullanan bir federal kimlik sağlayıcısı kullanmayı düşünün: Kullanıcı adı ve parola oturum açma, ortak ve özel anahtarlar, iki öğeli veya Multi-Factor Authentication ve güvenilen güvenlik grupları. Sertifika türlerine ve gereksinimlerine ek olarak, uygulama kimlik doğrulaması için hassas verileri ve diğer gizli dizileri depolamak için uygun kaynakları belirleme.

Şifrelemeyi kullanın. Uygulamanın, veri depolama veya istemci iletişimi ve erişim gibi hangi alanlarda şifrelemeyi kullanacağınızı belirler.

Güvenli kanallar kullanın. Bulutlar genelinde güvenli bir kanal, güvenlik ve kimlik doğrulaması denetimleri, gerçek zamanlı koruma, karantina ve bulutlar arasında diğer hizmetler sağlamak için önemlidir.

Rolleri tanımlayın ve kullanın. Bulut genelinde kaynak yapılandırmalarına ve tek kimlik erişimine yönelik rolleri uygulayın. Uygulama ve platform kaynakları için rol tabanlı erişim denetimi (RBAC) gereksinimlerini saptayın.

Sisteminizi denetleyin. Sistem izleme, hem uygulama bileşenlerinden hem de ilgili bulut platformu işlemlerinden verileri günlüğe kaydedebilir ve toplayabilir.

Özet

Bu makalede, karma uygulamalarınızı yazma ve tasarlama sırasında göz önünde bulundurmanız gereken öğelerin bir denetim listesi sunulmaktadır. Uygulamanızı dağıtmadan önce bu şekilde bu gibi bir şekilde gözden geçirmek, üretim kesintileri ' nda bu sorulara çalışmanızı ve tasarımınızı yeniden ziyaret etmeniz gerektiğini önler.

Bu, önceden zaman alan bir görev gibi görünebilir, ancak uygulamanızı bu şekilde tasarlar temelinde tasarlarsanız yatırım getirisi ile kolayca erişebilirsiniz.

Sonraki adımlar

Daha fazla bilgi için aşağıdaki kaynaklara bakın: