Aracılığıyla paylaş


Mesh Bulut Betik altyapısı ve yönetimi

Genel bakış

Bu makalede, Cloud Scripting projenizi derleyip yayımladığınızda Azure Aboneliğinize dağıtılan hizmetler de dahil olmak üzere Mesh Clouding altyapısının ve yönetiminin çeşitli yönleri hakkında bilgi edineceksiniz.

Dağıtılan kaynaklar

Mesh Bulut Betiği,'nin oluşur. Bulutta çalışan NET tabanlı uygulamalar. Müşterinin Azure Aboneliğine dağıtılan Mesh Bulut Betiği bulut altyapısı aşağıdaki Azure kaynaklarını içerir:

  1. App Service planı: Web uygulamalarının çalışabileceği bir işlem kümesini temsil eder. Ayrıca bir veya daha fazla farklı web uygulaması çalıştırabilir.

  2. Azure VNet: Bu, app service örneklerinin dağıtılacağı ve birbirleriyle iletişim kurmalarına izin veren sanal ağ kaynağıdır.

  3. Azure Web App Örneği: Belirli bir VM üzerinde çalışan web uygulamasının bir örneğini temsil eder.

  4. Azure Depolama hesabı: Yayımlanan içeriği ve Azure web uygulaması örnekleri hakkındaki bilgileri tutar. İki bileşene ayrılmıştır:

    1. Mesh Bulut Betik Hizmeti Blob Depolama: Mesh Yükleyicisi tarafından karşıya yüklenen Mesh Bulut Betik Hizmeti blobunu tutar.
    2. Orleans Üyelik Tablosu: Orleans Silo örneklerinin canlılığı hakkında bilgi sağlar.
  5. Log Analytics Çalışma Alanı: App Service üzerinde çalışan Mesh Bulut Betik Hizmeti'nden yayılan günlükleri tutar.

  6. Application Insights: Uygulama performansı izleme (APM) özellikleri sağlar. APM araçları, uygulamaları geliştirmeden teste ve üretime kadar izlemek için kullanışlıdır.

App Service Planı

App Service planı, bir web uygulamasının çalışmasını sağlayan bir dizi işlem kaynağı tanımlar.

Belirli bir bölgede (örneğin, Batı Avrupa) bir App Service planı oluşturduğunuzda, söz konusu bölgede söz konusu plan için bir dizi işlem kaynağı oluşturulur. Bu App Service planına eklediğiniz uygulamalar, App Service planınız tarafından tanımlanan bu işlem kaynakları üzerinde çalıştırılır. Her App Service planı şunları tanımlar:

  • İşletim Sistemi (Windows, Linux)
  • Bölge (Batı ABD, Doğu ABD gibi)
  • VM örneklerinin sayısı
  • VM örneklerinin boyutu (Küçük, Orta, Büyük)
  • Fiyatlandırma katmanı (Ücretsiz, Paylaşılan, Temel, Standart, Premium, PremiumV2, PremiumV3, Yalıtılmış, YalıtılmışV2)

Daha fazla bilgi için App Service Planı Belgeleri'ne bakın.

App Service Planı için mesh araç seti varsayılan kaynak ayarları

  • SKU Adı: P1v2
  • SKU Katmanı: PremiumV2
  • SKU Kapasitesi: 1
  • Tür: Linux
  • Ayrılmış: True

Mesh Bulut Betik Hizmetleri bağlamında App Service planı işlem bileşenidir. Otomatik olarak ölçeklendirilebilir ve farklı örneklerin birbirleriyle nasıl iletişim kurabileceğini (ağ iletişimi) işleyebilir. Mesh Bulut Betik Hizmetleri'ni çalıştıran ve yöneten uygulama olan CloudHost şu anda Docker görüntüsü olarak sunulmaktadır ve bu nedenle Linux tabanlı bir plan kullanıyoruz. Premium planlar, üretim iş yükleri için daha uygundur.

Varsayılanlar hakkında daha fazla bilgi için App Service planı kaynağının Bicep & ARM şablon başvurusuna bakın.

App Service

Azure Uygulaması Hizmeti web uygulamalarını, REST API'leri ve mobil arka uçları barındırmaya yönelik HTTP tabanlı bir hizmettir. App Service, Microsoft Azure'ın güvenlik, yük dengeleme, otomatik ölçeklendirme ve otomatik yönetim gibi gücünü uygulamanıza ekler. App Service ile kullandığınız Azure işlem kaynakları için ödeme yaparsınız. Kullandığınız işlem kaynakları, uygulamalarınızı çalıştırdığınız App Service planı tarafından belirlenir.

Daha fazla bilgi için App Service Belgeleri'ne bakın.

