infrastructure/kustomization/bases/clickhouse.yaml

95 lines
2.1 KiB
YAML

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: clickhouse-data-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 100Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: clickhouse-log-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 5Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nocodelytics-clickhouse
spec:
replicas: 1
selector:
matchLabels:
ms: nocodelytics-clickhouse
template:
metadata:
labels:
ms: nocodelytics-clickhouse
spec:
containers:
- name: nocodelytics-clickhouse
imagePullPolicy: Always
image: clickhouse/clickhouse-server
volumeMounts:
- name: data-volv
mountPath: /var/lib/clickhouse/
- name: log-volv
mountPath: /var/log/clickhouse-server/
- name: clickhouse-config
mountPath: /etc/clickhouse-server/config.xml
subPath: config.xml
resources:
requests:
memory: "1Gi"
cpu: "200m"
ephemeral-storage: "1Mi"
limits:
memory: "1Gi"
cpu: "200m"
ephemeral-storage: "1Mi"
volumes:
- name: data-volv
persistentVolumeClaim:
claimName: clickhouse-data-pvc
- name: log-volv
persistentVolumeClaim:
claimName: clickhouse-log-pvc
- name: clickhouse-config
configMap:
name: clickhouse-config
nodeSelector:
kubernetes.io/arch: arm64
tolerations:
- key: "arch"
operator: "Equal"
value: "arm64"
effect: "NoSchedule"
---
apiVersion: v1
kind: Service
metadata:
name: nocodelytics-clickhouse
spec:
type: NodePort
selector:
ms: nocodelytics-clickhouse
ports:
- port: 9000
name: "clickhouse-client"
targetPort: 9000
nodePort: 31006
- port: 8123
name: "clickhouse-http"
targetPort: 8123
nodePort: 31007