Azure Kubernetes Service için Azure NetApp Files SMB 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.

SMB birimleri kullanan uygulamalar için statik olarak yapılandırma

Bu bölümde, Azure NetApp Files'da SMB birimi oluşturma ve kapsayıcılı bir uygulamanın kullanması için birimi statik olarak Kubernetes'te kullanıma sunma açıklanmaktadır.

SMB Birimi oluşturma

  1. Daha sonraki kullanımlar için değişkenleri tanımlayın. myresourcegroup, mylocation, myaccountname, mypool1, premium, myfilepath, myvolsize, myvolname ve virtnetid değerlerini ortamınız için uygun bir değerle değiştirin. Dosya yolu tüm ANF hesaplarında benzersiz olmalıdır.

    RESOURCE_GROUP="myresourcegroup"
    LOCATION="mylocation"
    ANF_ACCOUNT_NAME="myaccountname"
    POOL_NAME="mypool1"
    SERVICE_LEVEL="premium" # Valid values are standard, premium, and ultra
    UNIQUE_FILE_PATH="myfilepath"
    VOLUME_SIZE_GIB="myvolsize"
    VOLUME_NAME="myvolname"
    VNET_ID="vnetId"
    SUBNET_ID="anfSubnetId"
    
  2. komutunu kullanarak az netappfiles volume create bir birim oluşturun.

    az netappfiles volume create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME \
        --pool-name $POOL_NAME \
        --name "$VOLUME_NAME" \
        --service-level $SERVICE_LEVEL \
        --vnet $VNET_ID \
        --subnet $SUBNET_ID \
        --usage-threshold $VOLUME_SIZE_GIB \
        --file-path $UNIQUE_FILE_PATH \
        --protocol-types CIFS
    

Etki alanı kimlik bilgileriyle gizli dizi oluşturma

  1. komutunu kullanarak kubectl create secret Active Directory (AD) sunucusuna erişmek için AKS kümenizde bir gizli dizi oluşturun. Bu gizli dizi, Kubernetes kalıcı birimi tarafından Azure NetApp Files SMB birimine erişmek için kullanılır. Gizli diziyi oluşturmak için aşağıdaki komutu kullanın; yerine USERNAME kullanıcı adınızı, PASSWORD parolanızı ve DOMAIN_NAME AD'nizin etki alanı adını yazın.

        kubectl create secret generic smbcreds --from-literal=username=USERNAME --from-literal=password="PASSWORD" --from-literal=domain='DOMAIN_NAME'
    
  2. Gizli dizinin oluşturulduğunu denetleyin.

       kubectl get secret
       NAME       TYPE     DATA   AGE
       smbcreds   Opaque   2      20h
    

SMB CSI sürücüsü yükleme

Kubernetes SMB'si PersistentVolumeoluşturmak için bir Kapsayıcı Depolama Arabirimi (CSI) sürücüsü yüklemeniz gerekir.

  1. Helm kullanarak kümenize SMB CSI sürücüsünü yükleyin. seçeneğini trueolarak ayarladığınızdan windows.enabled emin olun:

    helm repo add csi-driver-smb https://raw.githubusercontent.com/kubernetes-csi/csi-driver-smb/master/charts   
    helm install csi-driver-smb csi-driver-smb/csi-driver-smb --namespace kube-system --version v1.13.0 --set windows.enabled=true
    

    SMB CSI Sürücüsünü yüklemenin diğer yöntemleri için bkz . Kubernetes kümesine SMB CSI sürücü ana sürümünü yükleme.

  2. Denetleyici podunun csi-smb çalıştığını ve her çalışan düğümde komutunu kullanarak kubectl get pods çalışan bir pod olduğunu doğrulayın:

    kubectl get pods -n kube-system | grep csi-smb
    
    csi-smb-controller-68df7b4758-xf2m9   3/3     Running   0          3m46s
    csi-smb-node-s6clj                    3/3     Running   0          3m47s
    csi-smb-node-win-tfxvk                3/3     Running   0          3m47s
    