Mesh araç seti varsayılan kaynak ayarları - App Service

  • httpsOnly: True
  • alwaysOn: True
  • vnetPrivatePorts Sayısı: 2
  • vnetRouteAllEnabled: True
  • vnetName: Varsayılan Sanal Ağ Adı

Varsayılanlar hakkında daha fazla bilgi için App Service Planı kaynağı için Bicep & ARM şablon başvurusuna bakın.

Sanal Ağ

Azure Sanal Ağ, Azure'daki özel ağınız için temel yapı taşıdır. Sanal ağ, Azure Sanal Makineler (VM) gibi birçok azure kaynağının birbiriyle, İnternet'le ve şirket içi ağlarla güvenli bir şekilde iletişim kurmasını sağlar. Sanal ağ, kendi veri merkezinizde çalıştıracağınız geleneksel bir ağa benzer. Azure Sanal Ağ, Azure altyapısının ölçek, kullanılabilirlik ve yalıtım gibi ek avantajlarını da beraberinde getirir.

Daha fazla bilgi için Sanal Ağ Belgeleri'ne bakın.

Mesh araç seti varsayılan kaynak ayarları - Sanal Ağ

  • AddressSpace addressPrefixes: 10.0.0.0/16
  • Alt ağ adresiÖnek: 10.0.0.0/24
  • Alt Ağ Temsilcilerinin adı: temsilci seçme
  • Alt Ağ Temsilcileri serviceName: Microsoft.Web/serverFarms

Varsayılanlar hakkında daha fazla bilgi için Sanal Ağ kaynağı için Bicep & ARM şablonu başvurusuna bakın.

Depolama Hesabı

Azure depolama hesabı tüm Azure Depolama veri nesnelerinizi içerir: bloblar, dosyalar, kuyruklar ve tablolar. Depolama hesabı, Azure Depolama verileriniz için dünyanın her yerinden HTTP veya HTTPS üzerinden erişilebilen benzersiz bir ad alanı sağlar. Depolama hesabınızdaki veriler dayanıklı ve yüksek oranda kullanılabilir, güvenli ve yüksek düzeyde ölçeklenebilir.

Daha fazla bilgi için Depolama Hesabı Belgeleri'ne bakın.

Mesh araç seti varsayılan kaynak ayarları - Depolama Hesabı

  • SKU Adı: Standard_LRS
  • Tür: StorageV2

Varsayılanlar hakkında daha fazla bilgi için Depolama Hesabı kaynağı için Bicep & ARM şablonu başvurusuna bakın.

Log Analytics Çalışma Alanı

Log Analytics çalışma alanı, Azure İzleyici'den ve Microsoft Sentinel ve Bulut için Microsoft Defender gibi diğer Azure hizmetlerinden gelen günlük verileri için benzersiz bir ortamdır. Azure portalında, Azure İzleyici Günlükleri deposundaki verilere karşı günlük sorgularını düzenlemek ve çalıştırmak için kullanılan bir araçtır.

Daha fazla bilgi için Log Analytics Çalışma Alanı Belgeleri'ne bakın.

Mesh araç seti varsayılan kaynak ayarları - Log Analytics Çalışma Alanı

  • forceCmkForQuery: false
  • retentionInDays: 30
  • SKU adı: PerGB2018
  • dailyQuotaGb: 2 GB

Varsayılanlar hakkında daha fazla bilgi için Çalışma Alanı kaynağının Bicep & ARM şablonu başvurusuna bakın.

Application Insights

Application Insights, Azure İzleyici'nin bir uzantısıdır ve uygulama performansı izleme (APM) özellikleri sağlar. APM araçları, uygulamaları geliştirmeden teste ve üretime kadar aşağıdaki yollarla izlemek için kullanışlıdır:

Bir uygulamanın nasıl çalıştığını proaktif olarak anlayın. Bir olayın nedenini belirlemek için uygulama yürütme verilerini yeniden gözden geçirin. Uygulama etkinliklerini ve sistem durumunu açıklayan ölçümleri ve uygulama telemetri verilerini toplamanın yanı sıra, uygulama izleme günlüğü verilerini toplamak ve depolamak için Application Insights'ı kullanabilirsiniz.

Daha fazla bilgi için Application Insights Belgeleri'ne bakın.

Mesh araç seti varsayılan kaynak ayarları - Application Insights

  • Tür: web
  • Request_Source: rest
  • WorkspaceResourceId: Varsayılan Log Analytics Çalışma Alanı Kimliği.

Varsayılanlar hakkında daha fazla bilgi için Sanal Ağ kaynağı için Bicep & ARM şablonu başvurusuna bakın.

Mesh Bulut Betik Hizmetleri altyapı diyagramı

Mesh Bulut Betik hizmetleri altyapısını gösteren diyagram

