Eu instalei o OpenShift Origin da instalação mais recente do ansible. (CentOS 7 - 3 mestres e 7 nós)
[root@master-1 ~]# openshift version
openshift v1.1.0.1-1-g2c6ff4b
kubernetes v1.1.0-origin-1107-g4c8e6f4
etcd 2.1.2
Estou tentando criar armazenamento persistente CEPH via plug-in rbd . Eu tenho um cluster Ceph funcionando e segui o guia oficial para ceph da documentação:
https://docs.openshift.org/latest/install_config/persistent_storage/persistent_storage_ceph_rbd.html
Consigo criar persistVolume e persistentVolumeClaim sem problemas, mas quando o kubernetes tenta montar o volume, reporta este erro:
FailedMount {kubelet node-4} Unable to mount volumes for pod "php55-rzat2_xyz": unsupported volume type
Pod FailedSync {kubelet node-4} Error syncing pod, skipping: unsupported volume type
Instalei os pacotes ceph , ceph-common e ceph-fuse em todos os nós (e, com certeza, também instalei nos mestres).
persistVolume é reivindicado por persistVolumeClaim como esperado.
pv arquivo de configuração:
apiVersion: v1
kind: PersistentVolume
metadata:
name: "ceph-ssd-0000-11"
spec:
capacity:
storage: "1Gi"
accessModes:
- "ReadWriteOnce"
rbd:
monitors:
- "10.0.0.5:6789"
- "10.0.0.6:6789"
- "10.0.0.7:6789"
pool: ssdvolumes
image: ssd-shift-pv-0001
user: ssdvolumes
secretRef:
name: "QVxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=="
fsType: ext4
readOnly: false
persistentVolumeReclaimPolicy: "Recycle"
Também posso conectar via rbd no cli sem problemas.
Alguém pode me ajudar com isso? Eu pensei que o plug-in rbd é instalado automaticamente no kubernetes com a instalação do openshift.
Então eu descobri. A documentação oficial não é clara sobre a criação de ceph pv. Você tem que criar outro objeto "segredo" com segredo ceph e depois apenas fazer referência a ele na configuração pv.
pv.yml
ceph-secret.yml
e depois executar
Também mensagem de erro: o tipo de volume não suportado é confuso, pois é relatado mesmo que o volume rbd seja suportado. Erro causado pela falta de segredo.
O problema foi relatado e provavelmente será resolvido: https://github.com/kubernetes/kubernetes/issues/18444
Edit2: Informações adicionais sobre a montagem do volume persistente do ceph: você criou uma imagem no pool do ceph antes da montagem. O Openshift (ou kubernetes) não criará imagens sozinhos.
Edit3: Você também deve mkfs.ext4 manualmente esta imagem antes de usá-lo.