Test ITTest IT
  • Руководство системного администратора
  • Руководство пользователя
  • Загрузить Test IT Enterprise
  • GitHub
  • Руководство по работе с Личным кабинетом
  • Руководство пользователя
  • Личный кабинет Test IT Cloud
  • GitHub
  • Release notes: Test IT Enterprise
  • Release notes: Test IT Cloud
  • Новое в документации
  • Центр помощи
  • Видеокурс по Test IT
  • Часто задаваемые вопросы
  • Спросите нас в Telegram
      
    
  • Руководство системного администратора
  • Руководство пользователя
  • Загрузить Test IT Enterprise
  • GitHub
  • Руководство по работе с Личным кабинетом
  • Руководство пользователя
  • Личный кабинет Test IT Cloud
  • GitHub
  • Release notes: Test IT Enterprise
  • Release notes: Test IT Cloud
  • Новое в документации
  • Центр помощи
  • Видеокурс по Test IT
  • Часто задаваемые вопросы
  • Спросите нас в Telegram
  • Установка

    • Установка в Docker Compose
      • Описание .env-файла
    • Установка в Kubernetes
      • Значения, используемые в файле "values"
  • Настройка внешних подключений и повышение их безопасности

    • О настройке внешних подключений
    • Настройка внешних подключений в Docker Compose

      • Подключение RabbitMQ в Docker Compose
      • Подключение стека Elasticsearch, Logstash и Kibana (ELK) в Docker Compose
      • Подключение MinIO в Docker Compose
      • Подключение Redis в Docker Compose
      • Подключение InfluxDB в Docker Compose
      • Подключение PostgreSQL в Docker Compose
    • Настройка внешних подключений в Kubernetes

      • Подключение RabbitMQ в Kubernetes
      • Подключение MinIO в Kubernetes
      • Подключение Redis в Kubernetes
      • Подключение InfluxDB в Kubernetes
      • Подключение PostgreSQL в Kubernetes
    • Описание микросервисов Test IT
  • Настройка внешних ссылок для перехода из Test IT
  • Перезапуск системы

    • Перезапуск системы в Docker Compose
    • Перезапуск системы в Kubernetes
  • Работа с компонентами Kubernetes

    • Изменение выделенных ресурсов в Kubernetes
    • Замена рабочего узла (ноды) в Kubernetes
    • Настройка SSL для внутренних подключений в Kubernetes
    • Добавление самоподписанных сертификатов в контейнеры (Kubernetes)
    • Переход на новый кластер Kubernetes
    • Перезапуск подов и остановка компонентов Test IT в Kubernetes
    • Переопределение переменных и настроек приложений в Kubernetes
  • Обновление

    • Обновление в Docker Compose

      • Обновление Test IT в Docker Compose
      • Структура файла docker-compose.yml в версии 4.5
    • Обновление в Kubernetes

      • Обновление в Test IT в Kubernetes
      • Обновление старых версий Test IT в Kubernetes
  • Переход из Docker в Kubernetes

    • Переход из Docker в Kubernetes: Test IT 5.3 и более поздние версии
    • Переход из Docker в Kubernetes: Test IT 5.2 и более ранние версии
  • Проверка лицензии

    • Проверка лицензии в Docker Compose
    • Проверка лицензии в Kubernetes
  • Резервное копирование

    • Резервное копирование в Docker Compose
    • Резервное копирование в Kubernetes: Test IT 5.3 и более поздние версии
    • Резервное копирование в Kubernetes: Test IT 5.2 и более ранние версии
  • Логирование пользовательских действий (Docker Compose)
  • Настройка HTTPS

    • Настройка HTTPS в Docker Compose
    • Настройка HTTPS в Kubernetes
  • Добавление самоподписанных сертификатов в контейнеры (Docker Compose)
  • Удаление системы

    • Удаление Test IT в Docker Compose
    • Удаление Test IT в Kubernetes

Настройка HTTPS в Kubernetes

Перед настройкой HTTPS нет необходимости проводить установку Test IT.

  1. Подготовьте файлы с сертификатом и ключом. Назвать их можно, например tls.crt и tls.key.
  2. Переведите содержимое файлов в формат base64:
    cat tls.crt | base64 | tr -d "\n" > tls-encoded.crt
    cat tls.key | base64 | tr -d "\n" > tls-encoded.key
    
  3. Создайте секрет с закодированными файлами в нужном пространстве имен:
    kubectl -n <namespace> create secret tls my-tls-secret --cert=tls-encoded.crt --key=tls-encoded.key
    
  4. Настройте ingress для выбранного доменного имени и tls-секрета:
    # testit_unichart/values-override.yaml
    frontend:
      ingress:
        main:
          ingressClassName: "nginx" # Set ingress class name
          host: "my.hostname.com" # Set the desired hostname you own
          path: /
          pathType: Prefix
          annotations:
            nginx.ingress.kubernetes.io/ssl-redirect: "True"
            nginx.ingress.kubernetes.io/proxy-connect-timeout: "300"
            nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
            nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
            nginx.ingress.kubernetes.io/proxy-body-size: 100m
            nginx.ingress.kubernetes.io/proxy-buffer-size: 50m
            nginx.ingress.kubernetes.io/proxy-buffers-number: "4"
          tls: true
          tlsSecretName: my-tls-secret
    
  5. Если данная настройка проходит на этапе до установки Test IT, продолжайте следовать описанным шагам.
  6. Если Test IT был уже установлен, примените изменения:
    cd <installation_folder>
    helm -n <my-namespace> -f testit_unichart/values-override.yaml upgrade testit testit_unichart/ --wait --timeout 10m
    
  7. Опционально: Вы можете использовать готовые решения для настройки HTTPS в K8s, например cert-manager + Letsencrypt. Для этого добавьте соответствующие флаги и аннотации в ingress:
    # testit_unichart/values-override.yaml
    frontend:
      ingress:
        main:
          ingressClassName: "nginx" # Set ingress class name
          host: "my.hostname.com" # Set the desired hostname you own
          path: /
          pathType: Prefix
          annotations:
            nginx.ingress.kubernetes.io/ssl-redirect: "True"
            nginx.ingress.kubernetes.io/proxy-connect-timeout: "300"
            nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
            nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
            nginx.ingress.kubernetes.io/proxy-body-size: 100m
            nginx.ingress.kubernetes.io/proxy-buffer-size: 50m
            nginx.ingress.kubernetes.io/proxy-buffers-number: "4"
            cert-manager.io/cluster-issuer: letsencrypt-production
            cert-manager.io/common-name: my.hostname.com
          tls: true
          tlsSecretName: my-ssl-secret
    
Обновлено:
Назад
Настройка HTTPS в Docker Compose