Azure Stack HCI ve Windows Server'da Azure Kubernetes Service konağı ayarlama ve PowerShell kullanarak bir iş yükü kümesi dağıtma

Şunlar için geçerlidir: Azure Stack HCI veya Windows Server Datacenter

Bu hızlı başlangıç, Azure Kubernetes Service (AKS) konağı ayarlama işleminde size yol gösterir. PowerShell kullanarak Azure Stack HCI ve Windows Server'da Kubernetes kümeleri oluşturursunuz. Bunun yerine Windows Admin Center kullanmak için bkz. Windows Admin Center ile ayarlama.

Not

Başlamadan önce

AksHci PowerShell modülünü yükleme

Azure Stack HCI kümenizdeki veya Windows Server kümenizdeki tüm düğümlerde şu adımları izleyin:

Not

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

  1. Tüm açık PowerShell pencerelerini kapatın, yönetici olarak yeni bir PowerShell oturumu açın ve Azure Stack HCI veya Windows Server kümenizdeki tüm düğümlerde aşağıdaki komutu çalıştırın:

    Install-PackageProvider -Name NuGet -Force 
    Install-Module -Name PowershellGet -Force -Confirm:$false
    

    Yüklenen modüllerin yenilendiğinden emin olmak için mevcut tüm PowerShell pencerelerini yeniden kapatmanız gerekir. Tüm açık PowerShell pencerelerini kapatana kadar sonraki adıma geçmeyin.

  2. Azure Stack HCI veya Windows Server kümenizdeki tüm düğümlerde aşağıdaki komutu çalıştırarak AKS-HCI PowerShell modülünü yükleyin:

    Install-Module -Name AksHci -Repository PSGallery -Force -AcceptLicense
    

    Yüklenen modüllerin yenilendiğinden emin olmak için mevcut tüm PowerShell pencerelerini yeniden kapatmanız gerekir. Tüm açık PowerShell pencerelerini kapatana kadar sonraki adıma geçmeyin.

AKS dağıtımınızda PowerShell sürümüyle ilgili sorunları önlemek için eski AKS-HCI PowerShell modüllerini silmek için bir yardımcı betik kullanabilirsiniz.

Yüklemenizi doğrulama

Get-Command -Module AksHci

AksHci PowerShell komutlarının tam listesini görüntülemek için bkz. AksHci PowerShell.

Kaynak sağlayıcısını aboneliğinize kaydetme

Kayıt işleminden önce Arc kaydı tarafından etkinleştirilen AKS için Azure'da uygun kaynak sağlayıcısını etkinleştirin. Bunu yapmak için aşağıdaki PowerShell komutlarını çalıştırın:

Azure'da oturum açmak için Connect-AzAccount PowerShell komutunu çalıştırın:

Connect-AzAccount

Farklı bir aboneliğe geçmek istiyorsanız Set-AzContext PowerShell komutunu çalıştırın:

Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"

Azure aboneliğinizi Azure Arc özellikli Kubernetes kaynak sağlayıcılarına kaydetmek için aşağıdaki komutları çalıştırın. Bu kayıt işlemi 10 dakika kadar sürebilir, ancak belirli bir abonelikte yalnızca bir kez gerçekleştirilmesi gerekir:

Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Register-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation

Kayıt işlemini doğrulamak için aşağıdaki PowerShell komutlarını çalıştırın:

Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Get-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation

1. Adım: Makinelerinizi dağıtım için hazırlama

Arc tarafından etkinleştirilen AKS'yi yüklemek için tüm gereksinimlerin karşılandığından emin olmak için her fiziksel düğümde denetimler çalıştırın. PowerShell'i yönetici olarak açın ve Azure Stack HCI ve Windows Server kümenizdeki tüm düğümlerde aşağıdaki Initialize-AksHciNode komutunu çalıştırın:

Initialize-AksHciNode

2. Adım: Sanal ağ oluşturma

Azure Stack HCI ve Windows Server kümenizdeki herhangi bir düğümde aşağıdaki komutları çalıştırın.

Kullanılabilir anahtarlarınızın adlarını almak için aşağıdaki komutu çalıştırın. VM anahtarınızın "Dış" olduğundan emin SwitchType olun:

Get-VMSwitch

Örnek çıktı:

Name        SwitchType     NetAdapterInterfaceDescription
----        ----------     ------------------------------
extSwitch   External       Mellanox ConnectX-3 Pro Ethernet Adapter

