Kubernetes / Rancher 2, монго-репликация с развертыванием тома локального хранилища - PullRequest
0 голосов
/ 26 октября 2018

Я пытаюсь, я пытаюсь, но Rancher 2.1 не удается развернуть приложение каталога " mongo-replicaset " с настроенным локальным постоянным томом .

Какправильно развернуть моно-репликацию с локальным томом хранения?Любые методы отладки приветствуются, так как я новичок в ранчере 2.

Я следую 4 шагам ABCD ниже, но первое развертывание модуля никогда не заканчивается.Что в этом плохого?Журналы и результаты отображаются в конце.Подробную конфигурацию можно найти здесь .

Примечание : развертывание без локальных постоянных томов успешно .

Примечание: развертывание с локальным постоянным томом и образом "mongo" успешно (без версии репликаса).

Примечание : развертывание как с mongo-репликацией, так и сс локальным постоянным томом завершается с ошибкой .


Шаг A - Кластер

Создайте экземпляр ранчо и:

  1. Добавьте три узла: рабочий, рабочий и т. Д., Рабочий уровень управления
  2. Добавьте метку на каждом узле: имя одно, имя два и имя три для узла Affinity

Шаг B - Класс хранения

Создайте класс хранения с этими параметрами:

  1. volumeBindingMode: WaitForFirstConsumer видел здесь
  2. name: local-storage

Шаг C - Постоянные тома

Добавить 3 стр.Такие постоянные тома:

  1. тип: путь к локальному узлу
  2. Режим доступа: RW с одним узлом, 12Gi
  3. класс хранения: local-storage
  4. Node Affinity: имя одно (два для второго тома, три для третьего тома)

Шаг D - Развертывание Mongo-replicaset

Из каталогавыберите Mongo-replicaset и настройте его следующим образом:

  1. replicaSetName: rs0
  2. persistentVolume.enabled: true
  3. persistentVolume.size: 12Gi
  4. persistentVolume.storageClass: local-storage

Результат

После выполнения шагов ABCD вновь созданное приложение mongo-replicaset остается бесконечно в «Инициализации»"state.

mongo status stopped at initialized

Соответствующая рабочая нагрузка монго содержит только один модуль вместо трех.И у этого модуля есть два «разбитых» контейнера, начальный загрузчик и реплика монго.

crashed workload with only one pod


Журналы

Этовывод из 4 контейнеров единственного бегущего контейнера.Нет ошибок, нет проблем.

no logs in mongo container allmost no logs in copy-config container allmost no logs in install container some logs from bootstrap container

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

Спасибо вам

1 Ответ

0 голосов
/ 16 февраля 2019

Вся эта конфигурация верна.

В нем отсутствуют детали, поскольку Rancher - это контейнерное развертывание kubernetes. Kubelets развернуты на каждом узле в док-контейнерах. Они не имеют доступа к локальным папкам ОС.

Необходимо добавить привязку тома для кубелец, как, например, K8 смогут создавать модуль монго с такой же привязкой.

В ранчо: Редактирование кластера yaml (Кластер> Редактировать> Редактировать как Yaml)

Добавьте следующую запись под узлом "services":

  kubelet: 
    extra_binds: 
      - "/mongo:/mongo:rshared"
...