Запуск 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" (...)