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 -noProxy
kullanarak 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 *.svc benzer, 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 addresses excludes 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-AksHciConfig
sertifika 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-AksHciConfig
komutunu çalıştırabilirsinizInstall-AksHci
.