Dağıtımınızdaki düğümler için kullanılacak bir sanal ağ oluşturmak için New-AksHciNetworkSetting PowerShell komutuyla bir ortam değişkeni oluşturun. Bu sanal ağ daha sonra statik IP kullanan bir dağıtımı yapılandırmak için kullanılır. AKS dağıtımınızı DHCP ile yapılandırmak istiyorsanız, örnekler için bkz. New-AksHciNetworkSetting . Bazı ağ düğümü kavramlarını da gözden geçirebilirsiniz.

#static IP
$vnet = New-AksHciNetworkSetting -name myvnet -vSwitchName "extSwitch" -k8sNodeIpPoolStart "172.16.10.1" -k8sNodeIpPoolEnd "172.16.10.255" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -ipAddressPrefix "172.16.0.0/16" -gateway "172.16.0.1" -dnsServers "172.16.0.1" -vlanId 9

Not

Ortamınız için bu örnek komutta gösterilen değerleri özelleştirmeniz gerekir.

3. Adım: Dağıtımınızı yapılandırma

Azure Stack HCI ve Windows Server kümenizdeki herhangi bir düğümde aşağıdaki komutları çalıştırın.

AKS konağı için yapılandırma ayarlarını oluşturmak için Set-AksHciConfig komutunu kullanın. , workingDirve cloudConfigLocation parametrelerini belirtmeniz imageDirgerekir. Yapılandırma ayrıntılarınızı sıfırlamak istiyorsanız komutu yeni parametrelerle yeniden çalıştırın.

Dağıtımınızı aşağıdaki komutla yapılandırın:

$csvPath = 'C:\clusterstorage\volume01' # Specify your preferred CSV path
Set-AksHciConfig -imageDir $csvPath\Images -workingDir $csvPath\ImageStore -cloudConfigLocation $csvPath\Config -vnet $vnet

Not

Ortamınız için bu örnek komutta gösterilen değerleri özelleştirmeniz gerekir.

4. Adım: Azure'da oturum açma ve kayıt ayarlarını yapılandırma

1. Seçenek: "Sahip" izinleriniz varsa Microsoft Entra hesabınızı kullanın

Azure'da oturum açmak için aboneliğinizle ve kaynak grubu adınızla aşağıdaki Set-AksHciRegistration PowerShell komutunu çalıştırın. Doğu Avustralya, Doğu ABD, Güneydoğu Asya veya Batı Avrupa Azure bölgelerinde bir Azure aboneliğiniz ve mevcut bir Azure kaynak grubunuz olmalıdır:

Set-AksHciRegistration -subscriptionId "<subscriptionId>" -resourceGroupName "<resourceGroupName>"

2. Seçenek: Azure hizmet sorumlusu kullanma

"Sahip" olduğunuz bir aboneliğe erişiminiz yoksa aks ana bilgisayarınızı hizmet sorumlusu kullanarak faturalama için Azure'a kaydedebilirsiniz. Hizmet sorumlusu kullanma hakkında daha fazla bilgi için bkz. Hizmet sorumlusu kullanarak Azure Stack HCI ve Windows Server'da AKS'yi kaydetme.

5. Adım: Yeni bir dağıtım başlatma

Azure Stack HCI veya Windows Server kümenizdeki herhangi bir düğümde aşağıdaki komutu çalıştırın.

Dağıtımınızı yapılandırdıktan sonra AKS aracılarını/hizmetlerini ve AKS ana bilgisayarını yüklemek için başlatmanız gerekir. Dağıtıma başlamak için aşağıdaki komutu çalıştırın:

İpucu

Yükleme sırasında ek durum ayrıntılarını görmek için devam etmeden önce ayarlayın $VerbosePreference = "Continue" .

Install-AksHci

Uyarı

AKS ana bilgisayarınızın yüklenmesi sırasında kayıt sırasında ayarlanan kaynak grubunda kubernetes - Azure Arc kaynak türü oluşturulur. AKS konağınızı temsil ettiği için bu kaynağı silmeyin. Dağıtım alanını değerini aks_managementdenetleyerek kaynağı tanımlayabilirsiniz. Bu kaynağı silerseniz ilke dışı dağıtım elde eder.

6. Adım: Kubernetes kümesi oluşturma

AKS konağınızı yükledikten sonra bir Kubernetes kümesi dağıtabilirsiniz. PowerShell'i yönetici olarak açın ve aşağıdaki New-AksHciCluster komutunu çalıştırın. Bu örnek komut, düğüm sayısı 1 olan adlı linuxnodepool bir Linux düğüm havuzuna sahip yeni bir Kubernetes kümesi oluşturur.

Düğüm havuzları hakkında daha fazla bilgi için bkz. AKS'de düğüm havuzlarını kullanma.

New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1 -osType Linux

Dağıtılan kümelerinizi denetleme

Dağıtılan Kubernetes kümelerinizin listesini almak için aşağıdaki Get-AksHciCluster PowerShell komutunu çalıştırın:

Get-AksHciCluster
ProvisioningState     : provisioned
KubernetesVersion     : v1.20.7
NodePools             : linuxnodepool
WindowsNodeCount      : 0
LinuxNodeCount        : 0
ControlPlaneNodeCount : 1
Name                  : mycluster

Kümedeki düğüm havuzlarının listesini almak için aşağıdaki Get-AksHciNodePool PowerShell komutunu çalıştırın:

Get-AksHciNodePool -clusterName mycluster
ClusterName  : mycluster
NodePoolName : linuxnodepool
Version      : v1.20.7
OsType       : Linux
NodeCount    : 1
VmSize       : Standard_K8S3_v1
Phase        : Deployed

7. Adım: Kümenizi Arc özellikli Kubernetes'e bağlama

Enable-AksHciArcConnection komutunu çalıştırarak kümenizi Arc özellikli Kubernetes'e bağlayın. Aşağıdaki örnek, komutunda geçirdiğiniz abonelik ve kaynak grubu ayrıntılarını kullanarak Kubernetes kümenizi Arc'a Set-AksHciRegistration bağlar:

Connect-AzAccount
Enable-AksHciArcConnection -name mycluster

Not

Yükleme işlemi sırasında sorun veya hata iletileriyle karşılaşırsanız daha fazla bilgi için bkz. yüklemeyle ilgili bilinen sorunlar ve hatalar .

Kubernetes kümesini ölçeklendirme

Kümenizin ölçeğini artırmanız veya azaltmanız gerekiyorsa Set-AksHciCluster komutunu kullanarak denetim düzlemi düğümlerinin sayısını değiştirebilirsiniz. Düğüm havuzunuzdaki Linux veya Windows çalışan düğümlerinin sayısını değiştirmek için Set-AksHciNodePool komutunu kullanın.

Denetim düzlemi düğümlerini ölçeklendirmek için aşağıdaki komutu çalıştırın:

Set-AksHciCluster -name mycluster -controlPlaneNodeCount 3

Düğüm havuzunuzda çalışan düğümlerini ölçeklendirmek için aşağıdaki komutu çalıştırın:

Set-AksHciNodePool -clusterName mycluster -name linuxnodepool -count 3

Not

Azure Stack HCI ve Windows Server'da AKS'nin önceki sürümlerinde çalışan düğümlerini ölçeklendirmek için Set-AksHciCluster komutu da kullanılıyordu. AKS, iş yükü kümelerindeki düğüm havuzlarını kullanıma sunmaktadır. Bu komutu yalnızca kümeniz New-AksHciCluster'da eski parametre kümesiyle oluşturulduysa çalışan düğümlerini ölçeklendirmek için kullanabilirsiniz.

Düğüm havuzundaki çalışan düğümlerini ölçeklendirmek için Set-AksHciNodePool komutunu kullanın.

kubectl kullanarak kümelerinize erişme

Kubectl kullanarak Kubernetes kümelerinize erişmek için Get-AksHciCredential PowerShell komutunu çalıştırın. Bu, belirtilen kümenin kubeconfig dosyasını kubectl için varsayılan kubeconfig dosyası olarak kullanır. Helm kullanarak uygulamaları dağıtmak için kubectl de kullanabilirsiniz:

Get-AksHciCredential -name mycluster

Kubernetes kümesini silme

Kubernetes kümesini silmek için aşağıdaki komutu çalıştırın:

Remove-AksHciCluster -name mycluster

Not

Hyper-V Yöneticisi'ndeki mevcut VM'lere bakarak kümenizin silindiğinden emin olun. Silinmezlerse VM'leri el ile silebilirsiniz. Ardından komutunu Restart-Service wssdagentçalıştırın. Yük devretme kümesindeki her düğümde bu komutu çalıştırın.

Günlükleri alma

Tüm podlarınızdan günlükleri almak için Get-AksHciLogs komutunu çalıştırın. Bu komut, çalışma dizininizde adlı akshcilogs.zip bir çıkış sıkıştırılmış klasörü oluşturur. Klasörün tam yolu akshcilogs.zip , aşağıdaki komutu çalıştırdıktan sonra çıkıştır:

Get-AksHciLogs

Bu hızlı başlangıçta, PowerShell kullanarak aks konağı ayarlamayı ve Kubernetes kümeleri oluşturmayı öğrendiniz. Ayrıca Bir Kubernetes kümesini ölçeklendirmek ve ile kubectlkümelere erişmek için PowerShell'i kullanmayı da öğrendinsiniz.

Sonraki adımlar