Aracılığıyla paylaş


Azure Arc tarafından etkinleştirilen AKS'de ara sunucu ayarları

Şunlar için geçerlidir: Azure Yerel 22H2'de AKS, Windows Server'da AKS

Bu makalede, Azure Arc tarafından etkinleştirilen AKS için ara sunucu ayarlarının nasıl yapılandırıldığı açıklanmaktadır. Ağınız İnternet'e bağlanmak için bir ara sunucu kullanılmasını gerektiriyorsa, bu makalede AksHci PowerShell modülünü kullanarak AKS'de ara sunucu desteğini ayarlama adımları gösterilmektedir. Ara sunucunun kimlik doğrulaması gerekip gerektirmediğine bağlı olarak adımlar farklıdır.

Not

Azure Arc ile Kubernetes ve Azure Hizmetleri'ni kullanmak istiyorsanız, Mevcut bir Kubernetes kümesini Azure Arc'a bağlama bölümünde gösterilen URL'leri de izin verme listenize eklediğinizden emin olun.

Dağıtımınızı aşağıdaki seçenekleri kullanarak yapılandırdıktan sonra Azure Yerel'e bir AKS konağı yükleyebilir ve PowerShell kullanarak Kubernetes kümeleri oluşturabilirsiniz.

Başlamadan önce

Sistem gereksinimlerindeki tüm önkoşulları karşıladığınızdan emin olun.

Ara sunucu yapılandırma bilgileri

AKS dağıtımınız için ara sunucu yapılandırması aşağıdaki ayarları içerir:

  • HTTP URL'si ve bağlantı noktası, örneğin http://proxy.corp.contoso.com:8080.
  • HTTPS URL'si ve bağlantı noktası, örneğin https://proxy.corp.contoso.com:8443.
  • (İsteğe bağlı) Proxy sunucusunda kimlik doğrulaması için geçerli kimlik bilgileri.
  • (İsteğe bağlı) Proxy sunucunuz SSL trafiğini kesecek şekilde yapılandırılmışsa geçerli sertifika zinciri. Bu sertifika zinciri, tüm AKS denetim düzlemi ve çalışan düğümlerinin yanı sıra, proxy sunucusuna güvenilir bir bağlantı kurmak için yönetim kümesine aktarılacaktır.

Özel alt ağların ara sunucuya gönderilmesini dışlamak için dışlama listesi

Aşağıdaki tabloda, parametresini -noProxykullanarak dışlamanız gereken adreslerin New-AksHciProxySetting listesi yer alır.

IP Adresi Dışlama nedeni
localhost, 127.0.0.1 Localhost trafiği
.svc Bir joker karakter adını temsil eden .svc iç Kubernetes hizmet trafiği. Bu, deyişine *.svcbenzer, ancak bu şemada hiçbiri kullanılmaz.
10.0.0.0/8 Özel ağ adres alanı.
172.16.0.0/12 Özel ağ adres alanı - Kubernetes hizmeti CIDR.
192.168.0.0/16 Özel ağ adres alanı - Kubernetes pod CIDR.
.contoso.com`` | You might want to exempt your enterprise namespace (.contoso.com) from being directed through the proxy. To exclude all addresses in a domain, you must add the domain to the noProxy.contoso.comlist. Use a leading period rather than a wildcard (\*) character. In the example, the addressesexcludes addresses prefix1.contoso.com, prefix2.contoso.com' vb.

için noProxy varsayılan değerdir localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16. Bu varsayılan değerler birçok ağda çalışsa da, muafiyet listesine daha fazla alt ağ aralığı ve/veya ad eklemeniz gerekebilir. Örneğin, kurumsal ad alanınızı (.contoso.com) ara sunucu üzerinden yönlendirilmekten muaf tutabilirsiniz. Listedeki değerleri noProxy belirterek bunu yapabilirsiniz.

Makine genelinde ara sunucu ayarlarıyla Azure Yerel ve Windows Server kümeleri için ara sunucu ayarlama

Azure Yerel/Windows Server kümenizde makine genelinde ara sunucu ayarlarınız zaten varsa, ayarlar AKS'ye özgü ara sunucu ayarlarını geçersiz kılıp yükleme sırasında hataya neden olabilir.

Makine genelinde ara sunucu ayarlarınız olup olmadığını algılamak için fiziksel küme düğümlerinizin her birinde aşağıdaki betiği çalıştırın:

$http_proxy = [System.Environment]::GetEnvironmentVariable("HTTP_PROXY", "Machine")
$https_proxy = [System.Environment]::GetEnvironmentVariable("HTTPS_PROXY", "Machine")
$no_proxy = [System.Environment]::GetEnvironmentVariable("NO_PROXY", "Machine")

if ($http_proxy -or $https_proxy) {
    if (-not $no_proxy) {
        Write-Host "Problem Detected! A machine-wide proxy server is configured, but no proxy exclusions are configured"
    }
}

