iac/apps/message-hub/wb/message-hub.yaml
ivan dff652819a wb: set requests/limits from 14d VictoriaMetrics utilization
Проставлены requests и limits в apps/*/wb на основе p95/max
потребления CPU и памяти за 14 дней (scripts/wb-resource-utilization.sh).
request ~ p95*1.2, limit ~ max*1.5-2, с полом 10m/20m CPU и 32Mi/48Mi
памяти. documentations/pdf-markings: request урезан до пола (10m/32Mi),
limit оставлен на исходном уровне (2 CPU/8Gi) — редко используется, но
при вызове может понадобиться весь объём.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-27 15:36:59 +05:00

222 lines
4.8 KiB
YAML

---
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: message-hub
namespace: message-hub
spec:
interval: 10m
chart:
spec:
chart: universal-chart
version: "0.1.7"
sourceRef:
kind: HelmRepository
name: yc-oci-charts
namespace: flux-system
interval: 10m
install:
remediation:
retries: 3
upgrade:
remediation:
retries: 3
values:
global:
env: _default
services:
message-hub:
enabled: true
image:
name:
_default: cr.yandex/crp3ccidau046kdj8g9q/message-hub:production_e8010fe4
pullPolicy:
_default: IfNotPresent
deployment:
enabled: true
name:
_default: message-hub-message-hub
replicaCount:
_default: 1
port:
_default: 8000
resources:
limits:
cpu:
_default: 20m
memory:
_default: 48Mi
requests:
cpu:
_default: 10m
memory:
_default: 32Mi
probes:
liveness:
enabled: false
readiness:
enabled: false
service:
enabled: true
name:
_default: message-hub-message-hub
type:
_default: ClusterIP
port:
_default: 8000
targetPort:
_default: 8000
portName:
_default: http
imagePullSecrets:
enabled:
_default: true
name:
_default: dockerhub
volumes:
_default:
- name: kafka-cert-volume
mountPath:
_default: /usr/local/share/ca-certificates
readOnly:
_default: true
configMap:
name:
_default: kafka-cert
envs:
- name: WORKER_TIMEOUT
value:
_default: "60"
- name: PYTHONPATH
value:
_default: "src"
- name: SETTINGS_MAX_RETRIES
value:
_default: "1"
- name: SETTINGS_TOPICS
value:
_default: '{"planning": "pm", "assets": "assets_broadcast", "project_entity": "issues_broadcast"}'
- name: SETTINGS_PDF_CONVERTER_HOST
value:
_default: "http://export-project-service.django.svc.cluster.local:8000"
- name: SAREX_BASE_HOST
value:
_default: "http://backend-service.pm.svc.cluster.local:8000"
- name: DB_HOST
value:
_default: "sarex-vpsql-01.xc.wb.ru"
- name: DB_PORT
value:
_default: "5432"
- name: DB_DATABASE
value:
_default: "pm_db"
- name: CACHE_HOST
value:
_default: "redis.pm.svc.cluster.local"
- name: CACHE_PORT
value:
_default: "6379"
- name: CACHE_SSL
value:
_default: "0"
- name: KAFKA_HOST
value:
_default: "wb-prod-kafka-bootstrap.kafka.svc.cluster.local"
- name: KAFKA_PORT
value:
_default: "9093"
- name: KAFKA_SECURITY_PROTOCOL
value:
_default: "SSL"
- name: KAFKA_SASL_MECHANISM
value:
_default: "SCRAM-SHA-512"
- name: KAFKA_SSL_CAFILE
value:
_default: "/usr/local/share/ca-certificates/kafka.crt"
secretEnvs:
- name: KAFKA_USERNAME
secretName:
_default: "kafka-secret"
secretKey: "username"
- name: KAFKA_PASSWORD
secretName:
_default: "kafka-secret"
secretKey: "password"
- name: DB_USERNAME
secretName:
_default: "postgres-pm-secret"
secretKey: "username"
- name: DB_PASSWORD
secretName:
_default: "postgres-pm-secret"
secretKey: "password"
- name: S3_LOGIN
secretName:
_default: "s3-secret"
secretKey: "username"
- name: S3_PASSWORD
secretName:
_default: "s3-secret"
secretKey: "password"
- name: S3_BUCKET
secretName:
_default: "s3-secret"
secretKey: "bucket"
- name: S3_HOST
secretName:
_default: "s3-secret"
secretKey: "host"
commitSha: ""
gitlabUri: ""
gitlabJobUrl: ""
owner: ""