2016-08-21 3 views
1

Я пытаюсь настроить Pet Set в Kubernetes 1.3. Существует сервер хранения NFS, который работает так, как ожидалось, с Persistent Volumes, Claims и Pods. Однако, когда я создаю Pet Set, VolumeClaimTemplate никогда не привязан к постоянному тому, поддерживаемому NFS.Настройка Kubernetes Pet Set с NFS

Ниже приводится определение PV -

apiVersion: v1 
kind: PersistentVolume 
metadata: 
    name: janipv 
spec: 
    capacity: 
    storage: 3Gi 
    accessModes: 
    - ReadWriteMany 
    persistentVolumeReclaimPolicy: Recycle 
    nfs: 
    path: /var/data/test 
    server: 172.17.4.101 

Когда я попробовать запустить Pet Set sample в документации, я вижу следующее сообщение.

kubelet describe pv 

{persistentvolume-controller }   Warning   ProvisioningFailed  No provisioner plugin found for the claim! 

Такая же конфигурация работает нормально, когда я использую обычный Pod вместо Pet Set.

ответ

0

У нас нет динамического устройства NFS, как показано на рисунке: http://kubernetes.io/docs/user-guide/petset/#alpha-limitations (если вы не написали, в этом случае мы можем начать отладку). Сам volumeclaimtemplate никогда не привязан ни к чему. Это шаблон для создания заявок на объем, т. Е. Контроллер создаст pvc-0, pvc-1 ... для pet-0, pet-1 ... эти претензии привязаны к постоянным томам с помощью устройства динамического объема (как в отличие от процесса создания статического тома, когда человек создает pv и присоединяет его к pvc).

Вы можете прикрепить существующий pv к одной из претензий на питомник, как и для модулей контроллера репликации, установив поле volumeName в pvc.

+0

Спасибо Prashanth! У меня есть три вопроса: 1) Означает ли это Если я создаю ПВХ перед рукой с соглашением об именах PVC-0 на PVC-n, он будет связан контроллером во время выполнения? 2) Во время альфы, какая динамическая система обеспечения поддерживается? 3) Если я использую hostPath, указывающий на общий ресурс NFS, получаю ли я ожидаемый результат с Pet Set? –

+0

Для вас создан только пвх. Связывание - это работа помощника (которого нет в вашем случае, поэтому Provender == human). Если вы находитесь в облачном провайдере, для вас нужно запустить правильный ассистент, если вы на металле, вам нужно запустить его (я уверен, что в работе работают ceph и gluster: https://github.com/kubernetes/kubernetes/pull/30888, https://github.com/kubernetes/kubernetes/pull/31251). –

Смежные вопросы