Как разместить базу данных SQLite вне постоянного тома NFS - PullRequest
1 голос
/ 02 мая 2019

У меня многоузловой (2) кластер Kubernetes, работающий на голом железе. Я понимаю, что 1. hostPath вреден для работы и 2. Постоянные тома hostPath не поддерживаются для многоузловых установок. Есть ли способ, которым я могу безопасно запускать приложения, поддерживаемые базой данных SQLite? При использовании NFS база данных сильно блокируется и действительно снижает производительность приложений.

Я бы, вероятно, разместил базы данных SQLite для каждого приложения на томе hostPath, и все снова прошло бы гладко. Но мне было интересно, есть ли какие-то обходные пути для достижения этой цели, даже если мне нужно ограничить приложения определенным узлом.

1 Ответ

1 голос
/ 10 мая 2019

Кажется, вам следует использовать Локальные постоянные тома GA .

Согласно документации:

Локальный том представляет собой подключенное локальное устройство хранения, такое как диск, раздел или каталог.

По сравнению с томами hostPath локальные тома можно использовать надежным и переносимым способом без ручного планирования модулей на узлы, поскольку система знает об ограничениях узлов тома, просматривая сходство узлов в PersistentVolume.

Тем не менее:

В GA локальные постоянные тома не поддерживают динамическое предоставление томов.

Более подробную информацию вы можете найти здесь и здесь .

В качестве одного примера:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: example-pv
spec:
  capacity:
    storage: 100Gi
  # volumeMode field requires BlockVolume Alpha feature gate to be enabled.
  volumeMode: Filesystem
  accessModes:
  - ReadWriteOnce
  persistentVolumeReclaimPolicy: Delete
  storageClassName: local-storage
  local:
    path: /mnt/disks/ssd1
  nodeAffinity:
    required:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - example-node

При использовании локальных постоянных томов планировщик Kubernetes гарантирует, что модуль, использующий локальный постоянный том, всегда планируется на один и тот же узел

...