minIO в Kubernetes: лучший способ сделать резервную копию

Я пытался развернуть до сих пор двумя способами:

1. Deploy it as a statefulset on Kubernetes and using persistent 
volume of nfs as its storage . But then I learnt that we shouldn't 
be running minio backed by NAS as erasure code should not be run on NAS data.

2. Deploy it as Daemonset using local volumes. This time I attached 
separate disks to my nodes and labelled them such 
that minio is scheduled to run on these nodes. The disks are mounted on 
/data/minio on each of the nodes

Но теперь каждый день узлы подвергаются нагрузке на диск, а мини-модули выселяются. Когда я проверяю журналы kubelet:

Aug 13 21:05:45 staging-node2 kubelet[2188]: I0813 21:05:45.968179    2188 kubelet_pods.go:1073] Killing unwanted pod "minio-kjrkc"   
Aug 13 21:05:45 staging-node2 kubelet[2188]: I0813 21:05:45.975372    2188 kuberuntime_container.go:559] Killing container "docker://6da1247718f8e6c92399e231f8c31ff1c510737c658ac2aca87c1659aa6b51cc" with 30 second grace period

Он пытается убить стручки, но контейнер никогда не умирает. Даже если minio получает сигнал TERMINATED, контейнер все еще работает.

  • #P4#
  • #P5#
  • #P6#

person swetad90    schedule 13.08.2019    source источник


Ответы (1)


Правильный подход к развертыванию MinIO в Kubernetes — использование локальных томов на нескольких распределенных узлах с использованием StatefulSet. Вы можете сделать это с помощью файлов Yaml или Helm Chart или с помощью нашего оператора MinIO. Документы доступны здесь https://github.com/minio/minio/tree/master/docs/orchestration/kubernetes

Какие еще варианты остаются для локальной установки minio?

StatefulSet как минимум с 4 подами и хранилищем через hostPath тома, как правило, является правильным способом развертывания. В зависимости от варианта использования и существующей инфраструктуры могут быть и другие соответствующие подходы.

Использование локального хранилища как-то не рекомендуется или я использую его неправильно?

Рекомендуется локальное хранилище. Мне нужно больше информации, чтобы увидеть, что именно здесь происходит не так, но если у вас есть выделенные локальные накопители, все должно быть в порядке.

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

MinIO обрабатывает сигналы для завершения и т. д. Как таковой предварительный хук не требуется.

Надеюсь, это поможет, присоединяйтесь к нам на нашем канале Slack @ https://slack.min.io для подробного обсуждения. и т.п.

person nkt    schedule 07.01.2020
comment
Как мы можем использовать несколько дисков/томов на каждом хосте в Minio? Или мы должны создать один том для всех дисков? - person Muzammil; 21.07.2021