Kalıcı birimi oluşturma

  1. kullanarak biriminizin ayrıntılarını listeleyin az netappfiles volume show. Önceki bir adımda tanımlanmamışsa değişkenleri Azure NetApp Files hesabınızdan ve ortamınızdan uygun değerlerle değiştirin.

    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": "myvolname",
      ...
      "mountTargets": [
        {
          ...
          "
             "smbServerFqdn": "ANF-1be3.contoso.com",
          ...
        }
      ],
      ...
    }
    
  2. adlı pv-smb.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. Gerekirse değerini ile creationToken değiştirin myvolname ve değerini önceki adımdaki değeriyle smbServerFqdn değiştirinANF-1be3.contoso.com\myvolname. Ad kimlik bilgileri gizli dizinizi, önceki adımda oluşturduğunuz gizli dizinin bulunduğu ad alanıyla birlikte eklediğinizden emin olun.

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: anf-pv-smb
    spec:
      storageClassName: ""
      capacity:
        storage: 100Gi
      accessModes:
        - ReadWriteMany
      persistentVolumeReclaimPolicy: Retain
      mountOptions:
        - dir_mode=0777
        - file_mode=0777
        - vers=3.0
      csi:
        driver: smb.csi.k8s.io
        readOnly: false
        volumeHandle: myvolname  # make sure it's a unique name in the cluster
        volumeAttributes:
          source: \\ANF-1be3.contoso.com\myvolname
        nodeStageSecretRef:
          name: smbcreds
          namespace: default
    
  3. komutunu kullanarak kubectl apply kalıcı birimi oluşturun:

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

    kubectl describe pv pv-smb
    

Kalıcı birim talebi oluşturma

  1. Bir dosya adı pvc-smb.yaml oluşturun ve aşağıdaki YAML'de kopyalayın.

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

    kubectl apply -f pvc-smb.yaml
    

    Kubectl describe komutunu kullanarak kalıcı birim talebi durumunun Bağlı olduğunu doğrulayın:

    kubectl describe pvc pvc-smb
    

Pod ile bağlama

  1. adlı iis-smb.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. Bu dosya, birimi yoluna /inetpub/wwwrootbağlamak üzere bir Internet Information Services pod'u oluşturmak için kullanılır.

    apiVersion: v1
    kind: Pod 
    metadata:
      name: iis-pod
      labels:
         app: web
    spec:
      nodeSelector:
        "kubernetes.io/os": windows
      volumes:
      - name: smb
        persistentVolumeClaim:
          claimName: anf-pvc-smb 
      containers:
      - name: web
        image: mcr.microsoft.com/windows/servercore/iis:windowsservercore 
        resources:
          limits:
            cpu: 1
            memory: 800M
        ports:
          - containerPort: 80
        volumeMounts:
        - name: smb
          mountPath: "/inetpub/wwwroot"
          readOnly: false
    
  2. kubectl apply komutunu kullanarak pod oluşturun:

    kubectl apply -f iis-smb.yaml
    
  3. kubectl describe komutunu kullanarak podunun Çalışıyor olduğunu ve /inetpub/wwwroot SMB'den bağlandığını doğrulayın:

    kubectl describe pod iis-pod
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    Name:         iis-pod
    Namespace:    default
    Priority:     0
    Node:         akswin000001/10.225.5.246
    Start Time:   Fri, 05 May 2023 09:34:41 -0400
    Labels:       app=web
    Annotations:  <none>
    Status:       Running
    IP:           10.225.5.248
    IPs:
      IP:  10.225.5.248
    Containers:
      web:
        Container ID:   containerd://39a1659b6a2b6db298df630237b2b7d959d1b1722edc81ce9b1bc7f06237850c
        Image:          mcr.microsoft.com/windows/servercore/iis:windowsservercore
        Image ID:       mcr.microsoft.com/windows/servercore/iis@sha256:0f0114d0f6c6ee569e1494953efdecb76465998df5eba951dc760ac5812c7409
        Port:           80/TCP
        Host Port:      0/TCP
        State:          Running
          Started:      Fri, 05 May 2023 09:34:55 -0400
        Ready:          True
        Restart Count:  0
        Limits:
          cpu:     1
          memory:  800M
        Requests:
          cpu:        1
          memory:     800M
        Environment:  <none>
        Mounts:
          /inetpub/wwwroot from smb (rw)
          /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-mbnv8 (ro)
    ...
    
  4. Pod'a bağlanmak için kubectl exec komutunu kullanarak biriminizin poda bağlandığını doğrulayın ve ardından birimin bağlanıp bağlanmadığını ve boyutun sağladığınız birimin boyutuyla eşleşip eşleşmediğini denetlemek için doğru dizindeki komutu kullanındir.

    kubectl exec -it iis-pod –- cmd.exe
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    Microsoft Windows [Version 10.0.20348.1668]
    (c) Microsoft Corporation. All rights reserved.
    
    C:\>cd /inetpub/wwwroot
    
    C:\inetpub\wwwroot>dir
     Volume in drive C has no label.
     Volume Serial Number is 86BB-AA55
    
     Directory of C:\inetpub\wwwroot
    
    05/04/2023  08:15 PM    <DIR>          .
    05/04/2023  08:15 PM    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  107,373,838,336 bytes free
    

SMB birimleri kullanan uygulamalar için dinamik olarak yapılandırma

Bu bölümde, Azure NetApp Files üzerinde dinamik olarak SMB birimi oluşturmak ve bunu kapsayıcılı bir Windows uygulamasına otomatik olarak bağlamak için Astra Trident'in nasıl kullanılacağı açıklanmaktadır.

Astra Trident'i yükleme

SMB birimlerini dinamik olarak sağlamak için Astra Trident sürüm 22.10 veya üzerini yüklemeniz gerekir. SMB birimlerinin dinamik olarak sağlanması için windows çalışan düğümleri gerekir.

Astra Trident, NetApp'in Kubernetes için özel olarak oluşturulmuş dinamik depolama sağlama hizmetidir. Astra Trident'in endüstri standardı Kapsayıcı Depolama Arabirimi (CSI) sürücüsünü kullanarak Kubernetes uygulamaları için depolama tüketimini basitleştirin. Astra Trident, Kubernetes kümelerine pod olarak dağıtır ve Kubernetes iş yükleriniz için dinamik depolama düzenleme hizmetleri sağlar.

Trident, Trident işleci (el ile veya Helm kullanılarak) veya tridentctlkullanılarak yüklenebilir. Bu yükleme yöntemleri ve nasıl çalıştıkları hakkında daha fazla bilgi edinmek için Yükleme Kılavuzu'na bakın.

Helm kullanarak Astra Trident'i yükleme

Bu yöntemi kullanarak Astra Trident'i yüklemek için iş istasyonunuza Helm yüklenmelidir. Astra Trident'i yüklemenin diğer yöntemleri için bkz . Astra Trident Yükleme Kılavuzu. Kümede Windows çalışan düğümleriniz varsa, windows'un herhangi bir yükleme yöntemiyle etkinleştirdiğinizden emin olun.

  1. Windows çalışan düğümleri olan bir kümede Helm kullanarak Astra Trident'i yüklemek için aşağıdaki komutları çalıştırın:

    helm repo add netapp-trident https://netapp.github.io/trident-helm-chart
    
    helm install trident netapp-trident/trident-operator --version 23.04.0  --create-namespace --namespace trident –-set windows=true
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    NAME: trident
    LAST DEPLOYED: Fri May  5 14:23:05 2023
    NAMESPACE: trident
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    NOTES:
    Thank you for installing trident-operator, which will deploy and manage NetApp's Trident CSI
    storage provisioner for Kubernetes.
    
    Your release is named 'trident' and is installed into the 'trident' namespace.
    Please note that there must be only one instance of Trident (and trident-operator) in a Kubernetes cluster.
    
    To configure Trident to manage storage resources, you will need a copy of tridentctl, which is available in pre-packaged Trident releases.  You may find all Trident releases and source code online at https://github.com/NetApp/trident.
    
    To learn more about the release, try:
    
      $ helm status trident
      $ helm get all trident
    
  2. Astra Trident'in başarıyla yüklendiğini onaylamak için aşağıdaki kubectl describe komutu çalıştırın:

    kubectl describe torc trident
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    Name:         trident
    Namespace:    
    Labels:       app.kubernetes.io/managed-by=Helm
    Annotations:  meta.helm.sh/release-name: trident
                  meta.helm.sh/release-namespace: trident
    API Version:  trident.netapp.io/v1
    Kind:         TridentOrchestrator
    Metadata:
        ...
    Spec:
      IPv6:                  false
      Autosupport Image:     docker.io/netapp/trident-autosupport:23.04
      Autosupport Proxy:     <nil>
      Disable Audit Log:     true
      Enable Force Detach:   false
      Http Request Timeout:  90s
      Image Pull Policy:     IfNotPresent
      k8sTimeout:            0
      Kubelet Dir:           <nil>
      Log Format:            text
      Log Layers:            <nil>
      Log Workflows:         <nil>
      Namespace:             trident
      Probe Port:            17546
      Silence Autosupport:   false
      Trident Image:         docker.io/netapp/trident:23.04.0
      Windows:               true
    Status:
      Current Installation Params:
        IPv6:                       false
        Autosupport Hostname:       
        Autosupport Image:          docker.io/netapp/trident-autosupport:23.04
        Autosupport Proxy:          
        Autosupport Serial Number:  
        Debug:                      false
        Disable Audit Log:          true
        Enable Force Detach:        false
        Http Request Timeout:       90s
        Image Pull Policy:          IfNotPresent
        Image Pull Secrets:
        Image Registry:       
        k8sTimeout:           30
        Kubelet Dir:          /var/lib/kubelet
        Log Format:           text
        Log Layers:           
        Log Level:            info
        Log Workflows:        
        Probe Port:           17546
        Silence Autosupport:  false
        Trident Image:        docker.io/netapp/trident:23.04.0
      Message:                Trident installed
      Namespace:              trident
      Status:                 Installed
      Version:                v23.04.0
    Events:
      Type    Reason      Age   From                        Message
      ----    ------      ----  ----                        -------
      Normal  Installing  74s   trident-operator.netapp.io  Installing Trident
      Normal  Installed   46s   trident-operator.netapp.io  Trident installed
    

Arka uç oluşturma

Astra Trident'e Azure NetApp Files aboneliği ve birimleri oluşturması gereken yer hakkında bilgi vermek için bir arka uç oluşturulmalıdır. Arka uçlar hakkında daha fazla bilgi için bkz . Azure NetApp Files arka uç yapılandırma seçenekleri ve örnekleri.

  1. adlı backend-secret-smb.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. ve clientSecret değerini Client ID ortamınız için doğru değerlerle değiştirin.

    apiVersion: v1
    kind: Secret
    metadata:
      name: backend-tbc-anf-secret
    type: Opaque
    stringData:
      clientID: 00001111-aaaa-2222-bbbb-3333cccc4444
      clientSecret: rR0rUmWXfNioN1KhtHisiSAnoTherboGuskey6pU
    
  2. adlı backend-anf-smb.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın. ClientID, , clientSecret, subscriptionID, tenantID, locationve serviceLevel değerlerini ortamınız için doğru değerlerle değiştirin. tenantID, clientIDveclientSecret, Azure NetApp Files hizmeti için yeterli izinlere sahip Microsoft Entra Id'deki bir uygulama kaydından bulunabilir. Uygulama kaydı, Azure tarafından önceden tanımlanmış Sahip veya Katkıda Bulunan rolünü içerir. Azure konumu en az bir temsilci alt ağı içermelidir. , serviceLevel AKS iş yükleri serviceLevel için Azure NetApp Files'ı yapılandırma başlığındaki kapasite havuzu için yapılandırılan ile eşleşmelidir.

    apiVersion: trident.netapp.io/v1
    kind: TridentBackendConfig
    metadata:
      name: backend-tbc-anf-smb
    spec:
      version: 1
      storageDriverName: azure-netapp-files
      subscriptionID: aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
      tenantID: aaaabbbb-0000-cccc-1111-dddd2222eeee
      location: eastus
      serviceLevel: Premium
      credentials:
        name: backend-tbc-anf-secret
      nasType: smb
    
  3. komutunu kullanarak kubectl apply gizli diziyi ve arka ucu oluşturun.

    gizli dizisini oluşturun:

    kubectl apply -f backend-secret.yaml -n trident
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    secret/backend-tbc-anf-secret created
    

    Arka ucu oluşturun:

    kubectl apply -f backend-anf.yaml -n trident
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    tridentbackendconfig.trident.netapp.io/backend-tbc-anf created
    
  4. Aşağıdaki komutu çalıştırarak arka ucun oluşturulduğunu doğrulayın:

    kubectl get tridentbackends -n trident
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    NAME        BACKEND               BACKEND UUID
    tbe-9shfq   backend-tbc-anf-smb   09cc2d43-8197-475f-8356-da7707bae203
    

SMB için etki alanı kimlik bilgileriyle gizli dizi oluşturma

  1. KOMUTUNU kullanarak kubectl create secret AD sunucusuna erişmek için AKS kümenizde bir gizli dizi oluşturun. Bu bilgiler Kubernetes kalıcı birimi tarafından Azure NetApp Files SMB birimine erişmek için kullanılır. öğesini etki alanı adınız ve kullanıcı adınız PASSWORD ve parolanızla değiştirerek DOMAIN_NAME\USERNAME aşağıdaki komutu kullanın.

    kubectl create secret generic smbcreds --from-literal=username=DOMAIN_NAME\USERNAME –from-literal=password="PASSWORD" 
    
  2. Gizli dizinin oluşturulduğunu doğrulayın.

    kubectl get secret
    

    Çıkış aşağıdaki örneğe benzer:

    NAME       TYPE     DATA   AGE
    smbcreds   Opaque   2      2h
    

Depolama sınıfı oluşturma

Depolama sınıfı, bir depolama biriminin kalıcı bir birimle dinamik olarak nasıl oluşturulduğunu tanımlamak için kullanılır. Azure NetApp Files birimlerini kullanmak için bir depolama sınıfı oluşturulmalıdır.

  1. adlı anf-storageclass-smb.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: anf-sc-smb
    provisioner: csi.trident.netapp.io
    allowVolumeExpansion: true
    parameters:
      backendType: "azure-netapp-files"
      trident.netapp.io/nasType: "smb"
      csi.storage.k8s.io/node-stage-secret-name: "smbcreds"
      csi.storage.k8s.io/node-stage-secret-namespace: "default"
    
  2. komutunu kullanarak depolama sınıfını kubectl apply oluşturun:

    kubectl apply -f anf-storageclass-smb.yaml
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    storageclass/anf-sc-smb created
    
  3. kubectl get Depolama sınıfının durumunu görüntülemek için komutunu çalıştırın:

    kubectl get sc anf-sc-smb
    NAME         PROVISIONER             RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
    anf-sc-smb   csi.trident.netapp.io   Delete          Immediate           true                   13s
    

PVC oluşturma

Kalıcı birim talebi (PVC), bir kullanıcı tarafından depolama isteğidir. Kalıcı bir birim talebi oluşturuldukten sonra Astra Trident otomatik olarak bir Azure NetApp Files SMB paylaşımı oluşturur ve Kubernetes iş yüklerinin kullanımına sunar.

  1. adlı anf-pvc-smb.yaml bir dosya oluşturun ve aşağıdaki YAML'yi kopyalayın. Bu örnekte, erişimle ReadWriteMany 100 GiB birim oluşturulur ve Depolama sınıfı oluşturma bölümünde oluşturulan depolama sınıfını kullanır.

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: anf-pvc-smb
    spec:
      accessModes:
        - ReadWriteMany
      resources:
        requests:
          storage: 100Gi
      storageClassName: anf-sc-smb
    
  2. komutuyla kubectl apply kalıcı birim talebi oluşturun:

    kubectl apply -f anf-pvc-smb.yaml
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    persistentvolumeclaim/anf-pvc-smb created
    
  3. Kalıcı birim talebi hakkındaki bilgileri görüntülemek için komutunu kubectl get çalıştırın:

    kubectl get pvc
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    NAME          STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    anf-pvc-smb   Bound    pvc-209268f5-c175-4a23-b61b-e34faf5b6239   100Gi      RWX            anf-sc-smb     5m38s
    
  4. Astra Trident tarafından oluşturulan kalıcı birimi görüntülemek için aşağıdaki kubectl get komutu çalıştırın:

    kubectl get pv
    NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                 STORAGECLASS   REASON   AGE
    pvc-209268f5-c175-4a23-b61b-e34faf5b6239   100Gi      RWX            Delete           Bound    default/anf-pvc-smb   anf-sc-smb              5m52s
    

Kalıcı birimi kullanma

PVC oluşturulduktan sonra, Azure NetApp Files birimine erişmek için bir pod başlatılabilir. Aşağıdaki bildirim, önceki adımda oluşturulan Azure NetApp Files SMB paylaşımını bağlayan bir Internet Information Services (IIS) podunu tanımlamak için kullanılabilir. Bu örnekte, birim konumuna /inetpub/wwwrootbağlanır.

  1. Adlı anf-iis-pod.yaml bir dosya oluşturun ve aşağıdaki YAML'de kopyalayın:

    apiVersion: v1
    kind: Pod 
    metadata:
      name: iis-pod
      labels:
         app: web
    spec:
      nodeSelector:
        "kubernetes.io/os": windows
      volumes:
      - name: smb
        persistentVolumeClaim:
          claimName: anf-pvc-smb 
      containers:
      - name: web
        image: mcr.microsoft.com/windows/servercore/iis:windowsservercore 
        resources:
          limits:
            cpu: 1
            memory: 800M
        ports:
          - containerPort: 80
        volumeMounts:
        - name: smb
          mountPath: "/inetpub/wwwroot"
          readOnly: false
    
  2. Komutunu kullanarak kubectl apply dağıtımı oluşturun:

    kubectl apply -f anf-iis-deploy-pod.yaml
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    pod/iis-pod created
    

    komutunu kullanarak kubectl describe pod'un çalıştığını ve SMB aracılığıyla bağlandığını /inetpub/wwwroot doğrulayın:

    kubectl describe pod iis-pod
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    Name:         iis-pod
    Namespace:    default
    Priority:     0
    Node:         akswin000001/10.225.5.246
    Start Time:   Fri, 05 May 2023 15:16:36 -0400
    Labels:       app=web
    Annotations:  <none>
    Status:       Running
    IP:           10.225.5.252
    IPs:
      IP:  10.225.5.252
    Containers:
      web:
        Container ID:   containerd://1e4959f2b49e7ad842b0ec774488a6142ac9152ca380c7ba4d814ae739d5ed3e
        Image:          mcr.microsoft.com/windows/servercore/iis:windowsservercore
        Image ID:       mcr.microsoft.com/windows/servercore/iis@sha256:0f0114d0f6c6ee569e1494953efdecb76465998df5eba951dc760ac5812c7409
        Port:           80/TCP
        Host Port:      0/TCP
        State:          Running
          Started:      Fri, 05 May 2023 15:16:44 -0400
        Ready:          True
        Restart Count:  0
        Limits:
          cpu:     1
          memory:  800M
        Requests:
          cpu:        1
          memory:     800M
        Environment:  <none>
        Mounts:
          /inetpub/wwwroot from smb (rw)
          /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-zznzs (ro)
    
  3. Pod'a bağlanmak için kubectl exec komutunu kullanarak biriminizin poda bağlandığını doğrulayın. Ardından doğru dizindeki komutunu kullanarak dir birimin takılı olup olmadığını ve boyutun sağladığınız birimin boyutuyla eşleşip eşleşmediğini denetleyin.

    kubectl exec -it iis-pod –- cmd.exe
    

    Komutun çıkışı aşağıdaki örneğe benzer:

    Microsoft Windows [Version 10.0.20348.1668]
    (c) Microsoft Corporation. All rights reserved.
    
    C:\>cd /inetpub/wwwroot
    
    C:\inetpub\wwwroot>dir
     Volume in drive C has no label.
     Volume Serial Number is 86BB-AA55
    
     Directory of C:\inetpub\wwwroot
    
    05/05/2023  01:38 AM    <DIR>          .
    05/05/2023  01:38 AM    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  107,373,862,912 bytes free
    
    C:\inetpub\wwwroot>exit
    

Sonraki adımlar

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