Aracılığıyla paylaş


Arc tarafından etkinleştirilen AKS ile kalıcı birimleri kullanma

Şunlar için geçerlidir: Azure Stack HCI 22H2 üzerinde AKS, Windows Server'da AKS

Bu makalede, Azure Arc (AKS Arc) tarafından etkinleştirilen AKS'de Kubernetes podlarıyla kullanılmak üzere uzun süreli depolama sağlayan kalıcı birimleri sağlama, kullanma ve silme işlemleri açıklanmaktadır.

Kalıcı birim , Kubernetes podlarıyla kullanılmak üzere sağlanan bir depolama parçasını temsil eder. Kalıcı birim bir veya daha fazla pod tarafından kullanılabilir ve uzun süreli depolama için kullanılır. Ayrıca pod veya düğüm yaşam döngülerinden bağımsızdır.

Hem Windows hem de Linux düğümleri için kalıcı birim sağlayabilirsiniz ancak bu makalede, Windows uygulamanızda kullanmak üzere kalıcı birim oluşturma açıklanmaktadır. Daha fazla bilgi için bkz . Kubernetes'te kalıcı birimler.

Başlamadan önce

Başlamak için yapmanız gerekenler şunlardır:

Kalıcı birim talebi oluşturma

Depolama sınıfına göre depolamayı otomatik olarak sağlamak için kalıcı birim talebi (PVC) kullanılır. Birim talebi oluşturmak için önce adlı pvc-akshci-csi.yaml bir dosya oluşturun ve aşağıdaki YAML tanımını kopyalayıp yapıştırın. PVC, ReadWriteOnce erişimine sahip 10 GB boyutunda bir disk gerektirir. Varsayılan depolama sınıfı, depolama sınıfı (vhdx) olarak belirtilir.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
 name: pvc-akshci-csi
spec:
 accessModes:
 - ReadWriteOnce
 resources:
  requests:
   storage: 10Gi

Birimi oluşturmak için aşağıdaki komutları Azure Stack HCI kümesindeki sunuculardan birinde bir yönetim PowerShell oturumunda çalıştırın. Sunucuya bağlanmak için Enter-PSSession veya Uzak Masaüstü gibi bir yöntem kullanın.

kubectl create -f pvc-akshci-csi.yaml 

Aşağıdaki çıkış, kalıcı birim talebinizin başarıyla oluşturulduğunu gösterir:

Çıktı:

persistentvolumeclaim/pvc-akshci-csi created

Kalıcı birim kullanma

Kalıcı birim kullanmak için adlı winwebserver.yamlbir dosya oluşturun ve aşağıdaki YAML tanımını kopyalayıp yapıştırın. Ardından kalıcı birim talebine ve vhdx'e erişimi olan bir pod oluşturun.

Aşağıdaki YAML tanımında, mountPath bir birimi kapsayıcıya bağlama yoludur. Başarılı bir pod oluşturma işleminden sonra, C:\ içinde oluşturulan mnt alt dizinini ve mnt içinde oluşturulan akshciscsi alt dizinini görürsünüz:

apiVersion: apps/v1 
kind: Deployment 
metadata: 
  labels: 
    app: win-webserver 
  name: win-webserver 
spec: 
  replicas: 1 
  selector: 
    matchLabels: 
      app: win-webserver 
  template: 
    metadata: 
      labels: 
        app: win-webserver 
      name: win-webserver 
    spec: 
     containers: 
      - name: windowswebserver 
        image: mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019 
        ports:  
          - containerPort: 80    
        volumeMounts: 
            - name: akshciscsi 
              mountPath: "/mnt/akshciscsi" 
     volumes: 
        - name: akshciscsi 
          persistentVolumeClaim: 
            claimName:  pvc-akshci-csi 
     nodeSelector: 
      kubernetes.io/os: windows 

Bu YAML tanımına sahip bir pod oluşturmak için şunu çalıştırın:

kubectl create -f winwebserver.yaml 

Pod'un çalıştığından emin olmak için aşağıdaki komutu yürütür. Görüntüyü çekmek zaman aldığından pod çalışır duruma gelene kadar birkaç dakika bekleyin:

kubectl get pods -o wide 

Podunuz çalıştırıldıktan sonra aşağıdaki komutu çalıştırarak pod durumunu görüntüleyin:

kubectl.exe describe pod %podName% 

Biriminizin poda bağlandığını doğrulamak için aşağıdaki komutu çalıştırın:

kubectl exec -it %podname% cmd.exe 

Kalıcı birim talebi silme

Kalıcı birim talebi silmeden önce aşağıdaki komutu çalıştırarak uygulama dağıtımını silmeniz gerekir:

kubectl delete deployments win-webserver

Ardından şunu çalıştırarak kalıcı birim talebi silebilirsiniz:

kubectl delete PersistentVolumeClaim pvc-akshci-csi

Sonraki adımlar