Azure Arc tarafından etkinleştirilen AKS'de ara sunucu ayarları
Şunlar için geçerlidir: Azure Stack HCI 22H2 üzerinde 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çıklanı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ı gerektirip 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 Stack HCI'ye 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ılır.
Özel alt ağların ara sunucuya gönderilmesini dışlamak için dışlama listesi
Aşağıdaki tablo, içinde New-AksHciProxySetting
parametresini kullanarak dışlamanız gereken adreslerin -noProxy
listesini içerir.
IP Adresi | Dışlama nedeni |
---|---|
localhost , 127.0.0.1 |
Localhost trafiği |
.svc |
İç Kubernetes hizmet trafiği, burada .svc joker karakter adını temsil eder. 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ğer şeklindedir 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ın (.contoso.com) proxy üzerinden yönlendirilmesinden muaf tutulmasını isteyebilirsiniz. Listedeki değerleri noProxy
belirterek bunu başarabilirsiniz.
Makine genelinde ara sunucu ayarlarıyla Azure Stack HCI ve Windows Server kümeleri için ara sunucu ayarlama
Azure Stack HCI/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ın ara sunucuya gönderilmesini 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ı proxy 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 proxy ayarlarını yapılandırın ve tüm düğümlerin Sistem gereksinimleri'nde özetlenen 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 Install-Module belgelerine bakın ve fiziksel küme düğümlerinde ara sunucu ayarlarını yapılandırmak için Azure Stack HCI 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
Ara sunucunuz bir sertifikaya güvenmek için proxy istemcileri gerektiriyorsa, ç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ın her yanındaki sertifikayı oluşturmanıza ve güvenmenize olanak tanır.
Önemli
Ara sunucunuz fiziksel Azure Stack HCI düğümleri tarafından güvenilen bir sertifika gerektiriyorsa, devam etmeden önce sertifika zincirini her Azure Stack HCI düğümünde uygun sertifika deposuna içeri aktardığınızdan emin olun. Azure Stack HCI düğümlerini ara sunucu 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
Bundan sonra komutunu çalıştırarak Set-AksHciConfig
Install-AksHci
Azure Stack HCI veya Windows Server kümenize AKS'yi yüklemeye devam edebilirsiniz.