Otonom-itici simülasyon ortamları için derleme blokları

Container Instances
Azure Active Directory
Sanal Ağ
Sanal Makineler
Pipelines

Otonom temeli (AD) değerlendirmek için, işlev mühendislerinin AD özelliklerine sahip araçlar davranışının benzetimini yapması gerekir. Aşağıdaki örnek yönlendiren senaryoyu göz önünde bulundurun:

Test aracı, 3 yollu otoyol üzerinde sağ kulvarda 80 mph 'de olarak çalışabilen. Aynı kulvarda ve 55 mph ' de aynı yönde bir kamyon 600 ft önde bir yol vardır. Ortadaki kulvarda yakın bir araç yok. Yol işaretçileri görünür, Güneş araç üzerine dikey ve yol kurutur.

Bu gibi bir senaryoyu kullanarak bir araç davranışının sınırlı simülasyonu Simülasyon çalıştırmasıolarak adlandırılır. Yukarıdaki senaryoda, sanal alıcının beklenen davranışı, yanlışlıkla ve herhangi bir trafik kuralını ihlal etmeden kamyonu rahatça iletmektir. Bir işlevin her yeni sürümü için bir simülasyonu çalıştırarak, AD işlevi mühendisleri yeni sürümün beklenen davranışı hala gösterip göstermediğini test eder.

