Рейтинг:1

Как настроить класс хранения в существующем кластере k0s

флаг cn

Когда я бегу kos kubectl получить класс хранилища Я заметил, что он не подготовлен, и мне нужно добавить его вручную. Хотя я немного не уверен в точной процедуре. [Документация][https://docs.k0sproject.io/main/storage/] говорит, что k0s поставляется с установленным OpenEBS. В чем я не уверен, так это в том, как включить это расширение в файле конфигурации.

В моем существующем файле конфигурации есть только это (я предполагаю, что это должен быть файл конфигурации по умолчанию. Это правильно?):

спецификация:
  API:
    внешний адрес

я побежал k0s стоп затем изменил файл конфигурации следующим образом:

спецификация:
  API:
    внешний адрес
  расширения:
    место хранения:
      тип: openebs_local_storage

После этого изменения конфигурации я все еще получаю ту же ошибку, что для кластера не найден класс хранилища. Нужно ли мне также переустанавливать / устанавливать k0s, я немного не уверен, потому что существующий k0s.yaml, похоже, имеет очень мало параметров конфигурации по сравнению с образцом, приведенным в ссылке.

РЕДАКТИРОВАТЬ: Использование Документация Я приступил к созданию нового файла k0s.yaml, в котором используются существующие настройки по умолчанию. Оказывается, он перезаписывает существующий k0s.yaml (приведенный выше): я также внес изменения в новый файл yaml, чтобы создать это:

Версия API: k0s.k0sproject.io/v1beta1
вид: КластерКонфиг
метаданные:
  временная метка создания: ноль
  имя: k0s
спецификация:
  API:
    адрес: 10.ХХХ.ХХХ.ХХХ
    k0sApiПорт: 9443
    порт: 6443
    без:
    - 10.ХХ.ХХ.ХХХ
    - 172.ХХ.ХХ.ХХХ
    - 10.ХХ.ХХ.ХХХ
    - 10.ХХ.ХХ.ХХХ
    - fe80::XXX:XXX:XXX:XXX
    - fe80::XXX:XXX:XXX:XXX
    - fe80::XXX:XXX:XXX:XXX
    - fe80::XXX:XXX:XXX:XXX
    - fe80::XXX:XXX:XXX:XXX
    - fe80::XXX:XXX:XXX:XXX
    туннелированныйНетворкингМоде: ложь
  диспетчер диспетчера: {}
  расширения:
    шлем:
      диаграммы: ноль
      репозитории: ноль
    место хранения:
      create_default_storage_class: правда
      тип: openebs_local_storage
  картинки:
    бязь:
      cni:
        образ: docker.io/calico/cni
        версия: v3.21.2
      кубеконтроллеры:
        изображение: docker.io/calico/kube-controllers

После этого изменения я приступаю к переустановке кластера (с новой конфигурацией):

k0s установить контроллер -c /etc/k0s/k0s.yaml

но теперь я получаю сообщение об ошибке:

Ошибка: не удалось установить службу k0s: не удалось установить службу: инициализация уже существует: /etc/systemd/system/k0scontroller.service
флаг br
Не могли бы вы дать более подробную информацию о вашей проблеме, чтобы воспроизвести ее — вы используете k0s в любом облаке или на «голом железе»?
флаг cn
Сервер на голом металле Debian 10
флаг cn
Я следую этому руководству https://techviewleo.com/deploy-kubernetes-cluster-on-debian-using-k0s/
флаг cn
@anarxz Предложение состоит в том, чтобы сделать sudo systemctl перезапуск k0scontroller . Я выполнил эту команду, но все равно k0s kubectl get storageclass возвращает Ресурсы не найдены
Рейтинг:1
флаг br

Мне удалось воспроизвести вашу проблему — чтобы переустановить кластер с новой конфигурацией для хранилища OpenEBS, вам нужно очистить предыдущую настройку:

  1. Остановите службу k0s.
судо к0с стоп
  1. Сбросьте предыдущую установку, которая была выполнена без настроенного файла конфигурации:
sudo k0s сбросить
  1. Переустановите k0s с вашим новым конфигурационным файлом и с --enable-worker флаг -> чтобы снова была установлена ​​одиночная нода k0s с функциями контроллера и воркера:
sudo k0s установить контроллер --enable-worker -c /etc/k0s/k0s.yaml
  1. Запустите службу k0s:
sudo k0s начать
  1. Через несколько секунд убедитесь, что в кластере включены два класса хранения, которые вы можете использовать:
sudo k0s kubectl получить класс хранилища

Классы хранения будут иметь томбиндингмоде: вайтфорфирстконсумер - это означает, что существует задержка для привязки тома до тех пор, пока модуль приложения не будет запланирован на узле.

флаг cn
отметил, спасибо, я все еще находился в процессе устранения неполадок, позвольте мне поработать над этим

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.