Запуск Hello World#

Образец запуска «hello-world» профиля в DropApp/k8s

Создаем конфиг файл профиля в виде объекта kind: ConfigMap#

kind: ConfigMap
apiVersion: v1
metadata:
  name: sowa-hw-profile
data:
  sowa-hw-profile.yaml: |
    profile: hello_profile
    system:
      wrk_count: 1
      optional:
        default_type: application/json
        log_level: error
        wrk_user: sowactl
    version: 2.0.3
    service:
      service_static:
        - allowed_queries:
            - method: get
          id: hw-svc
          listen:
            - port: 9444
          optional:
            response_body: Hello world, profile test
            response_code: 200
          response_headers:
            - name: Content-Type
              value: text/plain
          url: ^/hello/world

Заполняем переменные в values.yaml SOWA#

Имя объекта ConfigMap с файлом профиля:

configmaps:
  profile_config_cm: "sowa-hw-profile"

Информация из профиля для шаблонизации манифестов перед деплоем:

# Имя профиля (пар-р "profile" из файла профиля)
profile_name: hello_profile

# Описываем сервис типа "service_static" т.к. он есть в нашем профиле
list_sys_services:
  - full_name: service_hello_world
    id_name: hw-svc
    listen_ports:
      - 9444

# Плагины в профиле не используются, оставляем переменную пустой
list_plugin_services:

Заполняем координаты docker образа в registry, если требуется авторизация заполняем поле image_pull_secret для авторизации в registry (объект типа kubernetes.io/dockerconfigjson, kind: Secret в namespace).

registry: "my-reg.ru"
registry_path: "sowa-dev"

deployment:
  imagePullSecrets:
    enabled: true
    list:
      - "my-registry-cred"

И указываем правильный домен Ingress Controller:

ingress:
  pub_domain: my-k8s.ru

Выполняем деплой приложения#

Находясь в директории helm/application, выполняем команду helm install sowa sowa, дожидаемся успешного запуска всех подов.
После чего можно выполнить GET запрос к данному профилю:

curl https://hw-svc-9444.my-k8s.ru/hello/world

# Должны получить следующий ответ:
Hello world, profile test

# В логах SOWA так же можно увидеть обращение к сервису:
tail /sowalogs/hello_profile/services/service_static/hw-svc_access.log
# (...) "GET /hello/world HTTP/1.1" 200 25 "-" "curl/8.7.1" (...)