Kuby-core: Krane::FatalDeploymentError: Ошибка проверки шаблона

Созданный на 11 авг. 2020  ·  13Комментарии  ·  Источник: getkuby/kuby-core

При развертывании кран взрывается. Это развертывание с версией 0.7.0 .

KUBY_DOCKER_TAG=latest bundle exec rake kuby:deploy --trace Я установил тег как последний, чтобы обойти другую проблему :)

Вот что я получаю:

* Вызвать kuby:deploy (first_time)* Выполнить кубы: развернуть
Проверка глобального ресурса, пространство имен «my-app-production»
настроено пространство имен/my-app-production (пробный запуск)
Развертывание пространства имен «my-app-production»
namespace/my-app-production без изменений
[INFO][2020-08-11 09:15:10 +0200]
[INFO][2020-08-11 09:15:10 +0200] ---------------------------------- ---Этап 1: Инициализация развертывания---------------------------------------------------
[INFO][2020-08-11 09:15:11 +0200] Все необходимые параметры и файлы присутствуют
[INFO][2020-08-11 09:15:11 +0200] Обнаружение ресурсов:
[INFO][2020-08-11 09:15:13 +0200] - Развертывание/my-app-web
[INFO][2020-08-11 09:15:13 +0200] - Секрет/мое-приложение-веб-mysql-секрет
[INFO][2020-08-11 09:15:13 +0200] - ServiceAccount/my-app-sa
[INFO][2020-08-11 09:15:13 +0200] - ConfigMap/my-app-config
[INFO][2020-08-11 09:15:13 +0200] - Секрет/секрет реестра моего приложения
[INFO][2020-08-11 09:15:13 +0200] - Ingress/my-app-ingress
[INFO][2020-08-11 09:15:13 +0200] - Секрет/секреты моего приложения
[INFO][2020-08-11 09:15:13 +0200] - ClusterIssuer/letsencrypt-production
[INFO][2020-08-11 09:15:13 +0200] - MySQL/my-app-web-mysql
[INFO][2020-08-11 09:15:13 +0200] - Секрет/мое-приложение-веб-mysql-секрет
[INFO][2020-08-11 09:15:13 +0200] - MySQL/my-app-web-mysql
[INFO][2020-08-11 09:15:13 +0200] - Сервис/мое-приложение-svc
[ИНФО][2020-08-11 09:15:15 +0200]
[INFO][2020-08-11 09:15:15 +0200] ---------------------------------- ---------Результат: FAILURE-------------------------------------- -----
[FATAL][2020-08-11 09:15:16 +0200] Ошибка проверки шаблона
[FATAL][2020-08-11 09:15:16 +0200]
[FATAL][2020-08-11 09:15:16 +0200] Недопустимый шаблон: ClusterIssuer-letsencrypt-production20200811-60914-uybj4y.yml
[FATAL][2020-08-11 09:15:16 +0200] > Сообщение об ошибке:
[FATAL][2020-08-11 09:15:16 +0200] W0811 09:15:13.103161 60953 helpers.go:535] --dry-run устарел и может быть заменен --dry-run=client.
[FATAL][2020-08-11 09:15:16 +0200] ошибка: невозможно распознать "/var/folders/9l/3dw7rcl51pq4jfs0kjg99f7c0000gn/T/ClusterIssuer-letsencrypt-production20200811-60914-uybj4y.yml": нет совпадений для вид "ClusterIssuer" в версии "cert-manager.io/v1alpha2"
[FATAL][2020-08-11 09:15:16 +0200] > Содержимое шаблона:
[FATAL][2020-08-11 09:15:16 +0200] ---
[FATAL][2020-08-11 09:15:16 +0200] apiVersion: cert-manager.io/v1alpha2
[FATAL][2020-08-11 09:15:16 +0200] тип: ClusterIssuer
[FATAL][2020-08-11 09:15:16 +0200] метаданные:
[FATAL][2020-08-11 09:15:16 +0200] имя: letsencrypt-production
[FATAL][2020-08-11 09:15:16 +0200] пространство имен: cert-manager
[FATAL][2020-08-11 09:15:16 +0200] спецификация:
[FATAL][2020-08-11 09:15:16 +0200] акме:
[FATAL][2020-08-11 09:15:16 +0200] сервер: https://acme-v02.api.letsencrypt.org/directory
[FATAL][2020-08-11 09:15:16 +0200] электронная почта: [email protected]
[FATAL][2020-08-11 09:15:16 +0200] privateKeySecretRef:
[FATAL][2020-08-11 09:15:16 +0200] имя: letsencrypt-production
[FATAL][2020-08-11 09:15:16 +0200] решатели:
[FATAL][2020-08-11 09:15:16 +0200] - http01:
[FATAL][2020-08-11 09:15:16 +0200] вход:
[FATAL][2020-08-11 09:15:16 +0200] класс: nginx
[FATAL][2020-08-11 09:15:16 +0200]
[FATAL][2020-08-11 09:15:16 +0200]
[FATAL][2020-08-11 09:15:16 +0200] Недопустимый шаблон: MySQL-my-app-web-mysql20200811-60914-1rs7vqx.yml
[FATAL][2020-08-11 09:15:16 +0200] > Сообщение об ошибке:
[FATAL][2020-08-11 09:15:16 +0200] W0811 09:15:13.122295 60956 helpers.go:535] --dry-run устарел и может быть заменен --dry-run=client.
[FATAL][2020-08-11 09:15:16 +0200] ошибка: невозможно распознать "/var/folders/9l/3dw7rcl51pq4jfs0kjg99f7c0000gn/T/MySQL-my-app-web-mysql20200811-60914-1rs7vqx.yml" : нет совпадений для вида "MySQL" в версии "kubedb.com/v1alpha1"
[FATAL][2020-08-11 09:15:16 +0200] > Содержимое шаблона:
[FATAL][2020-08-11 09:15:16 +0200] ---
[FATAL][2020-08-11 09:15:16 +0200] вид: MySQL
[FATAL][2020-08-11 09:15:16 +0200] apiVersion: kubedb.com/v1alpha1
[FATAL][2020-08-11 09:15:16 +0200] спецификация:
[FATAL][2020-08-11 09:15:16 +0200] TerminationPolicy: DoNotTerminate
[FATAL][2020-08-11 09:15:16 +0200] storageType: Durable
[FATAL][2020-08-11 09:15:16 +0200] версия: 5.7-v2
[FATAL][2020-08-11 09:15:16 +0200] хранилище:
[FATAL][2020-08-11 09:15:16 +0200] режимы доступа:
[FATAL][2020-08-11 09:15:16 +0200] - ReadWriteOnce
[FATAL][2020-08-11 09:15:16 +0200] storageClassName: do-block-storage
[FATAL][2020-08-11 09:15:16 +0200] ресурсы:
[FATAL][2020-08-11 09:15:16 +0200] запрашивает:
[FATAL][2020-08-11 09:15:16 +0200] хранилище: 10Gi
[FATAL][2020-08-11 09:15:16 +0200] databaseSecret:
[FATAL][2020-08-11 09:15:16 +0200] secretName: my-app-web-mysql-secret
[FATAL][2020-08-11 09:15:16 +0200] метаданные:
[FATAL][2020-08-11 09:15:16 +0200] имя: my-app-web-mysql
[FATAL][2020-08-11 09:15:16 +0200] пространство имен: my-app-production
[FATAL][2020-08-11 09:15:16 +0200]
[FATAL][2020-08-11 09:15:16 +0200]
[FATAL][2020-08-11 09:15:16 +0200] Недопустимый шаблон: MySQL-my-app-web-mysql20200811-60914-1na8no.yml
[FATAL][2020-08-11 09:15:16 +0200] > Сообщение об ошибке:
[FATAL][2020-08-11 09:15:16 +0200] W0811 09:15:14.705164 60971 helpers.go:535] --dry-run устарел и может быть заменен --dry-run=client.
[FATAL][2020-08-11 09:15:16 +0200] ошибка: невозможно распознать "/var/folders/9l/3dw7rcl51pq4jfs0kjg99f7c0000gn/T/MySQL-my-app-web-mysql20200811-60914-1na8no.yml" : нет совпадений для вида "MySQL" в версии "kubedb.com/v1alpha1"
[FATAL][2020-08-11 09:15:16 +0200] > Содержимое шаблона:
[FATAL][2020-08-11 09:15:16 +0200] ---
[FATAL][2020-08-11 09:15:16 +0200] вид: MySQL
[FATAL][2020-08-11 09:15:16 +0200] apiVersion: kubedb.com/v1alpha1
[FATAL][2020-08-11 09:15:16 +0200] спецификация:
[FATAL][2020-08-11 09:15:16 +0200] TerminationPolicy: DoNotTerminate
[FATAL][2020-08-11 09:15:16 +0200] storageType: Durable
[FATAL][2020-08-11 09:15:16 +0200] версия: 5.7-v2
[FATAL][2020-08-11 09:15:16 +0200] хранилище:
[FATAL][2020-08-11 09:15:16 +0200] режимы доступа:
[FATAL][2020-08-11 09:15:16 +0200] - ReadWriteOnce
[FATAL][2020-08-11 09:15:16 +0200] storageClassName: do-block-storage
[FATAL][2020-08-11 09:15:16 +0200] ресурсы:
[FATAL][2020-08-11 09:15:16 +0200] запрашивает:
[FATAL][2020-08-11 09:15:16 +0200] хранилище: 10Gi
[FATAL][2020-08-11 09:15:16 +0200] databaseSecret:
[FATAL][2020-08-11 09:15:16 +0200] secretName: my-app-web-mysql-secret
[FATAL][2020-08-11 09:15:16 +0200] метаданные:
[FATAL][2020-08-11 09:15:16 +0200] имя: my-app-web-mysql
[FATAL][2020-08-11 09:15:16 +0200] пространство имен: my-app-production
[FATAL][2020-08-11 09:15:16 +0200]
рейк прерван!
Krane::FatalDeploymentError: Ошибка проверки шаблона

Все 13 Комментарий

Похоже, ваш кластер не знает об объектах ClusterIssuer или MySQL . Вы запускали rake kuby:setup перед развертыванием?

Аааа, пропустил этот шаг руководства! Спасибо!

@traels ты смог заставить все работать?

Извините - забыл вернуться к вам!
Мне удалось запустить kuby:setup — затем мой кластер рухнул в Digital Ocean, так что теперь я думаю, что мне нужно создать новый кластер kubernetes, чтобы попробовать еще раз. Надеясь получить больше времени, чтобы играть на следующей неделе.

@traels о черт, вау! Что случилось, позвольте спросить?

Не знаю — Куби только что сказал, что kubernetes не отвечает. Пробовал перезапускать на DO, но это не помогло.

Хм интересно. Я определенно видел зависания при попытке связи с кластерами DOKS. Обычно это проходит само через час или около того. Довольно дерьмовый опыт, может быть, Линод был бы лучше?

Сегодня встал рано - и теперь мой кластер работает, и деплой прошел успешно :)
... следующий вопрос, как обращаться с ресурсами Rails в докере? все мои активы отсутствуют

Хм, любопытно... ресурсы должны быть скомпилированы в образ Docker. О, но держу пари, ничто их не обслуживает! Можете ли вы попробовать установить config.public_file_server.enabled = true в вашем файле production.rb? Это должно исправить ситуацию. Я также зарегистрирую ошибку, так как это, вероятно, должно работать из коробки :)

Итак, в kubernetes люди обслуживают ресурсы с помощью веб-сервера ruby?

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

Я должен немного расширить: большинство людей с приложениями Rails любого масштаба, как правило, обслуживают статические ресурсы из CDN. Источником этих ресурсов обычно является что-то вроде корзины S3, но вполне может быть и само приложение Rails. Поскольку в 99% случаев CDN будет обслуживать активы, запрос их в приложение Rails изначально не должен сильно влиять на производительность.

Вчера зарегистрировал проблему, чтобы отследить это: https://github.com/getkuby/kuby-core/issues/12 .

Kuby v0.8.0 поставляется с полнофункциональным сервером ресурсов (nginx), поэтому само приложение больше не должно обслуживать ресурсы :)

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

hovancik picture hovancik  ·  5Комментарии

kingdonb picture kingdonb  ·  6Комментарии

practicingruby picture practicingruby  ·  6Комментарии

StevenGhyselbrecht picture StevenGhyselbrecht  ·  11Комментарии

benpickles picture benpickles  ·  5Комментарии