Bir simülasyonu çalıştırmak için, AD işlev mühendisleri yaygın olarak bir yazılım uygulamaları kümesi kullanır. Bunlar, sanal test sürücüsü (VTD), saat bölüm testi (TPT), Avonics geliştirme sistemi 2G (ADS2) ve otomom veri ve Time-Triggered Framework (adtf) ile birlikte her biri, tek tek birbirleriyle iletişim kuran, belirli bir otonom itici pilot işlevi gibi belirli bir Bu yazılım araçları kümesinin ve bunlara ait yapılandırmalarının şirket içi ve/veya sanal makinelere (VM 'Ler) dağıtılması simülasyon ortamıolarak adlandırılır.

Çalıştırdığınız her simülasyon tarafından oluşturulan test sonuçlarının geçerliliğini sağlamak için, simülasyonunun ilk durumuna ayarlanmış olan yeni bir simülasyon ortamında başlatıldığına emin olmanız gerekir.

Her otonom tabanlı ekibin simülasyon ortamlarında benzersiz bir yapılandırma ile ayrı bir uygulama kümesine ihtiyacı vardır. Birçok ekibin aynı zamanda birden çok farklı benzetim ortamı olması gerekir. Örneğin, bir EDAR algılayıcı değerlendirmek için çok yüksek çözünürlüklü nesne simülasyonu gerekir, ancak başka bir sürücü, yol işaretleri veya diğer özellikler gerekmez. Her ortam benzersiz olsa da, kullanılan uygulamalarda önemli bir çakışma vardır. Örneğin, birçok ekip birden çok simülasyon ortamında VTD 'yi kullanır.

Yeniden kullanılabilir, kapsüllenmiş ve bağımsız olarak değerlendirilen birimlerden oluşan bir simülasyon ortamında benzetim çalıştırmak mümkündür. Bu birimler, Azure buluttaki simülasyon ortamlarının otomatik ve isteğe bağlı olarak oluşturulması için kullanacağınız "derleme blokları" olarak görev yapar. Bu benzetim ortamları, otomatik itici platformlar (ADP) olarak da adlandırılır.

aşağıda ele alınan örnek iş yükü, bir Azure DevOps işlem hattı aracılığıyla otomatik olarak ve değerlendirir benzetimli araç işlevini çalıştıran bir simülasyonu oluşturmayı açıklamaktadır. Bu işlem hattı, bir mühendis örnek işlevin kaynak kodunun veya benzetim ortamının yeni bir sürümünü her denetlediğinde çalışır.

Olası kullanım örnekleri

Bu iş yükü için tipik kullanımlar şunları içerir:

  • Testleri itici otomatikleştirme.

  • Oto, sektör sektöründe denetim sistemlerinin prototipini oluşturma, geliştirme, tümleştirme, test etme, doğrulama ve doğrulama.

  • Görselleştirme için araç verilerini kaydetme.

  • Oto ve sektör sektöründe karmaşık itici senaryolar benzetimi.

Mimari

Grafik Kullanıcı arabirimi içeren resim

Kullanıcı giriş katmanı

Geliştirici yalnızca bu katmanla etkileşime geçebilir. Geliştirici iş istasyonunu (kapsamımızda bir Azure VM) ve benzetim ortamını tanımlayan belirtim dosyasını içerir.

Orchestration katmanı

"Düzenleme" büyük bir anlamı vardır: sözcük tarafından tanımlanan bazı sorunlar büyük ölçüde çözüldü; diğerleri çok daha karmaşıktır. Örneğin, kapsayıcıları ve VM 'Leri oluşturma, izleme ve yok etme gibi "düzenleme" sorunları birçok araç tarafından çözülür; Azure API 'sinin kendisi için yeterli bir "Orchestrator" vardır! Ancak, "düzenleme" kara kutusunu daha küçük bileşenlere bölmek önemlidir.

  • Simülasyon API 'SI: Bu API bir belirtim dosyası alır ve düzenleme katmanıyla birlikte simülasyon ortamlarını ve benzetim çalıştırmalarını denetlemeye yönelik giriş noktasıdır.

  • Yorumlayıcı: Bu bileşen, benzetim dosyasını simülasyon Yöneticisi için bir mantıksal yapıya yorumlar.

  • Simülasyon Yöneticisi: Bu, mantıksal benzetim ortamı nesnesini, diğer bileşenler tarafından kullanılmak üzere istenen durumlara ve eylemlere dönüştüren durum makinedir. Bu, benzetimi oluşturma, yürütme ve kaldırma tetiklediği bileşendir. Ayrıca iç bağımlılıkları ve hata modlarını yönetir.

  • Zamanlayıcı: Bu bileşen, altyapı kaynaklarına yapı taşları atar ve bu kaynakları başlatır. Donanım ve erişim gereksinimleri, kullanılabilir kaynaklar ve kaynak limitleri için BT hesapları.

  • Ortam Yöneticisi: Bu bileşen temeldeki altyapıyı izler ve bir kapsayıcı konağın ne zaman gittiği gibi sorunlara yanıt verir.

  • Ağ Yöneticisi: Bu bileşen, benzetim ortamları için ağları ve yönlendirmeyi yönetir. Her ortam yalıtılmış bir ağ ortamında etkin olmalıdır ve yalıtılmış yapı taşları, etkileşim için gelen bağlantıları alıyor. Bu bileşen ayrıca bir benzetim içindeki (örneğin, iç DNS aracılığıyla) yapı taşlarını çözümlemek için de kullanılacaktır.

  • erişim yöneticisi: bu bileşen Azure Active Directory (Azure AD) kaynağından gelen yetkilendirme/kimlik doğrulamasını sistemin geri kalanına yansıtır.

  • Configuration Manager: Bu bileşen, altyapı ve simülasyon ortamlarının durumu için kalıcı bir depolama mekanizması işlevi görür.

  • Altyapı soyutlama: Bu, genel komutları kapsayıcılar ve VM 'Ler için belirli Azure API komutlarına çeviren bir Özet katmandır.

  • Depolama Manager: bu bileşen simülasyon ortamları için sağlama ve ekleme işlemini yönetir (örneğin, VM kök cihazları veya kapsayıcıya bağlı birimler).

  • Kaynak İzleyicisi: Bu bileşen, bir zaman serisi veritabanına altyapı düzeyinde kaynak kullanımını izler, bu da ADP 'nin çekirdek izlemeye dışarı aktarma içindir.

  • Log Manager: Bu bileşen, Kullanıcı incelemesi için yapı taşlarından günlükleri toplar. Ayrıca, günlükleri ADP Core günlüğe kaydetmeye dışarı aktarır.

Orchestration katmanı, bu örnek iş yükünün birincil odadır.

Simülasyon altyapısı katmanı

Bu katman, çalışan tüm simülasyon ortamlarını temsil eder.

  • Simülasyon ortamı: tanım dosyası ve parametreler tarafından tanımlanan yapı taşlarının birleşimi, diğer simülasyon ortamlarının ağ yalıtımında burada oluşturulur.

  • Yapı blok Sözleşmesi: tüm derleme bloklarının düzenleme katmanına çıkış, hata ve durum gönderme şeklini tanımlayan yazılı standart.

  • Derleme blok işlem hattı: Bu alan, yapı taşlarının oluşturulmasını ve depolanmasını yönetir.

  • Blok deposu derleniyor: Bu, kapsayıcı kayıt defteri ve/veya Azure görüntü Galerisi gibi yapı blok görüntüleri için depolama ve alma sistemidir.

  • Yapı blok fabrikası: bir bildirim temelli yapılandırma dilinde (örneğin, Chef veya Anlabilen) sabit, doğrulanabilir bileşen paketleri (örneğin, dpkg veya APT) kullanarak yapı blok görüntüleri oluşturan sürekli tümleştirme ve sürekli dağıtım (CI/CD) işlem hattı.

Depolama katmanı

Bu katman, simülasyonun sonuçlarını depolar ve daha açık bir şekilde depolar. Bu, birincil olarak mobil uygulama geliştirme platformu (MADP) Data Lake iş akışının sorumluluğundadır, ancak çıktınızın bu takım tarafından yönetilebilir olması gerekir.

  • Depolama ınterface: kullanıcıların simülasyon sonuç depolamayla çalışmasına izin veren arabirim. bu, ile kapalı konser ' de veya yukarıdaki Depolama Manager orchestration bileşeni tarafından bastırılabilecek şekilde çalışmaktadır.

  • Depolama: simülasyon sonuçlarını kaydetmek için kullanılan depolama mekanizması (örneğin, Azure Blob Depolama veya Azure Disk Depolama kaynakları).

Bileşenler

Azure sanal makineleri , fiziksel donanım satın alıp sürdürmenize gerek kalmadan size sanallaştırma esnekliği sağlayan isteğe bağlı, ölçeklenebilir bilgi işlem kaynakları sağlar.

Azure sanal ağ , Azure 'daki özel ağınız için temel yapı taşdır. Azure sanal ağ, Azure sanal makineleri gibi birçok Azure kaynağı türünü, internet ve şirket içi ağlarla güvenli bir şekilde iletişim kurmak için sağlar.

Azure Container Instances , Azure 'da bir kapsayıcı çalıştırmanın en hızlı ve en kolay yolunu, herhangi bir VM 'yi yönetmek zorunda kalmadan ve daha yüksek düzeyde bir hizmeti benimsemek zorunda kalmadan sunmaktadır.

Azure Container Registry , açık kaynaklı Docker kayıt defteri 2,0 ' i temel alan yönetilen, özel bir Docker kayıt defteri hizmetidir. Azure Container Registry 'yi mevcut kapsayıcı geliştirme ve dağıtım işlem hatlarınız ile kullanabilir veya Azure 'da kapsayıcı görüntüleri oluşturmak için Azure Container Registry görevleri kullanabilirsiniz. Kaynak kodu işleme ve temel görüntü güncelleştirmeleri gibi tetikleyicilerle istek üzerine derleyin veya derlemeleri tamamen otomatikleştirin.

Azure Pipelines , Azure DevOps Services bir parçasıdır ve otomatikleştirilmiş derlemeler, testler ve dağıtımlar çalıştırır. Jenkins gibi üçüncü taraf CI/CD çözümlerini de kullanabilirsiniz.

Azure Active Directory , kullanıcıların, hizmetlerin ve uygulamaların kimliğini doğrulayan bulut tabanlı kimlik ve erişim yönetimi hizmetidir.

Azure Depolama , dayanıklı, yüksek oranda kullanılabilir ve büyük ölçüde ölçeklenebilir bir bulut depolama çözümü sağlar. Nesne, dosya, disk, kuyruk ve tablo depolama özelliklerini içerir.

Azure izleyici , çeşitli şirket Içi ve Azure kaynaklarından izleme telemetrisi toplar. Bu hizmet, telemetrisi, maliyet ve performans için iyileştirilmiş bir günlük veri deposunda toplar ve depolar.

Alternatifler

Bu mimari, farklı araçları ve hizmetleri dağıtmak için VM 'Leri ve kapsayıcıları kullanır. Alternatif olarak, Azure Kubernetes Hizmetleri 'ni (AKS)de kullanabilirsiniz. AKS 'ler sunucusuz Kubernetes, tümleşik bir CI/CD deneyimi ve kurumsal düzeyde güvenlik ve idare sunar.

bu mimaride benzetim sonuçlarını kaydetmek için kullanılan depolama mekanizması, Azure Blob Depolama veya Azure Disk Depolama tabanlıdır. Daha büyük iş yükleri için alternatif olarak, verileri depolamak ve analiz etmek için Azure 'un büyük ölçekli verileri ve analiz çözümlerini de görebilirsiniz.

Ayrıca, altyapınızın performansını çözümlemek ve iyileştirmek ve sanal makinelerinize oturum açmadan ağ sorunlarını izlemek ve tanılamak için Azure izleyici 'yi kullanmayı göz önünde bulundurun.

Dikkat edilmesi gerekenler

Kullanılabilirlik ve dayanıklılık

Uygulamaları, planlı bakım olaylarına ve plansız kesintilere karşı korumaya yardımcı olan kullanılabilirlik kümeleri veya kullanılabilirlik alanları arasındasanal makineler dağıtımı yapmayı düşünün.

Kullanılabilirlik kümesi, Azure’un, uygulamanızın yedeklilik ve kullanılabilirlik sağlamak üzere nasıl oluşturulduğunu anlamasına olanak tanıyan bir mantıksal VM grubudur.

Kullanılabilirlik alanları, Azure bölgelerindeki sanal makineler, uygulamalar ve veri merkezi arızalarına karşı korumaya yardımcı olan benzersiz fiziksel konumlardır. Her bölge bir veya daha fazla veri merkezinden oluşur. Tek bir veri merkezinde fiziksel bir hata olsa bile, bölgelerdeki sanal makineler ve uygulamalar kullanılabilir durumda kalabilir.

Ölçeklenebilirlik

Azure VM 'lerini el ile veya Otomatik ölçeklendirme özelliklerinikullanarak ölçeklendirebilirsiniz.

Kapsayıcı dağıtımları için Azure Container Instances ve Azure Kubernetes Hizmetleri Ayrıca ölçeği el ile veya otomatik olarak genişletmek için de tasarlanmıştır.

Güvenlik

Diğer herhangi bir uygulama türünde olduğu gibi benzetim ortamı da hassas verileri işleyecek şekilde tasarlanabilir. Bu nedenle, kimlerin oturum açıp kullanbileceklerini kısıtlamalı ve ayrıca kullanıcının kimliğine veya rolüne göre hangi verilere erişilebileceğini de sınırlamalısınız. Kimlik ve erişim denetimi için Azure AD 'yi kullanın ve anahtarları ve gizli dizileri yönetmek için Azure Key Vault kullanın.

Güvenli çözümler tasarlamaya ilişkin genel yönergeler için bkz. Azure Güvenlik belgeleri.

DevOps

yeni simülasyon ortamlarını dağıtmak için, Azure DevOps Starter belgelerinde açıklandığı gibi Azure DevOps veya GitHub eylemleri gibi bir çözüm kullanarak cı/CD işlemlerini kullanmak en iyisidir.

Fiyatlandırma

Genel olarak, maliyetleri tahmin etmek için Azure Fiyatlandırma hesaplayıcısı ' nı kullanın. Ayrıca, bu işlemleri izleyerek sanal makinelerinizin kapasitesini baştan ayırarak, gerektiğinde Basitleştirilmiş yeniden boyutlandırmayla birlikte, maliyetlerinizi de iyileştirebilirsiniz. diğer konular, Microsoft Azure Well-Architected Framework 'ünmaliyet bölümünde açıklanmaktadır.

Sonraki adımlar

Azure Mimari Merkezi genel bakış makaleleri:

Ürün belgeleri:

Microsoft Learn öğrenme yolları: