Установка в Kubernetes

Требования

Состав поставки

  • Содержимое сборки:
    • testit_backend/ — Helm-чарт для внутреннего интерфейса (backend)
    • testit_frontend/ — Helm-чарт для внешнего интерфейса (frontend)
    • scripts/ — папка, содержащая вспомогательные скрипты
    • jobs/ — папка, содержащая вспомогательные объекты K8s
  • Содержимое чарта:
    • templates/ — шаблон манифеста K8s
    • Chart.yaml — основной конфигурационный файл чарта
    • values.yaml — настройки и переменные базовых шаблонов
    • values-override.yaml — файл переопределения настроек и переменных шаблона
    • values-ssl.yaml— пример переопределения для включения внутреннего SSL

Установка приложения

  1. Перед установкой проверьте наличие файла values.yaml в helm-чартах testit_backend и testit_frontend.
  2. В случае необходимости переназначьте переменные в файле values-override.yaml, используя такие же отступы и иерархию, что и в файле values.yaml. В случае переопределения переменных добавьте флаг -f values-override.yaml во все команды helm, как показано в примере ниже.
  3. Распакуйте файлы приложений с помощью команды:
    unzip <testit_archive_name> -d <destination_folder>
    
  4. Установите приложение с помощью команды:
    cd ~/testit
    # Установите приложения бэкенда.
    helm upgrade --install -f testit_backend/values-override.yaml -n <namespace> --create-namespace testit-backend testit_backend/
    # Дождитесь начала работы всех модулей бэкенда.
    watch -n 1 kubectl -n <namespace> get pods 
    # Установите внешний интерфейс (фронтенд).
    helm upgrade --install -f testit_frontend/values-override.yaml -n <namespace> --create-namespace testit-frontend testit_frontend/
    # Дождитесь начала работы всех модулей внешнего интерфейса
    watch -n 1 kubectl -n <namespace> get pods -l app=frontend
    
  5. Перейдите в приложение, используя адрес, указанный в .Values.ingress.host в testit_frontend/values.yaml или testit_frontend/values-override.yaml :
    # testit_frontend/values.yaml или testit_frontend/values-override.yaml
    ingress:
        host: "my-testit.example.com"
    
Обновлено: