Использование блочного хранилища DigitalOcean для Kubernetes Volume
У меня есть кластер K8S, работающий на DigitalOcean. У меня там работает база данных Postgresql, и я хочу создать том с использованием DigitalOcean BlockStorage, который будет использоваться модулем Postgresql в качестве тома. Есть ли примеры, как это сделать?
Если невозможно использовать блочное хранилище DigitalOcean, то как большинство компаний используют свое постоянное хранилище для баз данных?
3 ответа
Официальной поддержки пока нет. Вы можете попробовать пример от кого-то в этом выпуске github:
Обновление: я закончил писать плагин громкости для digitalocean. Присоединить / отсоединить работает на моем кластере. Ищете тех, кто хочет проверить это на своем кластере digital8cean k8s. Моя ветка https://github.com/wardviaene/kubernetes/tree/do-volume
Вы можете использовать следующую спецификацию в вашем pod yml:
spec: containers: - name: k8s-demo image: yourimage volumeMounts: - mountPath: /myvol name: myvolume ports: - containerPort: 3000 volumes: - name: myvolume digitaloceanVolume: volumeID: mykubvolume fsType: ext4 Where mykubvolume is the volume created in DigitalOcean in the same region.
Вам нужно будет добавить создать файл конфигурации:
[Global] apikey = do-api-key region = your-region и добавьте эти параметры в ваши процессы kubernetes: --cloud-provider=digitalocean --cloud-config=/etc/cloud.config
Я все еще жду, пока проблема в драйвере Godo будет решена, прежде чем я смогу отправить PR (digitalocean/godo#102)
Я нашел эту ссылку здесь о flexvolumes Здесь упоминается, как вы можете настроить загрузку томов поставщиков. Есть также скрипт о том, как это сделать в скрипте
Драйвер интерфейса контейнерного хранилища (CSI) для блочного хранилища DigitalOcean. https://github.com/digitalocean/csi-digitalocean Протестировали с набором состояний MySql, работает нормально