Share via


Media Services ve İsteğe Bağlı Video (VOD) ile Yüksek Kullanılabilirlik

Media Services logosu v3


Uyarı

Azure Media Services 30 Haziran 2024'de kullanımdan kaldırılacak. Daha fazla bilgi için bkz. AMS Kullanımdan Kaldırma Kılavuzu.

VOD için yüksek kullanılabilirlik

Azure Mimarisi belgelerinde Geodes adlı yüksek kullanılabilirlik tasarım deseni vardır. Ölçeklenebilirlik ve dayanıklılık sağlamak için yinelenen kaynakların farklı coğrafi bölgelere nasıl dağıtıldığı açıklanır. Yedeklilik, sistem durumu izleme, yük dengeleme ve veri yedekleme ve kurtarma gibi birçok yüksek kullanılabilirlik tasarımını kapsayacak şekilde böyle bir mimari oluşturmak için Azure hizmetlerini kullanabilirsiniz. Bu mimarilerden biri, çözümde kullanılan her hizmetle ilgili ayrıntıların yanı sıra tek tek hizmetlerin VOD uygulamanız için yüksek kullanılabilirlik mimarisi oluşturmak için nasıl kullanılabileceğinin ayrıntılarıyla aşağıda açıklanmıştır.

Örnek

Media Services ve İsteğe Bağlı Video (VOD) ile yüksek kullanılabilirliği tanımak için kullanabileceğiniz bir örnek vardır. Ayrıca hizmetlerin bir VOD senaryosu için nasıl kullanıldığı hakkında daha ayrıntılı bilgi sağlanır. Örnek, üretimde geçerli biçiminde kullanılmak üzere tasarlanmamıştır. Örnek kodu ve benioku dosyasını, özellikle de bir üretim uygulamasıyla tümleştirmeden önce Hata Modları bölümünü dikkatle gözden geçirin. İsteğe Bağlı Video (VOD) için yüksek kullanılabilirlik üretim uygulaması da Content Delivery Network (CDN) stratejisini dikkatle gözden geçirmelidir. GitHub'da koda göz atın.

Hizmetlere genel bakış

Bu örnek mimaride kullanılan hizmetler şunlardır:

Simge Ad Açıklama
Bu, Media Services hesabı simgesidir. Media Services hesabı Açıklama:
Media Services hesabı, Azure'da medya içeriğini yönetmek, şifrelemek, kodlamak, analiz etmek ve akışa alma için başlangıç noktasıdır. Bir Azure Depolama hesabı kaynağıyla ilişkilendirilir. Hesabın ve ilişkili tüm depolamanın aynı Azure aboneliğinde olması gerekir.

VOD kullanımı:
Bunlar, video ve ses varlıklarınızı kodlamak ve sunmak için kullandığınız hizmetlerdir. Yüksek kullanılabilirlik için, her biri farklı bir bölgede olmak üzere en az iki Media Services hesabı ayarlayabilirsiniz. Azure Media Services hakkında daha fazla bilgi edinin.
Bu, Depolama hesabı simgesidir. Depolama hesabı Açıklama:
Azure depolama hesabı tüm Azure Depolama veri nesnelerinizi içerir: bloblar, dosyalar, kuyruklar, tablolar ve diskler. Verilere dünyanın her yerinden HTTP veya HTTPS üzerinden erişilebilir.

Her bölgedeki her Media Services hesabının aynı bölgede bir depolama hesabı olacaktır.

VOD kullanımı:
VOD işleme ve akış için giriş ve çıkış verilerini depolayabilirsiniz. Azure Depolama hakkında daha fazla bilgi edinin.
Bu, Azure Depolama Kuyruğu simgesidir. Azure Depolama Kuyruğu Açıklama:
Azure Kuyruk depolama, HTTP veya HTTPS kullanan kimlik doğrulaması yapılmış çağrılar aracılığıyla dünyanın her yerinden erişilebilen çok sayıda iletinin depolanması için bir hizmettir.

