enable prometheus ports, configure prometheus server
This commit is contained in:
parent
f7556d0e12
commit
242b70eb21
8 changed files with 272 additions and 158 deletions
0
manifests/grafana/service.yaml
Normal file
0
manifests/grafana/service.yaml
Normal file
|
|
@ -7,8 +7,13 @@ metadata:
|
|||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
name: http
|
||||
targetPort: 4000
|
||||
protocol: TCP
|
||||
- port: 4021
|
||||
name: prometheus
|
||||
targetPort: 4021
|
||||
protocol: TCP
|
||||
selector:
|
||||
app: pleroma
|
||||
---
|
||||
|
|
|
|||
|
|
@ -15,166 +15,167 @@ spec:
|
|||
app: pleroma
|
||||
spec:
|
||||
imagePullSecrets:
|
||||
- name: registry-credentials
|
||||
- name: registry-credentials
|
||||
initContainers:
|
||||
- name: init
|
||||
image: cr.forge.lan/darkdork-dev/pleroma:${CI_COMMIT_SHA}
|
||||
imagePullPolicy: IfNotPresent
|
||||
command: [ "sh", "-c", "mix ecto.migrate" ]
|
||||
env:
|
||||
- name: MIX_ENV
|
||||
value: prod
|
||||
- name: SIGNING_SALT
|
||||
value: quYau0c
|
||||
- name: DOMAIN
|
||||
value: darkdork.dev
|
||||
- name: INSTANCE_NAME
|
||||
value: DarkDork.dev
|
||||
- name: ADMIN_EMAIL
|
||||
value: pwm@crlf.ninja
|
||||
- name: NOTIFY_EMAIL
|
||||
value: pleroma@crlf.ninja
|
||||
- name: REGISTRATIONS_OPEN
|
||||
value: "false"
|
||||
- name: INVITES_ENABLED
|
||||
value: "true"
|
||||
- name: SECRET_KEY_BASE
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: secret-key-base
|
||||
- name: WEB_PUSH_PUBLIC_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-public-key
|
||||
- name: WEB_PUSH_PRIVATE_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-private-key
|
||||
- name: DEFAULT_SIGNER
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: default-signer
|
||||
- name: MEDIA_URL
|
||||
value: "https://media.darkdork.dev"
|
||||
- name: S3_BUCKET
|
||||
value: pleroma.darkdork.dev
|
||||
- name: S3_ACCESS_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-access-key
|
||||
- name: S3_SECRET_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-secret-key
|
||||
- name: S3_SCHEME
|
||||
value: "http://"
|
||||
- name: S3_HOST
|
||||
value: minio
|
||||
- name: S3_PORT
|
||||
value: "80"
|
||||
- name: DB_HOST
|
||||
value: postgres
|
||||
- name: DB_NAME
|
||||
value: pleroma
|
||||
- name: DB_USER
|
||||
value: pleroma
|
||||
- name: DB_PASS
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: postgres
|
||||
key: postgres-password
|
||||
volumeMounts:
|
||||
- name: pleroma-config-volume
|
||||
mountPath: /pleroma/config/prod.secret.exs
|
||||
subPath: prod.secret.exs
|
||||
- name: init
|
||||
image: cr.forge.lan/darkdork-dev/pleroma:${CI_COMMIT_SHA}
|
||||
imagePullPolicy: IfNotPresent
|
||||
command: [ "sh", "-c", "mix ecto.migrate" ]
|
||||
env:
|
||||
- name: MIX_ENV
|
||||
value: prod
|
||||
- name: SIGNING_SALT
|
||||
value: quYau0c
|
||||
- name: DOMAIN
|
||||
value: darkdork.dev
|
||||
- name: INSTANCE_NAME
|
||||
value: DarkDork.dev
|
||||
- name: ADMIN_EMAIL
|
||||
value: pwm@crlf.ninja
|
||||
- name: NOTIFY_EMAIL
|
||||
value: pleroma@crlf.ninja
|
||||
- name: REGISTRATIONS_OPEN
|
||||
value: "false"
|
||||
- name: INVITES_ENABLED
|
||||
value: "true"
|
||||
- name: SECRET_KEY_BASE
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: secret-key-base
|
||||
- name: WEB_PUSH_PUBLIC_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-public-key
|
||||
- name: WEB_PUSH_PRIVATE_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-private-key
|
||||
- name: DEFAULT_SIGNER
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: default-signer
|
||||
- name: MEDIA_URL
|
||||
value: "https://media.darkdork.dev"
|
||||
- name: S3_BUCKET
|
||||
value: pleroma.darkdork.dev
|
||||
- name: S3_ACCESS_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-access-key
|
||||
- name: S3_SECRET_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-secret-key
|
||||
- name: S3_SCHEME
|
||||
value: "http://"
|
||||
- name: S3_HOST
|
||||
value: minio
|
||||
- name: S3_PORT
|
||||
value: "80"
|
||||
- name: DB_HOST
|
||||
value: postgres
|
||||
- name: DB_NAME
|
||||
value: pleroma
|
||||
- name: DB_USER
|
||||
value: pleroma
|
||||
- name: DB_PASS
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: postgres
|
||||
key: postgres-password
|
||||
volumeMounts:
|
||||
- name: pleroma-config-volume
|
||||
mountPath: /pleroma/config/prod.secret.exs
|
||||
subPath: prod.secret.exs
|
||||
containers:
|
||||
- name: pleroma
|
||||
image: cr.forge.lan/darkdork-dev/pleroma:${CI_COMMIT_SHA}
|
||||
imagePullPolicy: IfNotPresent
|
||||
command: ["sh", "-c", "elixir --sname pleroma -S mix phx.server --no-compile"]
|
||||
ports:
|
||||
- containerPort: 4000
|
||||
env:
|
||||
- name: MIX_ENV
|
||||
value: prod
|
||||
- name: SIGNING_SALT
|
||||
value: quYau0c
|
||||
- name: DOMAIN
|
||||
value: darkdork.dev
|
||||
- name: INSTANCE_NAME
|
||||
value: DarkDork.dev
|
||||
- name: ADMIN_EMAIL
|
||||
value: pwm@crlf.ninja
|
||||
- name: NOTIFY_EMAIL
|
||||
value: pleroma@crlf.ninja
|
||||
- name: REGISTRATIONS_OPEN
|
||||
value: "false"
|
||||
- name: INVITES_ENABLED
|
||||
value: "true"
|
||||
- name: SECRET_KEY_BASE
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: secret-key-base
|
||||
- name: WEB_PUSH_PUBLIC_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-public-key
|
||||
- name: WEB_PUSH_PRIVATE_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-private-key
|
||||
- name: DEFAULT_SIGNER
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: default-signer
|
||||
- name: MEDIA_URL
|
||||
value: "https://media.darkdork.dev"
|
||||
- name: S3_BUCKET
|
||||
value: pleroma.darkdork.dev
|
||||
- name: S3_ACCESS_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-access-key
|
||||
- name: S3_SECRET_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-secret-key
|
||||
- name: S3_SCHEME
|
||||
value: "http://"
|
||||
- name: S3_HOST
|
||||
value: minio
|
||||
- name: S3_PORT
|
||||
value: "80"
|
||||
- name: DB_HOST
|
||||
value: postgres
|
||||
- name: DB_NAME
|
||||
value: pleroma
|
||||
- name: DB_USER
|
||||
value: pleroma
|
||||
- name: DB_PASS
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: postgres
|
||||
key: postgres-password
|
||||
volumeMounts:
|
||||
- name: pleroma-config-volume
|
||||
mountPath: /pleroma/config/prod.secret.exs
|
||||
subPath: prod.secret.exs
|
||||
- name: pleroma-emoji-volume
|
||||
mountPath: /static-files/emoji/
|
||||
subPath: emoji/
|
||||
- name: pleroma
|
||||
image: cr.forge.lan/darkdork-dev/pleroma:${CI_COMMIT_SHA}
|
||||
imagePullPolicy: IfNotPresent
|
||||
command: ["sh", "-c", "elixir --sname pleroma -S mix phx.server --no-compile"]
|
||||
ports:
|
||||
- containerPort: 4000
|
||||
- containerPort: 4021
|
||||
env:
|
||||
- name: MIX_ENV
|
||||
value: prod
|
||||
- name: SIGNING_SALT
|
||||
value: quYau0c
|
||||
- name: DOMAIN
|
||||
value: darkdork.dev
|
||||
- name: INSTANCE_NAME
|
||||
value: DarkDork.dev
|
||||
- name: ADMIN_EMAIL
|
||||
value: pwm@crlf.ninja
|
||||
- name: NOTIFY_EMAIL
|
||||
value: pleroma@crlf.ninja
|
||||
- name: REGISTRATIONS_OPEN
|
||||
value: "false"
|
||||
- name: INVITES_ENABLED
|
||||
value: "true"
|
||||
- name: SECRET_KEY_BASE
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: secret-key-base
|
||||
- name: WEB_PUSH_PUBLIC_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-public-key
|
||||
- name: WEB_PUSH_PRIVATE_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: web-push-private-key
|
||||
- name: DEFAULT_SIGNER
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: default-signer
|
||||
- name: MEDIA_URL
|
||||
value: "https://media.darkdork.dev"
|
||||
- name: S3_BUCKET
|
||||
value: pleroma.darkdork.dev
|
||||
- name: S3_ACCESS_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-access-key
|
||||
- name: S3_SECRET_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: pleroma
|
||||
key: minio-secret-key
|
||||
- name: S3_SCHEME
|
||||
value: "http://"
|
||||
- name: S3_HOST
|
||||
value: minio
|
||||
- name: S3_PORT
|
||||
value: "80"
|
||||
- name: DB_HOST
|
||||
value: postgres
|
||||
- name: DB_NAME
|
||||
value: pleroma
|
||||
- name: DB_USER
|
||||
value: pleroma
|
||||
- name: DB_PASS
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: postgres
|
||||
key: postgres-password
|
||||
volumeMounts:
|
||||
- name: pleroma-config-volume
|
||||
mountPath: /pleroma/config/prod.secret.exs
|
||||
subPath: prod.secret.exs
|
||||
- name: pleroma-emoji-volume
|
||||
mountPath: /static-files/emoji/
|
||||
subPath: emoji/
|
||||
volumes:
|
||||
- name: pleroma-config-volume
|
||||
configMap:
|
||||
|
|
|
|||
16
manifests/prometheus/configmap.yaml
Normal file
16
manifests/prometheus/configmap.yaml
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
namespace: darkdork-dev
|
||||
name: prometheus-config
|
||||
data:
|
||||
prometheus.yaml: |
|
||||
global:
|
||||
scrape_interval: 15s
|
||||
|
||||
scrape_configs:
|
||||
- job_name: 'pleroma'
|
||||
scheme: http
|
||||
static_configs:
|
||||
- targets: ['pleroma:4021']
|
||||
40
manifests/prometheus/deployment.yaml
Normal file
40
manifests/prometheus/deployment.yaml
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: prometheus
|
||||
namespace: darkdork-dev
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: prometheus
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: prometheus
|
||||
spec:
|
||||
imagePullSecrets:
|
||||
- name: registry-credentials
|
||||
containers:
|
||||
- name: prometheus
|
||||
image: prom/prometheus
|
||||
imagePullPolicy: IfNotPresent
|
||||
ports:
|
||||
- containerPort: 9090
|
||||
volumeMounts:
|
||||
- name: prometheus-data
|
||||
mountPath: /prometheus
|
||||
- name: prometheus-config
|
||||
mountPath: /etc/prometheus/prometheus.yaml
|
||||
subPath: prometheus.yaml
|
||||
volumes:
|
||||
- name: prometheus-data
|
||||
persistentVolumeClaim:
|
||||
claimName: prometheus-pvc
|
||||
- name: prometheus-config
|
||||
configMap:
|
||||
name: prometheus-config
|
||||
securityContext:
|
||||
fsGroup: 1000
|
||||
---
|
||||
20
manifests/prometheus/ingress.yaml
Normal file
20
manifests/prometheus/ingress.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: prometheus
|
||||
namespace: darkdork-dev
|
||||
spec:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: darkdork.prometheus.lan
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: prometheus
|
||||
port:
|
||||
number: 9090
|
||||
---
|
||||
17
manifests/prometheus/pvc.yaml
Normal file
17
manifests/prometheus/pvc.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: prometheus-pvc
|
||||
namespace: darkdork-dev
|
||||
labels:
|
||||
app: prometheus
|
||||
spec:
|
||||
storageClassName: longhorn-ssd
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage:
|
||||
10Gi
|
||||
---
|
||||
15
manifests/prometheus/service.yaml
Normal file
15
manifests/prometheus/service.yaml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: prometheus
|
||||
namespace: darkdork-dev
|
||||
spec:
|
||||
ports:
|
||||
- port: 9090
|
||||
name: prometheus
|
||||
targetPort: 9090
|
||||
protocol: TCP
|
||||
selector:
|
||||
app: prometheus
|
||||
---
|
||||
Loading…
Add table
Add a link
Reference in a new issue