Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion deploy/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,21 @@ spec:
image: "{{ .Values.arsserver.image.repository }}:{{ .Values.arsserver.image.tag }}"
imagePullPolicy: {{ .Values.arsserver.image.PullPolicy }}
command: ["/bin/sh"]
args: ["-c", "/bin/bash /ars/config/startup.sh && python tr_sys/manage.py runserver 0.0.0.0:8000 --noreload"]
args:
- "-c"
- >-
/bin/bash /ars/config/startup.sh &&
gunicorn tr_sys.wsgi:application
--chdir /ars/tr_sys
--bind 0.0.0.0:{{ .Values.arsserver.containerPort }}
--worker-class {{ .Values.arsserver.gunicorn.workerClass | default "gthread" }}
--workers {{ .Values.arsserver.gunicorn.workers | default 4 }}
--threads {{ .Values.arsserver.gunicorn.threads | default 4 }}
--timeout {{ .Values.arsserver.gunicorn.timeout | default 360 }}
--graceful-timeout {{ .Values.arsserver.gunicorn.gracefulTimeout | default 120 }}
--max-requests {{ .Values.arsserver.gunicorn.maxRequests | default 1000 }}
--max-requests-jitter {{ .Values.arsserver.gunicorn.maxRequestsJitter | default 100 }}
--access-logfile - --error-logfile -
ports:
- containerPort: {{ .Values.arsserver.containerPort }}
volumeMounts:
Expand Down
21 changes: 16 additions & 5 deletions deploy/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,18 @@ arsserver:
repository: 853771734544.dkr.ecr.us-east-1.amazonaws.com/translator-ars
tag: DOCKER_VERSION_VALUE
PullPolicy: Always
containerPort: 8000
containerPort: 8000
gunicorn:
workerClass: gthread
# Tune workers/threads to the pod's CPU/memory allocation.
# The general recommendation is workers = 2 * cpu cores + 1
# With a gthread worker, concurrency ~= workers * threads.
workers: 4
threads: 4
timeout: 360 # hard kill a request so a worker isn't hogged when it's stuck on one query
gracefulTimeout: 120 # padding time for workers to complete running queries before restarting
maxRequests: 1000 # recycle workers periodically to prevent issues with memory/connection leaks etc
maxRequestsJitter: 100 # randomize when workers restart to avoid happening all at once
env:
TR_ENV: TR_ENV_VALUE
TR_APPRAISE: TR_APPRAISE_VALUE
Expand All @@ -28,7 +39,7 @@ rabbitmq:
repository: 853771734544.dkr.ecr.us-east-1.amazonaws.com/translator-rabbitmq
tag: 4.0
PullPolicy: Always
containerPort: 5672
containerPort: 5672

redis:
image:
Expand All @@ -46,7 +57,7 @@ affinity:
- key: application
operator: In
values:
- ars
- ars
tolerations:
- key: "transltr"
value: "ars"
Expand All @@ -66,8 +77,8 @@ ingress:
alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS-1-2-Ext-2018-06
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 80}, {"HTTPS":443}]'
alb.ingress.kubernetes.io/actions.ssl-redirect: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}'
alb.ingress.kubernetes.io/success-codes: '200'
alb.ingress.kubernetes.io/success-codes: '200'
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=600
host: ARS_HOSTNAME_VALUE
host: ARS_HOSTNAME_VALUE

1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ sphinx==4.5.0
elasticsearch~=7.9.1
tblib~=1.7.0
gevent~=21.8.0
gunicorn~=22.0.0
mysqlclient~=1.4.3
colorama~=0.4.4
jinja2~=3.1.2
Expand Down