VOD kullanımı:
Kuyruklar, farklı modüller arasındaki etkinlikleri koordine etmek üzere ileti göndermek ve almak için kullanılabilir. Örnek bir Azure Depolama Kuyruğu kullanır ancak Azure, Service Bus ve Service Fabric Güvenilir Kuyrukları gibi gereksinimlerinize daha uygun olabilecek başka kuyruk türleri sağlar. Azure Kuyruğu hakkında daha fazla bilgi edinin.
Bu, Azure Cosmos DB simgesidir. Azure Cosmos DB Açıklama:
Azure Cosmos DB, Microsoft'un dünya çapındaki herhangi bir sayıda Azure bölgesinde aktarım hızını ve depolamayı bağımsız olarak ölçeklendiren küresel olarak dağıtılmış, çok modelli veritabanı hizmetidir.

VOD kullanımı:
Tablolar, iş çıktısı durum kayıtlarını depolamak ve her Media Services örneğinin sistem durumunu izlemek için kullanılabilir. Ayrıca Media Services API'sine yapılan her çağrının durumunu izleyebilir/kaydedebilirsiniz. Azure Cosmos DB hakkında daha fazla bilgi edinin.
Bu, Yönetilen kimlik simgesidir. Yönetilen Kimlik Açıklama:
Yönetilen kimlik, Azure AD'da otomatik olarak yönetilen bir kimlik sağlayan bir Azure AD özelliğidir. Kimlik bilgilerini kodda depolamadan Key Vault dahil olmak üzere Azure AD kimlik doğrulamasını destekleyen herhangi bir hizmette kimlik doğrulaması yapmak için kullanılabilir.

VOD kullanımı:
Azure İşlevleri, Key Vault bağlanmak üzere Media Services örneklerinde kimlik doğrulaması yapmak için Yönetilen Kimlik kullanabilir. Yönetilen Kimlik hakkında daha fazla bilgi edinin.
Bu, Key Vault simgesidir. Key Vault Açıklama:
Azure Key Vault belirteçleri, parolaları, sertifikaları, API anahtarlarını ve diğer gizli dizileri güvenli bir şekilde depolamak ve erişimi sıkı bir şekilde denetlemek için kullanılabilir. Anahtar Yönetimi çözümü olarak da kullanılabilir. Azure Key Vault, verilerinizi şifrelemek için kullanılan şifreleme anahtarlarını oluşturmayı ve denetlemeyi kolaylaştırır. Azure ve dahili bağlı kaynaklarla kullanılmak üzere genel ve özel Aktarım Katmanı Güvenliği/Güvenli Yuva Katmanı (TLS/SSL) sertifikalarını kolayca sağlayabilir, yönetebilir ve dağıtabilir. Gizli diziler ve anahtarlar yazılım veya FIPS 140-2 Düzey 2 doğrulanmış HSM'ler tarafından korunabilir.

VOD kullanımı:
Key Vault, uygulamanızın hizmet sorumlusuna yönelik erişim ilkelerini ayarlamak için kullanılabilir. Depolama hesaplarına bağlantı dizesi depolamak için kullanılabilir. Depolama hesaplarına ve cosmos db'ye bağlantı dizelerini depolamak için Key Vault kullanırız. Genel küme yapılandırmasını depolamak için Key Vault de kullanabilirsiniz. Her Media Service Örneği için abonelik kimliğini, kaynak grubu adını ve hesap adını depolayabilirsiniz. Diğer ayrıntılar için örnekte nasıl kullanıldığına bakın. Key Vault hakkında daha fazla bilgi edinin.
Bu, Azure İşlevleri simgesidir. Azure İşlevleri Açıklama:
Azure İşlevleri ile uygulama altyapısı konusunda endişelenmeden küçük kod parçalarını ("işlevler" olarak adlandırılır) çalıştırın. Azure İşlevleri hakkında daha fazla bilgi edinin.

VOD kullanımı:
Azure İşlevleri, VOD uygulamanızın modüllerini depolamak için kullanılabilir. VOD uygulaması modülleri şunları içerebilir:

İş Zamanlama Modülü
İş zamanlama modülü, bir Media Services kümesine (farklı bölgelerde iki veya daha fazla örnek) yeni işler göndermeye yöneliktir. Her Media Services örneğinin sistem durumunu izler ve sonraki iyi durumdaki örneğe yeni bir iş gönderir.