Her bileşen üzerinden trafik akışları

İstemci <-> AppService Örnekleri: İstemci istekleri/yanıtları (bağlanma istekleri, bulut betiği bildirimleri ve daha fazlası).

App Service Örnekleri: Canlılığı belirlemek için TCP ping iletileri.

App Service Örnekleri <-> LogAnalytics/AppInsights: Uygulama Telemetrisi (uygulama günlükleri).

App Service Örnekleri <-> Üyelik Tablosu: Her app service örneği hakkındaki canlılık bilgileri.

App Service Örneği <-> Blob Depolama: Bulutta çalışan bulut betiklerinin zip'i.

Kaynak sağlayıcısı kayıtları

Kaydedilecek hizmetler şunlardır:

  1. Microsoft.Web
  2. Microsoft.Storage
  3. Microsoft.Network
  4. Microsoft.Insights
  5. Microsoft.OperationalInsights

Notlar

  • Hatalarla ilgili yardıma ihtiyacınız varsa bkz . Kaynak sağlayıcısı kayıt hataları.

  • Azure belgelerinde açıklandığı gibi, hizmetleri kaydetme işlemi abonelik düzeyinde yapılır. Başka bir deyişle, hizmetleri farklı kaynak grupları için kaydetmeye gerek yoktur.

Mesh Bulut Betik Hizmeti dağıtımı için erişim denetimi

  1. Geliştiricilerin dağıtım için kullanılabilecek bir e-posta hesabı olmalıdır. Bu yeni veya önceden var olan bir hesap olabilir.

  2. Erişim denetimini bir Azure Güvenlik Grubu aracılığıyla yönetiyorsanız, bu grubu oluşturun (örneğin, "Mesh Bulut Betik Hizmetleri Geliştiricileri"). Microsoft 365 grup türleriyle karşılaştırıldığında Azure Güvenlik Grubu hakkında daha fazla bilgi için bkz . Gruplar ve grup üyeliği hakkında bilgi edinin.

  3. Geliştiricilerin Azure aboneliğinize nasıl erişmesini istediğinize karar verin. Bu, geliştiricinin dizinin yerel bir üyesi mi yoksa konuk kullanıcı mı olduğuna göre belirlenir.

    1. Erişim denetimlerini kolayca yönetmek istiyorsanız yukarıdaki 2. adımda oluşturduğunuz Azure Güvenlik Grubuna yerel üyeler ekleyebilirsiniz.
    2. Konuk kullanıcıları Azure aboneliğinize ekleyebilir veya Azure Güvenlik Grubu'na ekleyebilirsiniz (yukarıdaki 2. adıma bakın).

    Konuk kullanıcılar hakkında daha fazla bilgi için bkz . Azure portalında B2B işbirliği kullanıcıları ekleme.

Erişim denetimi önerilerimiz