Sorunun algılandığı fiziksel küme konaklarının her birinde makine genelinde ara sunucu dışlamalarını yapılandırın.

Aşağıdaki PowerShell betiğini çalıştırın ve parametre dizesini $no_proxy ortamınız için uygun NO_PROXY bir dışlama dizesiyle değiştirin. Ortamınız için bir noProxy listeyi doğru yapılandırma hakkında bilgi için bkz . Özel alt ağları ara sunucuya gönderilmeden dışlamak için dışlama listesi.

$no_proxy = "localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.contoso.com"
[Environment]::SetEnvironmentVariable("NO_PROXY", $no_proxy, "Machine")
$env:NO_PROXY = [System.Environment]::GetEnvironmentVariable("NO_PROXY", "Machine")

Not

Yük devretme kümesindeki tüm düğümlerde aynı ara sunucu ayarlarını kullanmanızı öneririz. Yük devretme kümesindeki farklı fiziksel düğümlerde farklı ara sunucu ayarları olması beklenmeyen sonuçlara veya yükleme sorunlarına yol açabilir. Ayrıca 172 gibi joker karakter (*) içeren bir IP adresi.*, geçerli değil. IP adresi doğru CIDR gösteriminde olmalıdır (172.0.0.0/8).

AksHci PowerShell modüllerini yükleme

Kümedeki fiziksel düğümlerin her birinde sistem ara sunucusu ayarlarını yapılandırın ve tüm düğümlerin Sistem gereksinimleri bölümünde belirtilen URL'lere ve bağlantı noktalarına erişimi olduğundan emin olun.

Uzak PowerShell kullanıyorsanız CredSSP kullanmanız gerekir.

Aşağıdaki komutu çalıştırmadan önce tüm açık PowerShell pencerelerini kapatın:

Install-Module -Name AksHci -Repository PSGallery

Ortamınız İnternet'e erişmek için bir ara sunucu kullanıyorsa AKS'yi yüklemeden önce Install-Module komutuna proxy parametreleri eklemeniz gerekebilir. Ayrıntılar için Yükleme Modülü belgelerine bakın ve fiziksel küme düğümlerinde ara sunucu ayarlarını yapılandırmak için Azure Yerel belgelerini izleyin.

AksHci PowerShell modülünü indirdiğinizde, aks ana bilgisayarını faturalama için Azure'a kaydetmek için gereken Az PowerShell modüllerini de indiririz.

Temel kimlik doğrulaması ile ara sunucu için AKS konağı yapılandırma

Proxy sunucunuz kimlik doğrulaması gerektiriyorsa, PowerShell'i yönetici olarak açın ve kimlik bilgilerini almak ve yapılandırma ayrıntılarını ayarlamak için aşağıdaki komutu çalıştırın:

$proxyCred = Get-Credential
$proxySetting=New-AksHciProxySetting -name "corpProxy" -http http://contosoproxy:8080 -https https://contosoproxy:8443 -noProxy localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.contoso.com -credential $proxyCredential

Kimlik doğrulaması olmadan ara sunucu için AKS konağı yapılandırma

Proxy sunucunuz kimlik doğrulaması gerekmiyorsa aşağıdaki komutu çalıştırın:

$proxySetting=New-AksHciProxySetting -name "corpProxy" -http http://contosoproxy:8080 -https https://contosoproxy:8443 -noProxy localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.contoso.com

Güvenilen sertifikaya sahip bir ara sunucu için AKS konağı yapılandırma

Proxy sunucunuz bir sertifikaya güvenmek için proxy istemcileri gerektiriyorsa, komutunu çalıştırdığınızda Set-AksHciConfigsertifika dosyasını belirtin. Sertifika dosyasının biçimi Base-64 kodlu X .509'dur. Bu, yığın boyunca sertifika oluşturmanızı ve güvenmenizi sağlar.

Önemli

Ara sunucunuz fiziksel Azure Yerel düğümleri tarafından güvenilen bir sertifika gerektiriyorsa, devam etmeden önce sertifika zincirini her Azure Yerel düğümündeki uygun sertifika deposuna içeri aktardığınızdan emin olun. Azure Yerel düğümlerini proxy kimlik doğrulaması için gerekli sertifikalarla kaydetmek için dağıtımınıza yönelik yordamları izleyin.

$proxySetting=New-AksHciProxySetting -name "corpProxy" -http http://contosoproxy:8080 -https https://contosoproxy:8443 -noProxy localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.contoso.com -credential $proxyCredential

Not

Proxy sertifikaları kişisel bilgi değişimi (PFX) dosya biçimi veya dizesi olarak sağlanmalıdır ve sertifikayı kimlik doğrulaması veya SSL tüneli kurulumu için kullanmak üzere kök yetkili zincirini içermelidir.

Sonraki adımlar

Artık azure yerel veya Windows Server kümenize AKS yükleme işlemine devam etmek için komutunu ve ardından Set-AksHciConfigkomutunu çalıştırabilirsinizInstall-AksHci.