İş Durumu Modülü
İş durumu modülü, Azure Event Grid hizmetinden gelen iş çıktı durumu olaylarını dinliyor olabilir. Modüllerin geri kalanına göre Media Services API'lerine yapılan çağrı sayısını en aza indirmek için olayları olay deposuna depolar.

Örnek Durumu Modülü
Bu modül gönderilen işleri izler ve her Media Services örneğinin sistem durumunu belirler. Tamamlanmış işleri, başarısız işleri ve hiç bitmeyecek işleri izler.

Sağlama Modülü
Bu modül, işlenen varlıkları sağlar. Bazı Media Services örnekleri kullanılamasa bile varlıkların akışla aktarılabilmesini sağlamak için varlık verilerini tüm Media Services örneklerine kopyalar ve Azure Front Door hizmetini ayarlar. Ayrıca akış bulucuları da ayarlar.

İş Doğrulama Modülü
Bu modül gönderilen her işi izleyecek, başarısız işleri yeniden gönderecek ve bir iş başarıyla tamamlandıktan sonra iş verilerini temizleme işlemini gerçekleştirecek.
Bu, App Service simgesidir. App Service (ve plan) Açıklama:
Azure App Service, web uygulamalarını, REST API'leri ve mobil arka uçları barındırmaya yönelik HTTP tabanlı bir hizmettir. .NET, .NET Core, Java, Node.js, PHP veya Python'ı destekler. Uygulamalar hem Windows hem de Linux tabanlı ortamlarda çalışır ve ölçeklendirilir.

VOD kullanımı:
Her modül bir App Service tarafından barındırılacaktır. App Service hakkında daha fazla bilgi edinin.
Bu, Azure Front Door simgesidir. Azure Front Door Açıklama:
Azure Front Door, yüksek kullanılabilirlik için en iyi performansı ve hızlı küresel yük devretmeyi iyileştirerek web trafiğinin genel yönlendirmesini tanımlamak, yönetmek ve izlemek için kullanılır.

VOD kullanımı:
Azure Front Door, trafiği akış uç noktalarına yönlendirmek için kullanılabilir. Azure Front Door hakkında daha fazla bilgi edinin.
Bu, Azure Event Grid simgesidir. Azure Event Grid Açıklama:
Olay tabanlı mimariler için oluşturulan Event Grid, depolama blobları ve kaynak grupları gibi Azure hizmetlerinden gelen olaylar için yerleşik desteğe sahiptir. Ayrıca özel konu olayları için de destek içerir. Filtreler belirli olayları farklı uç noktalara, çok noktaya yayını birden çok uç noktaya yönlendirmek ve olayların güvenilir bir şekilde teslim edilmesi için kullanılabilir. Her bölgedeki birden çok hata etki alanına ve kullanılabilirlik alanlarına yerel olarak yayılarak kullanılabilirliği en üst düzeye çıkarır.

VOD kullanımı:
Event Grid, tüm uygulama olaylarını izlemek ve iş durumunu kalıcı hale getirmek için bunları depolamak için kullanılabilir. Azure Event Grid hakkında daha fazla bilgi edinin.
Bu, Application Insights simgesidir. Application Insights Açıklama:
Azure İzleyici'nin bir özelliği olan Application Insights, geliştiricilere ve DevOps uzmanlarına yönelik genişletilebilir bir Uygulama Performans Yönetimi (APM) hizmetidir. Canlı uygulamaları izlemek için kullanılır. Performans anomalilerini algılar ve sorunları tanılamak ve kullanıcıların bir uygulamayla ne yaptığını anlamak için analiz araçları içerir. Performansı ve kullanılabilirliği sürekli geliştirmenize yardımcı olmak amacıyla tasarlanmıştır.

VOD kullanımı:
Tüm günlükler Application Insights'a gönderilebilir. Başarılı bir şekilde oluşturulan iş iletilerini arayarak her işi hangi örneğin işlediğini görmek mümkün olabilir. Benzersiz tanımlayıcı ve örnek adı bilgileri de dahil olmak üzere gönderilen tüm iş meta verilerini içerebilir. Application Insights hakkında daha fazla bilgi edinin.

