Azure API Management örneğinizi sanal ağa dağıtma - dış mod

ŞUNLAR IÇIN GEÇERLIDIR: Geliştirici | Premium

Azure API Management, ağ içindeki arka uç hizmetlerine erişmek için bir Azure sanal ağına (VNet) dağıtılabilir (eklenebilir). Sanal ağ bağlantı seçenekleri, gereksinimleri ve dikkat edilmesi gerekenler için bkz:

Bu makalede, API Management örneğiniz için geliştirici portalının, API ağ geçidinin ve diğer API Management uç noktalarının genel İnternet'ten erişilebildiği ve arka uç hizmetlerinin ağda bulunduğu dış modda sanal ağ bağlantısının nasıl ayarlanacağı açıklanmaktadır.

Dış sanal ağa bağlanma

Uç noktaların yalnızca sanal ağ içinde erişilebilir olduğu iç moda özgü yapılandırmalar için bkz . Azure API Management örneğinizi bir sanal ağa dağıtma - iç mod.

Not

Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Önkoşullar

Başlamadan önce sanal ağa API Management ekleme için ağ kaynağı gereksinimlerini gözden geçirin.

Bazı önkoşullar, API Management örneğinizi barındıran işlem platformunun sürümüne (stv2 veya stv1) bağlı olarak farklılık gösterir.

İpucu

Mevcut bir API Management örneğinin ağ bağlantısını oluşturmak veya güncelleştirmek için portalı kullandığınızda, örnek işlem platformunda stv2 barındırılır.

  • API Management örneğiniz ile aynı bölgede ve abonelikte yer alan bir sanal ağ ve alt ağ .

    • API Management örneğine bağlanmak için kullanılan alt ağ diğer Azure kaynak türlerini içerebilir.
    • Alt ağda hiçbir temsilci etkinleştirilmemelidir. Alt ağ için bir hizmete alt ağ temsilcisi seçme ayarı Yok olarak ayarlanmalıdır.
  • Yukarıdaki alt ağa bağlı bir ağ güvenlik grubu . API Management tarafından dahili olarak kullanılan yük dengeleyici varsayılan olarak güvenli olduğundan ve tüm gelen trafiği reddettiği için, gelen bağlantıya açıkça izin vermek için bir ağ güvenlik grubu (NSG) gerekir. Belirli bir yapılandırma için bu makalenin devamında yer alan NSG kurallarını yapılandırma bölümüne bakın.

  • Belirli senaryolar için azure depolama veya Azure SQL gibi bağımlı hizmetler için alt ağdaki hizmet uç noktalarını etkinleştirin. Daha fazla bilgi için, bu makalenin devamında yer alan ExpressRoute veya ağ sanal gereci kullanarak şirket içi güvenlik duvarına trafiği zorlama konusuna bakın.

  • (İsteğe bağlı) Standart SKU genel IPv4 adresi.

    Önemli

    • Mayıs 2024'den itibaren, bir API Management örneğini iç modda bir sanal ağa dağıtırken (eklerken) veya iç sanal ağ yapılandırmasını yeni bir alt ağa geçirirken genel IP adresi kaynağına ihtiyaç duyulmaz . Dış sanal ağ modunda genel IP adresi belirtmek isteğe bağlıdır; sağlamazsanız Azure tarafından yönetilen genel IP adresi otomatik olarak yapılandırılır ve çalışma zamanı API'si trafiği için kullanılır. Genel IP adresini yalnızca İnternet'e gelen veya giden iletişim için kullanılan genel IP adresine sahip olmak ve denetlemek istiyorsanız sağlayın.
    • Sağlanırsa, IP adresi API Management örneği ve sanal ağ ile aynı bölgede ve abonelikte olmalıdır.

    • Genel IP adresi kaynağı oluştururken, buna bir DNS adı etiketi atadığınızdan emin olun. Genel olarak, API Management örneğiniz ile aynı DNS adını kullanmanız gerekir. Bunu değiştirirseniz, örneğinizi yeni DNS etiketinin uygulanması için yeniden dağıtın.

    • En iyi ağ performansı için varsayılan Yönlendirme tercihini kullanmanız önerilir: Microsoft ağı.

    • API Management örneğiniz için bölge yedekliliğini etkinleştirmeyi planladığınız bir bölgede genel IP adresi oluştururken Alanlar arası yedekli ayarını yapılandırın.

    • IP adresinin değeri, bu bölgedeki API Management örneğinin sanal genel IPv4 adresi olarak atanır.

  • Çok bölgeli API Management dağıtımları için sanal ağ kaynaklarını her konum için ayrı olarak yapılandırın.

