1
votes

I deployed my first container, I got info:

deployment.apps/frontarena-ads-deployment created

but then I saw my container creation is stuck in Waiting status. Then I saw the logs using kubectl describe pod frontarena-ads-deployment-5b475667dd-gzmlp and saw MountVolume error which I cannot figure out why it is thrown:

Warning FailedMount 9m24s kubelet MountVolume.SetUp failed for volume "ads-filesharevolume" : mount failed: exit status 32 Mounting command: systemd-run Mounting arguments: --description=Kubernetes transient mount for /var/lib/kubelet/pods/85aa3bfa-341a-4da1-b3de-fb1979420028/volumes/kubernetes.io~azure-file/ads-filesharevolume --scope -- mount -t cifs -o username=frontarenastorage,password=mypassword,file_mode=0777,dir_mode=0777,vers=3.0 //frontarenastorage.file.core.windows.net/azurecontainershare /var/lib/kubelet/pods/85aa3bfa-341a-4da1-b3de-fb1979420028/volumes/kubernetes.io~azure-file/ads-filesharevolume Output: Running scope as unit run-rf54d5b5f84854777956ae0e25810bb94.scope. mount error(115): Operation now in progress Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

Before I run the deployment I created a secret in Azure, using the already created azure file share, which I referenced within the YAML.

$AKS_PERS_STORAGE_ACCOUNT_NAME="frontarenastorage"
$STORAGE_KEY="mypassword"
kubectl create secret generic fa-fileshare-secret --from-literal=azurestorageaccountname=$AKS_PERS_STORAGE_ACCOUNT_NAME --from-literal=azurestorageaccountkey=$STORAGE_KEY

In that file share I have folders and files which I need to mount and I reference azurecontainershare in YAML: enter image description here

My YAML looks like this:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: frontarena-ads-deployment
  labels:
    app: frontarena-ads-deployment
spec:
  replicas: 1
  template:
    metadata:
      name: frontarena-ads-aks-test
      labels:
        app: frontarena-ads-aks-test
    spec:
      containers:
      - name: frontarena-ads-aks-test
        image: faselect-docker.dev/frontarena/ads:test1
        imagePullPolicy: Always
        ports:
          - containerPort: 9000
        volumeMounts:
          - name: ads-filesharevolume
            mountPath: /opt/front/arena/host
      volumes:
      - name: ads-filesharevolume
        azureFile:
          secretName: fa-fileshare-secret
          shareName: azurecontainershare
          readOnly: false
      imagePullSecrets:
        - name: fa-repo-secret
  selector:
    matchLabels:
      app: frontarena-ads-aks-test
1
Is the storage account in the same region as the AKS cluster?Charles Xu
Wow!!! AKS cluster is West US 2 Storage Account is East US 2 Is this a problem? Do you have some link or URL for this ? can you explain in more details?AndreyDonald
@CharlesXu I would like to send them some official information/documentation if they messed up with this region mixing, if that can really be an issue...AndreyDonald
It's just a guess. In fact, the storage account region does not matter. I already test it. And it seems there is no problem in your YAML file.Charles Xu
Are there more details about the error?Charles Xu

1 Answers

1
votes

The Issue was because of the different Azure Regions in which AKS cluster and Azure File Share are deployed. If they are in the same Region you would not have this issue.