quorate/services/cluster-health-api/k8s/deployment.yaml

63 lines
2 KiB
YAML
Raw Permalink Normal View History

apiVersion: apps/v1
kind: Deployment
metadata:
name: cluster-health-api
namespace: cluster-health
labels:
app.kubernetes.io/name: cluster-health-api
app.kubernetes.io/instance: cluster-health-api
spec:
replicas: 2
selector:
matchLabels:
app.kubernetes.io/name: cluster-health-api
app.kubernetes.io/instance: cluster-health-api
template:
metadata:
labels:
app.kubernetes.io/name: cluster-health-api
app.kubernetes.io/instance: cluster-health-api
spec:
runtimeClassName: gvisor
automountServiceAccountToken: false
imagePullSecrets:
- name: quay-cluster-pull
securityContext:
runAsNonRoot: true
runAsUser: 65532
runAsGroup: 65532
seccompProfile:
type: RuntimeDefault
containers:
- name: api
image: registry.quorate.internal/quorate/cluster-health-api@sha256:ac076a500fe75f72cb32e702e6721060b1abb5d32232ce65f480f0351ba5c44d
ports:
- name: http
containerPort: 8080
env:
- name: LISTEN
value: 0.0.0.0:8080
- name: METRICS_URL
value: http://vmselect-main.victoriametrics.svc.cluster.local:8481/select/0/prometheus
- name: PAGE_ORIGIN
value: https://quorate.dev
- name: REFRESH_SECS
value: "60"
- name: GROUPS
value: >-
[["Nodes","label_keep(last_over_time(node_health_day[1d] offset -10m), \"node\")"],["Public services","label_keep(last_over_time(public_health_day[1d] offset -10m), \"name\")"]]
resources:
requests:
cpu: 10m
memory: 32Mi
limits:
memory: 128Mi
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: [ALL]
readinessProbe:
httpGet:
path: /health
port: http