Sanal ağ bağlantısını etkinleştirme

Azure portalını (stv2 işlem platformu) kullanarak sanal ağ bağlantısını etkinleştirme

  1. API yönetim örneğinizi bulmak için Azure portalına gidin. API Management hizmetlerini arayın ve seçin.

  2. API Management örneğinizi seçin.

  3. Ağ'ı seçin.

  4. Dış erişim türünü seçin. Azure portalında Sanal Ağ'ı seçin.

  5. API Management hizmetinizin sağlandığı konumlar (bölgeler) listesinde:

    1. Konum seçin.
    2. Sanal ağ, Alt ağ ve (isteğe bağlı olarak) IP adresi'yi seçin.
    • Sanal ağ listesi, yapılandırdığınız bölgede ayarlanan Azure aboneliklerinizde bulunan Resource Manager sanal ağlarıyla doldurulur.

      Portaldaki sanal ağ ayarları.

  6. Uygula’yı seçin. API Management örneğinizin Ağ sayfası yeni sanal ağ ve alt ağ seçenekleriniz ile güncelleştirilir.

  7. API Management örneğinizin kalan konumları için sanal ağ ayarlarını yapılandırmaya devam edin.

  8. Üst gezinti çubuğunda Kaydet'i seçin.

API Management örneğinin güncelleştirilmiş olması 15-45 dakika sürebilir. Geliştirici katmanındaki örneklerin işlem sırasında kapalı kalma süresi vardır. Premium katmanındaki örneklerin işlem sırasında kapalı kalma süresi yoktur.

Resource Manager şablonu (stv2 işlem platformu) kullanarak bağlantıyı etkinleştirme

  • Azure Resource Manager şablonu (API sürüm 2021-08-01)

    Resource Manager şablonunu Azure'a dağıtma düğmesi.

Azure PowerShell cmdlet'lerini kullanarak bağlantıyı etkinleştirme (stv1 platform)

Sanal ağda API Management örneği oluşturma veya güncelleştirme .

NSG kurallarını yapılandırma

API Management örneğinize gelen ve bu örnekten gelen trafiği filtrelemek için API Management alt ağında özel ağ kuralları yapılandırın. Düzgün bir şekilde çalıştığından ve örneğinize erişebildiğinden emin olmak için aşağıdaki en düşük NSG kurallarını kullanmanızı öneririz. Gerekebilecek daha fazla kural belirlemek için ortamınızı dikkatle gözden geçirin.

Önemli

Önbelleğe alma ve diğer özellikleri kullanımınıza bağlı olarak, aşağıdaki tabloda yer alan en düşük kuralların ötesinde ek NSG kuralları yapılandırmanız gerekebilir. Ayrıntılı ayarlar için bkz . Sanal ağ yapılandırma başvurusu.

  • Çoğu senaryoda, ağ kaynaklarını ve hedeflerini belirtmek için hizmet IP adresleri yerine belirtilen hizmet etiketlerini kullanın.
  • Bu kuralların önceliğini varsayılan kurallardan daha yüksek ayarlayın.
Kaynak / Hedef Bağlantı Noktaları Yön Aktarım protokolü Hizmet etiketleri
Kaynak / Hedef
Amaç Sanal ağ türü
* / [80], 443 Gelen TCP İnternet / VirtualNetwork API Management ile istemci iletişimi Yalnızca dış
* / 3443 Gelen TCP ApiManagement / VirtualNetwork Azure portalı ve PowerShell için yönetim uç noktası Dış ve İç
* / 6390 Gelen TCP AzureLoadBalancer / VirtualNetwork Azure Altyapı Yük Dengeleyici Dış ve İç
* / 443 Gelen TCP AzureTrafficManager / VirtualNetwork Çok bölgeli dağıtım için Azure Traffic Manager yönlendirmesi Yalnızca dış
* / 443 Giden TCP VirtualNetwork / Depolama Temel hizmet işlevselliği için Azure Depolama'ya bağımlılık Dış ve İç
* / 1433 Giden TCP VirtualNetwork / SQL Temel hizmet işlevselliği için Azure SQL uç noktalarına erişim Dış ve İç
* / 443 Giden TCP VirtualNetwork / AzureKeyVault Temel hizmet işlevselliği için Azure Key Vault'a erişim Dış ve İç
* / 1886, 443 Giden TCP VirtualNetwork / AzureMonitor Tanılama Günlüklerini ve Ölçümlerini, Kaynak Durumu ve Application Insights'ı yayımlama Dış ve İç

Sanal ağ içinde barındırılan bir web hizmetine bağlanma

API Management hizmetinizi sanal ağa bağladıktan sonra, aynı genel hizmetleri yaptığınız gibi bu hizmetin içindeki arka uç hizmetlerine de erişebilirsiniz. API oluştururken veya düzenlerken, web hizmetinizin yerel IP adresini veya ana bilgisayar adını (dns sunucusu sanal ağ için yapılandırılmışsa) Web hizmeti URL'si alanına yazın.

Sanal ağdan API ekleme

Özel DNS sunucusu kurulumu

Dış sanal ağ modunda Azure, DNS'yi varsayılan olarak yönetir. İsteğe bağlı olarak özel bir DNS sunucusu yapılandırabilirsiniz.

API Management hizmeti birkaç Azure hizmetine bağlıdır. API Management özel DNS sunucusuna sahip bir sanal ağda barındırıldığında, bu Azure hizmetlerinin ana bilgisayar adlarını çözümlemesi gerekir.

  • Azure tarafından sağlanan ana bilgisayar adları için iletme de dahil olmak üzere özel DNS kurulumuyla ilgili yönergeler için bkz . Azure sanal ağlarındaki kaynaklar için ad çözümleme.
  • DNS sunucularıyla iletişim için bağlantı noktasında 53 giden ağ erişimi gereklidir. Daha fazla ayar için bkz . Sanal ağ yapılandırma başvurusu.

Önemli

Sanal ağ için özel DNS sunucuları kullanmayı planlıyorsanız, içine bir API Management hizmeti dağıtmadan önce bunu ayarlayın. Aksi takdirde, Ağ Yapılandırması Uygulama İşlemi'ni çalıştırarak DNS Sunucularını her değiştirdiğinizde API Management hizmetini güncelleştirmeniz gerekir.

Yönlendirme

  • Yük dengeli genel IP adresi (VIP), SANAL ağ dışındaki API Management uç noktalarına ve kaynaklarına erişim sağlamak için ayrılmıştır.
    • Genel VIP' ye Azure portalındaki Genel Bakış/Temel Parçalar dikey penceresinden ulaşabilirsiniz.

Daha fazla bilgi ve dikkat edilmesi gerekenler için bkz . Azure API Management'ın IP adresleri.

VIP ve DIP adresleri

Dinamik IP (DIP) adresleri hizmetteki her temel sanal makineye atanır ve sanal ağdaki ve eşlenmiş sanal ağlardaki uç noktalara ve kaynaklara erişmek için kullanılır. GENEL kullanıma yönelik kaynaklara erişmek için API Management hizmetinin genel sanal IP (VIP) adresi kullanılır.

IP kısıtlaması sanal ağ veya eşlenmiş sanal ağlar içindeki güvenli kaynakları listeliyorsa, hizmetten erişim vermek veya kısıtlamak için API Management hizmetinin dağıtıldığı alt ağ aralığının tamamını belirtmenizi öneririz.

Önerilen alt ağ boyutu hakkında daha fazla bilgi edinin.

ExpressRoute veya ağ sanal gereci kullanarak trafiği şirket içi güvenlik duvarına zorlama

Zorlamalı tünel, alt ağınızdan İnternet'e bağlı tüm trafiği denetleme ve denetim için şirket içi konuma yeniden yönlendirmenize veya "zorlamanıza" olanak tanır. Genellikle, API Management alt ağından gelen tüm trafiği şirket içi güvenlik duvarından veya ağ sanal gerecinden akmaya zorlayarak kendi varsayılan yolunuzu ()0.0.0.0/0 yapılandırıp tanımlarsınız. Giden trafik şirket içinde engellendiğinden veya nat artık çeşitli Azure uç noktalarıyla çalışmayan tanınmayan bir adres kümesine nat olduğundan, bu trafik akışı API Management ile bağlantıyı keser. Bu sorunu aşağıdaki yöntemlerle çözebilirsiniz:

  • API Management hizmetinin dağıtıldığı alt ağda hizmet uç noktalarını etkinleştirin:

    • Azure SQL (yalnızca API Management hizmeti birden çok bölgeye dağıtıldıysa birincil bölgede gereklidir)
    • Azure Depolama
    • Azure Event Hubs
    • Azure Key Vault (API Management platformda stv2 dağıtıldığında gereklidir)

    Uç noktaları doğrudan API Management alt ağından bu hizmetlere etkinleştirerek Microsoft Azure omurga ağını kullanarak hizmet trafiği için en uygun yönlendirmeyi sağlayabilirsiniz. Hizmet uç noktalarını zorlamalı bir API Management ile kullanıyorsanız, önceki Azure hizmetlerinin trafiği zorlamalı tünel oluşturmaz. Ancak, diğer API Management hizmeti bağımlılık trafiği zorlamalı tünel olarak kalır. Güvenlik duvarınızın veya sanal gerecinizin bu trafiği engellemediğinden veya API Management hizmetinin düzgün çalışmayabileceğinden emin olun.

    Not

    Hizmet uç noktalarını doğrudan API Management alt ağından Azure SQL ve Azure Depolama gibi bunları destekleyen bağımlı hizmetlere etkinleştirmenizi kesinlikle öneririz. Ancak bazı kuruluşların API Management alt ağından gelen tüm trafiğe zorlama gereksinimleri olabilir. Bu durumda, güvenlik duvarınızı veya sanal gerecinizi bu trafiğe izin verecek şekilde yapılandırdığınızdan emin olun. Her bağımlı hizmetin tam IP adresi aralığına izin vermeniz ve Azure altyapısı değiştiğinde bu yapılandırmayı güncel tutmanız gerekir. Api Management hizmetiniz de bu ağ trafiğinin zorlamalı tüneli nedeniyle gecikme veya beklenmeyen zaman aşımlarıyla karşılaşabilir.

  • İnternet'ten API Management hizmetinizin yönetim uç noktasına giden tüm denetim düzlemi trafiği, API Management tarafından barındırılan, ApiManagement hizmet etiketiyle kapsadığı belirli bir gelen IP kümesi üzerinden yönlendirilir. Trafik zorla tünellendiğinde, yanıtlar simetrik olarak bu gelen kaynak IP'lere geri eşlenmez ve yönetim uç noktasına bağlantı kaybolur. Bu sınırlamayı aşmak için, trafiği Azure'a geri yönlendirmek üzere sonraki atlama türü "İnternet" olarak ayarlanmış ApiManagement hizmet etiketi için kullanıcı tanımlı bir yol (UDR) yapılandırın.

    Not

    API Management yönetim trafiğinin şirket içi güvenlik duvarını veya ağ sanal gereclerini atlamasına izin vermek önemli bir güvenlik riski olarak kabul edilmez. API Management alt ağınız için önerilen yapılandırma, yalnızca ApiManagement hizmet etiketi tarafından kapsadığı Azure IP adresleri kümesinden 3443 numaralı bağlantı noktasında gelen yönetim trafiğine izin verir. Önerilen UDR yapılandırması yalnızca bu Azure trafiğinin dönüş yolu içindir.

  • (Dış sanal ağ modu) Api Management ağ geçidine ve geliştirici portalına İnternet'ten erişmeye çalışan istemciler için veri düzlemi trafiği de zorlamalı tünel tarafından sunulan asimetrik yönlendirme nedeniyle varsayılan olarak bırakılır. Erişim gerektiren her istemci için, güvenlik duvarını veya sanal ağ gerecini atlamak için sonraki atlama türü "internet" olan açık bir UDR yapılandırın.

  • Diğer zorlamalı tünellenmiş API Management hizmeti bağımlılıkları için konak adını çözün ve uç noktaya ulaşın. Bu modüller şunlardır:

    • Ölçümler ve Sistem Durumu İzleyicisi
    • Azure portal tanılaması
    • SMTP geçişi
    • Geliştirici portalı CAPTCHA
    • Azure KMS sunucusu

Daha fazla bilgi için bkz . Sanal ağ yapılandırma başvurusu.

Yaygın ağ yapılandırma sorunları

Bu bölüm taşındı. Bkz. Sanal ağ yapılandırma başvurusu.

Sorun giderme

API Management hizmetinin bir alt ağa ilk dağıtımı başarısız oldu

  • Aynı alt ağa bir sanal makine dağıtın.
  • Sanal makineye bağlanın ve Azure aboneliğinizde aşağıdaki kaynaklardan biriyle bağlantıyı doğrulayın:
    • Azure Depolama blobu
    • Azure SQL Veritabanı
    • Azure Depolama Tablosu
    • Azure Key Vault (platformda barındırılan stv2 bir API Management örneği için)

Önemli

Bağlantıyı doğruladıktan sonra, API Management'ı alt ağa dağıtmadan önce alt ağdaki tüm kaynakları kaldırın (API Management platformda stv1 barındırıldığında gereklidir).