Mimari

Bu üst düzey diyagram, yüksek kullanılabilirlik ve medya hizmetlerini kullanmaya başlamanız için sağlanan örneğin mimarisini gösterir.

İsteğe Bağlı Video (VOD) Üst Düzey Mimari Diyagramı

En iyi yöntemler

Bölgeler

  • İki (veya daha fazla) Azure Media Services hesabı oluşturun. İki hesabın farklı bölgelerde olması gerekir. Daha fazla bilgi için bkz . Azure Media Services hizmetinin dağıtıldığı bölgeler.
  • Medyanızı işi göndermeyi planladığınız bölgeye yükleyin.
  • Daha sonra işi başka bir bölgeye yeniden göndermeniz gerekiyorsa, kaynak Varlık kapsayıcısından verileri alternatif bölgedeki bir Varlık kapsayıcısına kopyalamak için kullanabilir JobInputHttp veya kullanabilirsiniz Copy-Blob .

İzleme

  • Azure Event Grid aracılığıyla her hesaptaki iletilere JobStateChange abone olun.

    • Microsoft.Azure.EventGrid SDK'sını (Media Services olaylarını yerel olarak destekleyen) kullanın.
    • Event Grid olaylarını Azure İşlevleri aracılığıyla da kullanabilirsiniz.

    Daha fazla bilgi için:

    • Azure Event Grid iletilerin herhangi bir nedenle gecikmesi durumunda geri dönüş ekleme dahil olmak üzere Azure Event Grid ile bir işin nasıl izleneceğini gösteren Ses Analizi örneğine bakın.
  • İş oluşturduğunuzda:

    • Şu anda kullanılan hesaplar listesinden rastgele bir hesap seçin (bu liste normalde her iki hesabı da içerir, ancak sorun algılanırsa yalnızca bir hesap içerebilir). Liste boşsa, operatörün araştırabilmesi için bir uyarı oluşturun.
    • Her bir trafik işini ve kullanılan bölgeyi/hesabı izlemek için bir kayıt oluşturun.
  • İşleyiciniz JobStateChange bir işin zamanlanmış duruma ulaştığına dair bir bildirim aldığında, işin zamanlanmış duruma girdiği zamanı ve kullanılan bölgeyi/hesabı kaydedin.

  • İşleyiciniz JobStateChange bir işin işleme durumuna ulaştığına ilişkin bir bildirim aldığında, işin kaydını işleme olarak işaretleyin ve işleme durumuna girdiği zamanı kaydedin.

  • İşleyiciniz JobStateChange işin son duruma ulaştığına ilişkin bir bildirim aldığında (Tamamlandı/Hata Oluştu/İptal Edildi), işin kaydını uygun şekilde işaretleyin.

  • İşlerin kayıtlarına düzenli olarak bakan ayrı bir işlem yapın

    • Zamanlanmış durumda, belirli bir bölge için makul bir süre içinde işleme durumuna ilerlememiş işleriniz varsa, o bölgeyi o anda kullanılan hesaplar listenizden kaldırın. İş gereksinimlerinize bağlı olarak, bu işleri hemen iptal etmeye ve diğer bölgeye yeniden göndermeye karar vekleyebilirsiniz. Ya da onlara bir sonraki eyalete geçmeleri için biraz daha zaman tanıyabilirsiniz.
    • Hesap listesinden bir bölge kaldırıldıysa, listeye geri eklemeden önce kurtarma için bölgeyi izleyin. Bölgesel sistem durumu, bölgedeki mevcut işler (iptal edilmediyse ve yeniden gönderilmediyse), hesabı bir süre sonra listeye geri ekleyerek ve Azure Media Services'ı etkileyebilecek kesintilerle ilgili Azure iletişimlerini izleyen operatörler tarafından izlenebilir.

Yardım ve destek alma

Aşağıdaki yöntemlerden birini kullanarak Media Services ile iletişime geçebilir veya güncelleştirmelerimizi izleyebilirsiniz: