Aracılığıyla paylaş


Azure Kubernetes Service için Azure NetApp Files çift protokol birimleri sağlama

Azure Kubernetes Service için Azure NetApp Files'ı yapılandırdıktan sonra, Azure Kubernetes Service için Azure NetApp Files birimleri sağlayabilirsiniz.

Azure NetApp Files, NFS (NFSv3 veya NFSv4.1), SMB ve çift protokollü (NFSv3 ve SMB ya da NFSv4.1 ve SMB) kullanan birimleri destekler.

Bu makalede, NFS veya SMB kullanarak çift protokol erişimi için birimleri statik olarak sağlama işlemi gösterilmektedir.

Başlamadan önce

  • Zaten bir çift protokollü birim oluşturduğunuzdan emin olun. Bkz. Azure NetApp Files için çift protokol birimi oluşturma.

Azure Kubernetes Service'te çift protokollü birim sağlama

Bu bölümde, Azure NetApp Files çift protokollü birimin statik olarak Kubernetes'te nasıl kullanıma sağlandığı açıklanmaktadır. Hem SMB hem de NFS protokolleri için yönergeler sağlanır. Aynı birimi SMB aracılığıyla Windows çalışan düğümlerine ve NFS aracılığıyla Linux çalışan düğümlerine kullanıma açabilirsiniz.

NFS için kalıcı birim oluşturma

  1. Daha sonraki kullanımlar için değişkenleri tanımlayın. myresourcegroup, myaccountname, mypool1, myvolname değerini çift protokol biriminizden uygun bir değerle değiştirin.

    RESOURCE_GROUP="myresourcegroup"
    ANF_ACCOUNT_NAME="myaccountname"
    POOL_NAME="mypool1"
    VOLUME_NAME="myvolname"
    
  2. komutunu kullanarak biriminizin ayrıntılarını listeleyin az netappfiles volume show .

    az netappfiles volume show \
        --resource-group $RESOURCE_GROUP \
        --account-name $ANF_ACCOUNT_NAME \
        --pool-name $POOL_NAME \
        --volume-name $VOLUME_NAME -o JSON
    

    Aşağıdaki çıkış, gerçek değerlerle yürütülen yukarıdaki komutun bir örneğidir.

    {
      ...
      "creationToken": "myfilepath2",
      ...
      "mountTargets": [
        {
          ...
          "ipAddress": "10.0.0.4",
          ...
        }
      ],
      ...
    }
    
  3. adlı pv-nfs.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. Sunucunun önceki adımdaki çıkış IP adresiyle eşleştiğinden ve yolun yukarıdaki çıkışla eşleştiğinden creationToken emin olun. Kapasitenin 2. Adımdaki birim boyutuyla da eşleşmesi gerekir.

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: pv-nfs
    spec:
      capacity:
        storage: 100Gi
      accessModes:
        - ReadWriteMany
      mountOptions:
        - vers=3
      nfs:
        server: 10.0.0.4
        path: /myfilepath2
    
  4. komutunu kullanarak kubectl apply kalıcı birimi oluşturun:

    kubectl apply -f pv-nfs.yaml
    
  5. Komutunu kullanarak kubectl describe kalıcı birimin durumunun Kullanılabilir olduğunu doğrulayın:

    kubectl describe pv pv-nfs
    

NFS için kalıcı birim talebi oluşturma

  1. adlı pvc-nfs.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. Bu bildirim, oluşturduğunuz PV ile eşleşen 100Gi depolama ve ReadWriteMany erişim modu için adlı pvc-nfs bir PVC oluşturur.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: pvc-nfs
    spec:
      accessModes:
        - ReadWriteMany
      storageClassName: ""
      resources:
        requests:
          storage: 100Gi
    
  2. komutunu kullanarak kubectl apply kalıcı birim talebi oluşturun:

    kubectl apply -f pvc-nfs.yaml
    
  3. Komutunu kullanarak kalıcı birim talebi durumunun kubectl describe Bağlı olduğunu doğrulayın:

    kubectl describe pvc pvc-nfs
    

NFS kullanarak pod içinde bağlama

  1. adlı nginx-nfs.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. Bu bildirim, kalıcı birim talebi kullanan bir nginx pod tanımlar.

    kind: Pod
    apiVersion: v1
    metadata:
      name: nginx-nfs
    spec:
      containers:
      - image: mcr.microsoft.com/oss/nginx/nginx:1.15.5-alpine
        name: nginx-nfs
        command:
        - "/bin/sh"
        - "-c"
        - while true; do echo $(date) >> /mnt/azure/outfile; sleep 1; done
        volumeMounts:
        - name: disk01
          mountPath: /mnt/azure
      volumes:
      - name: disk01
        persistentVolumeClaim:
          claimName: pvc-nfs
    
  2. kubectl-apply komutunu kullanarak kubectl applypod oluşturun:

    kubectl apply -f nginx-nfs.yaml
    
  3. komutunu kullanarak pod'un kubectl apply Çalışıyor olduğunu doğrulayın:

    kubectl describe pod nginx-nfs
    
  4. Pod'a bağlanmak için komutunu kullanarak kubectl exec biriminizin poda bağlandığını doğrulayın ve ardından birimin takılı olup olmadığını denetlemek için kullanın df -h .

    kubectl exec -it nginx-nfs -- sh
    
    / # df -h
    Filesystem             Size  Used Avail Use% Mounted on
    ...
    10.0.0.4:/myfilepath2  100T  384K  100T   1% /mnt/azure
    ...
    

Sonraki adımlar

Astra Trident, Azure NetApp Files ile birçok özelliği destekler. Daha fazla bilgi için bkz.