Geliştiricilere Azure'da Mesh Bulut Betik Hizmetleri bulut altyapısı sağlama erişimi verme konusunda birkaç öneri aşağıdadır. Bunlar, erişim denetimi ilkelerinizin ne kadar kısıtlayıcı olmasını istediğinize bağlı olarak değişir.

  1. Geliştiricilere Mesh Bulut Betik Hizmetleriniz için sağlanan aboneliğin tamamında Katkıda Bulunan rolü verin.

  2. Mesh Bulut Betik Hizmetleri bulut altyapısı dağıtımı için ayrılmış bir kaynak grubu oluşturun ve geliştiricilere bu kaynak grubunda Katkıda Bulunan rolü verin. Bunu, ikinci önkoşulda oluşturduğunuz Azure Güvenlik Grubu (diğer bir deyişle "Mesh Bulut Betik Hizmetleri Geliştiricileri") aracılığıyla yapabilirsiniz. Bu, onlara tüm kaynakları yönetmeleri için tam erişim verir, ancak Azure RBAC'de rol atamalarına, Azure Blueprints'te atamaları yönetmelerine veya görüntü galerilerini paylaşmalarına izin vermez.

  3. Azure'da Mesh Bulut Betik Hizmetleri bulut altyapısını oluşturmak ve yönetmek için gereken en az izinlere sahip bir Özel Rol oluşturun.

    Bu rolü doğrudan ikinci önkoşul olan "Mesh Bulut Betik Hizmetleri Geliştiricileri" önkoşulunda oluşturduğunuz Azure Güvenlik Grubu'na atayabilirsiniz.

    Oluşturduğunuz Özel roller için önerilen izinlerimiz şunlardır:

    Özel rolleri seçtiğiniz sayfanın ekranı.

    Karşıya yükleyebileceğiniz JSON dosyası şuna benzer olmalıdır**:

    {
    "id": "88888-8888-8888-888-8888888",
        "properties": {
            "roleName": "MeshCloudScriptingServiceDeployer",
            "description": "Grants access to Mesh Cloud Scripting Services resources",
            "assignableScopes": [
                "/subscriptions/{subscriptionID}"
            ],
            "permissions": [
                {
                    "actions": [
                        "*/read",
                        "Microsoft.Authorization/*/read",
                        "Microsoft.ClassicCompute/virtualMachines/extensions/*",
                        "Microsoft.ClassicStorage/storageAccounts/listKeys/action",
                        "Microsoft.Compute/virtualMachines/extensions/*",
                        "Microsoft.HybridCompute/machines/extensions/write",
                        "Microsoft.Insights/alertRules/*",
                        "Microsoft.Insights/autoscalesettings/*",
                        "Microsoft.Insights/components/*",
                        "Microsoft.Insights/diagnosticSettings/*",
                        "Microsoft.Insights/generateLiveToken/read",
                        "Microsoft.Insights/metricAlerts/*",
                        "Microsoft.Insights/scheduledqueryrules/*",
                        "Microsoft.Insights/topology/read",
                        "Microsoft.Insights/transactions/read",
                        "Microsoft.Insights/webtests/*",
                        "Microsoft.Network/*",
                        "Microsoft.OperationalInsights/*",
                        "Microsoft.OperationsManagement/*",
                        "Microsoft.ResourceHealth/availabilityStatuses/read",
                        "Microsoft.Resources/deployments/*",
                        "Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
                        "Microsoft.Resources/subscriptions/resourceGroups/read",
                        "Microsoft.Storage/storageAccounts/*",
                        "Microsoft.Support/*",
                        "Microsoft.Web/certificates/*",
                        "Microsoft.Web/hostingEnvironments/Join/Action",
                        "Microsoft.Web/listSitesAssignedToHostName/read",
                        "Microsoft.Web/serverFarms/join/action",
                        "Microsoft.Web/serverFarms/*",
                        "Microsoft.Web/sites/*"
                    ],
                    "notActions": [],
                    "dataActions": [],
                    "notDataActions": []
                }
            ]
        }
    }
    

    Not

    MeshCloudScriptingServiceDeployer özel rolü kullanıcıların kaynak grupları oluşturmasına izin vermez. Kullanıcıların bir kaynak grubu oluşturmasını istiyorsak microsoft.resources/subscriptions/resourcegroups/write izinlerine de sahip olmaları gerekir.

Mesh Bulut Betik Hizmetleri için kota sınırlamaları

Mesh Bulut Betik Hizmetleri altyapısı Premium App Service Linux planını (P1V2) kullanır. Mesh Bulut Betik Hizmeti'ni dağıtırken karşılaşabileceğiniz App Service sınırları şunlardır:

Kaynak Premium (P1V2)
Azure Uygulaması Hizmet planı başına web, mobil veya API uygulamaları Sınırsız
App Service planı Kaynak grubu başına 100

Not

Aksi belirtilmediği sürece uygulamalar ve depolama kotaları App Service planına göredir.

Not

Bu makinelerde barındırabileceğiniz gerçek uygulama sayısı, uygulamaların etkinliğine, makine örneklerinin boyutuna ve buna karşılık gelen kaynak kullanımına bağlıdır.

Şu hatayı alırsanız: "Bu bölgede aboneliğiniz için 0 PremiumV2 örneği kotası var. Farklı bir bölge veya SKU seçmeyi deneyin", bkz . Azure abonelik sınırları ve kotaları.

Eski Mesh Bulut Betik hizmetlerini temizleme

Eski veya kullanılmayan Mesh Bulut Betik hizmetleriniz varsa, Mesh Bulut Betiği kaynaklarınızı bulmak ve kaldırmak için bu adımları izleyin.

  1. Azure Portal'da oturum açın.

  2. "Tüm Kaynaklar" sekmesine gidin.

    Azure portalında tüm kaynakları seçme

  3. "Tüm Kaynaklar" sayfasında:

    a. Uygun Abonelik girişini seçin.

    Azure'da aboneliği seçme

    b. EnvironmentName etiketine sahip bir filtre ekleyin.

    Azure'da EnvironmentName filtresi

    c. Silmek istediğiniz ortamlarla eşleşen kaynakları bulun.

    Azure'da kaynak filtresi

  4. 3C adımında bulunan her kaynağın adının yanındaki üç noktaya tıklayıp açılan listede Sil'e tıklayarak eski Mesh Bulut Betiği hizmetlerini temizleyin. Alternatif olarak, kaynakları ada göre silmek için bu Kaynak silme makalesinde açıklandığı gibi Azure CLI'yi kullanabilirsiniz.

Sonraki adımlar