Как запустить команду для создания PersistentVolume? - PullRequest
0 голосов
/ 25 мая 2020

У меня есть StatefulSet, который выглядит так

apiVersion: v1
kind: StatefulSet
metadata:
  name: web
spec:
  ...
  volumeClaimTemplates:
  — metadata:
      name: www
    spec:
      resources:
        requests:
          storage: 1Gi

Он создаст PersistentVolumeClaim (PV C) и PersistentVolume (PV) для каждого Pod Service он контролирует.

Я хочу выполнить некоторые команды над этими PV до создания Pod.

Я думал создать Job, который монтирует эти PV и запускает команды, но откуда я знаю сколько PV было создано?

1 Ответ

1 голос
/ 25 мая 2020

Решение: InitContianer .

Вы можете добавить его в spe c вашего StatufulSet:

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name:  web
spec:
...
  spec:
    initContainers:
    - name: init-myapp
      image: ubuntu:latest
      command:
      - bash
      - "-c"
      - "your command"
      volumeMounts:
      - name: yourvolume
        mountPath: /mnt/myvolume
...