Ağ durumunu doğrulama

  • API Management'ı alt ağa dağıtdıktan sonra örneğinizin Azure Depolama gibi bağımlılıklarla bağlantısını denetlemek için portalı kullanın.

  • Portalda, sol taraftaki menüde, Dağıtım ve altyapı'nın altında >Ağı durumu'nu seçin.

    Portalda ağ bağlantısı durumunu doğrulama işleminin ekran görüntüsü.

Filtre Açıklama
Gerekli API Management için gerekli Azure hizmetleri bağlantısını gözden geçirmek için seçin. Hata, örneğin API'leri yönetmek için çekirdek işlemleri gerçekleştiremediğini gösterir.
Optional İsteğe bağlı hizmetler bağlantısını gözden geçirmek için seçin. Hata yalnızca belirli işlevlerin (örneğin SMTP) çalışmayacağını gösterir. Hata, API Management örneğinin kullanılması ve izlenmesinde ve işlenen SLA'nın sağlanmasında düşüşe yol açabilir.

Bağlantı sorunlarını gidermeye yardımcı olmak için şunları seçin:

  • Ölçümler - ağ bağlantı durumu ölçümlerini gözden geçirmek için

  • Tanılama - belirtilen süre boyunca bir sanal ağ doğrulayıcı çalıştırmak için

Bağlantı sorunlarını gidermek için ağ yapılandırma ayarlarını gözden geçirin ve gerekli ağ ayarlarını düzeltin.

Artımlı güncelleştirmeler

Ağınızda değişiklik yaparken, API Management hizmetinin kritik kaynaklara erişimi kaybetmediğini doğrulamak için NetworkStatus API'sine bakın. Bağlantı durumu her 15 dakikada bir güncelleştirilmelidir.

Portalı kullanarak API Management örneğine bir ağ yapılandırma değişikliği uygulamak için:

  1. Örneğinizin sol tarafındaki menüde, Dağıtım ve altyapı'nın altında >Sanal ağı'nı seçin.
  2. Ağ yapılandırmasını uygula'yı seçin.

İşlem platformunda barındırılan stv1 bir API Management örneği, Resource Manager sanal ağı alt aağına dağıtıldığında bir kaynak gezinti bağlantısı oluşturarak alt ağı ayırır. Alt ağ zaten farklı bir sağlayıcıdan kaynak içeriyorsa dağıtım başarısız olur. Benzer şekilde, bir API Management hizmetini sildiğinizde veya farklı bir alt ağa taşıdığınızda kaynak gezinti bağlantısı kaldırılır.

API Management örneğini önceki alt ağa yeniden atamada karşılaşılan zorluklar

  • Sanal ağ kilidi - API Management örneğini özgün alt aya geri taşırken, kaldırılması bir saate kadar süren sanal ağ kilidi nedeniyle anında yeniden atama mümkün olmayabilir. Özgün alt ağda başka stv1 platform tabanlı API Management hizmetleri (bulut hizmeti tabanlı) varsa, bunları silmek ve aynı alt ağa platform tabanlı bir stv2 hizmet dağıtmak için beklemek gerekir.
  • Kaynak grubu kilidi - Dikkate alınması gereken bir diğer senaryo da kaynak grubu düzeyinde veya daha yüksek bir kapsam kilidinin bulunmasıdır ve Kaynak Gezinti Bağlantısı Silme işlemini engeller. Bu sorunu çözmek için kapsam kilidini kaldırın ve API Management hizmetinin kilit kaldırmadan önce özgün alt ağ bağlantısını kaldırması için yaklaşık 4-6 saat gecikmeye izin verin ve istenen alt ağa dağıtıma olanak tanıyın.

Sanal ağın içinden Microsoft Graph bağlantısı sorunlarını giderme

Microsoft Graph'a ağ bağlantısı, Microsoft Entra kimlik sağlayıcısını kullanarak geliştirici portalında kullanıcı oturumu açma gibi özellikler için gereklidir.

Sanal ağın içinden Microsoft Graph bağlantısı sorunlarını gidermek için:

  • NSG ve diğer ağ kurallarının API Management örneğinizden Microsoft Graph'a giden bağlantı için yapılandırıldığından emin olun (AzureActiveDirectory hizmet etiketi kullanılarak).

  • Sanal ağın içinden DNS çözümlemesi ve ağ erişimi graph.microsoft.com sağlayın. Örneğin, sanal ağ içinde yeni bir VM sağlayın, sanal ağa bağlanın ve bir tarayıcıdan veya cURL, PowerShell veya diğer araçları kullanarak vm'ye bağlanmayı GET https://graph.microsoft.com/v1.0/$metadata deneyin.

Sonraki adımlar

Aşağıdakiler hakkında daha fazla bilgi edinin: