Общая папка Azure не подключается к модулю
Я пытаюсь смонтировать общий доступ к файлам Azure в модуль kubernetes, но получаю сообщение об ошибке следующим образом:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 12s default-scheduler Successfully assigned azurepod to k8s-agent-e90e3bbe-0
Normal SuccessfulMountVolume 12s kubelet, k8s-agent-e90e3bbe-0 MountVolume.SetUp succeeded for volume "default-token-6v6lb"
Warning FailedMount 4s (x5 over 12s) kubelet, k8s-agent-e90e3bbe-0 MountVolume.SetUp failed for volume "azure" : mount failed: exitstatus 32
Mounting command: mount
Mounting arguments: //006ujp7qo4bhmfmagnt0.file.core.windows.net/persistshare /var/lib/kubelet/pods/64dadbe9-dff0-11e7-a005-000d3a279b90/volumes/kubernetes.io~azure-file/azure cifs [vers=3.0,username=006ujp7qo4bhmfmagnt0,password=key1,dir_mode=0777,file_mode=0777]
Output: mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
Пожалуйста, найдите ниже файл yaml, который я использовал для создания модуля:
apiVersion: v1
kind: Pod
metadata:
name: azurepod
spec:
containers:
- image: kubernetes/pause
name: azure
volumeMounts:
- name: azure
mountPath: /mnt/azure
volumes:
- name: azure
azureFile:
secretName: azure-secret
shareName: persistshare
readOnly: false
1 ответ
Ошибка "Отказано в доступе" обычно указывает на то, что проблема связана с вашей учетной записью. Kubernetes нужны учетные данные для доступа к общей папке. Эти учетные данные хранятся в секрете Kubernetes, на который ссылаются при создании модуля Kubernetes. При создании секрета Kubernetes секретные значения должны быть закодированы в base64. Если вы этого еще не сделали, создайте секрет Kubernetes в точности, как указано в этом документе, сначала закодируйте имя учетной записи хранения. При необходимости замените $AKS_PERS_STORAGE_ACCOUNT_NAME на имя учетной записи хранения Azure и сообщите нам, как это происходит.**
Примечание: в настоящее время AKS не поддерживает контейнеры Windows. Для этого необходимо развернуть кластер Windows Kubernetes с помощью ACS Engine. Механизм ACS - https://github.com/Azure/acs-engine С этим на месте есть инструкции по настройке тома с использованием диска Azure: https://github.com/andyzhangx/Demo/tree/master/windows/azuredisk