O serviço Kubernetes pode montar múltiplas “partes” de um único disco GCE nos múltiplos caminhos de montagem?

1

Estou definindo minha primeira implantação do Kubernetes e gostaria de definir um contêiner que monte armazenamento persistente em dois pontos, digamos assim (em Deployment.yaml dentro de spec.template.spec.containers.- ):

volumeMounts:
- name: volume1
  mountPath: /var/log/app
- name: volume2
  mountPath: /var/lib/app

Eu entendo do exemplo de pilha MEAN do Kubernetes que eu deveria ser capaz de criar dois GCEs correspondentes discos, digamos assim:

gcloud compute disks create --size 10GB volume1
gcloud compute disks create --size 10GB volume2

Atualmente, vejo dois discos em vez de um só porque preciso montar em dois caminhos diferentes. Um serviço do Kubernetes pode montar diferentes "porções" (possivelmente partições) de um único volume / disco em diferentes caminhos?

A especificação de v1.VolumeMount sugere que isso pode não ser possível no nível da especificação de serviço, porque ele suporta apenas os campos name , readOnly e mountPath .

Estes respostas sugere que isso pode ser possível no nível de partições EXT4, mas isso exigiria que o volume fosse somente leitura. Mesmo no caso somente leitura (que não atende aos meus requisitos), como eu poderia criar um disco GCE com partições?

(migrado de StackOverflow )

    
por Drux 20.07.2016 / 16:00

2 respostas

1

Um volume persistente do Kubernetes (ou disco permanente do GCE, que é aproximadamente o mesmo) só pode ser montado em um ponto na estrutura de diretório do seu pod. Mas uma vez montado, você pode certamente criar montagens de bind ou links simbólicos para organizar seus arquivos da forma que desejar. Você também pode alterar a configuração de seus aplicativos para ler e gravar em um subdiretório onde quer que você montou o volume persistente, mas isso levaria mais trabalho.

    
por 29.07.2016 / 11:23
0

Eu decidi usar (links simbólicos para) vários subdiretórios dentro de um PD com uma única partição. Isso também é sugerido aqui (Kubernetes # 20835).

    
por 29.07.2016 / 10:07