aboutsummaryrefslogtreecommitdiffstats
path: root/kubernetes/namespaces/default/blackbox
diff options
context:
space:
mode:
authorGravatar Chris Lovering <[email protected]>2023-08-13 20:01:42 +0100
committerGravatar Chris Lovering <[email protected]>2023-08-14 11:44:03 +0100
commit661f49409e69f5cfafbef4cd41411a72ebc5418d (patch)
tree9ddd7f2a2ab09cadc5b716be00628e19d839ad4d /kubernetes/namespaces/default/blackbox
parentAllow multiple documents within yaml files (diff)
Copy all files from kubernetes repo into this one
This commit is a like-for-like copy of the [kubernetes repo](https://github.com/python-discord/kubernetes) check that repo for comit history prioir to this commit. Co-authored-by: Amrou Bellalouna <[email protected]> Co-authored-by: Bradley Reynolds <[email protected]> Co-authored-by: Chris <[email protected]> Co-authored-by: Chris Lovering <[email protected]> Co-authored-by: ChrisJL <[email protected]> Co-authored-by: Den4200 <[email protected]> Co-authored-by: GDWR <[email protected]> Co-authored-by: Hassan Abouelela <[email protected]> Co-authored-by: Hassan Abouelela <[email protected]> Co-authored-by: jchristgit <[email protected]> Co-authored-by: Joe Banks <[email protected]> Co-authored-by: Joe Banks <[email protected]> Co-authored-by: Joe Banks <[email protected]> Co-authored-by: Johannes Christ <[email protected]> Co-authored-by: Kieran Siek <[email protected]> Co-authored-by: kosayoda <[email protected]> Co-authored-by: ks129 <[email protected]> Co-authored-by: Leon Sand├©y <[email protected]> Co-authored-by: Leon Sand├©y <[email protected]> Co-authored-by: MarkKoz <[email protected]> Co-authored-by: Matteo Bertucci <[email protected]> Co-authored-by: Sebastiaan Zeeff <[email protected]> Co-authored-by: Sebastiaan Zeeff <[email protected]> Co-authored-by: vcokltfre <[email protected]>
Diffstat (limited to 'kubernetes/namespaces/default/blackbox')
-rw-r--r--kubernetes/namespaces/default/blackbox/README.md18
-rw-r--r--kubernetes/namespaces/default/blackbox/blackbox-configmap.yaml47
-rw-r--r--kubernetes/namespaces/default/blackbox/cronjob.yaml39
-rw-r--r--kubernetes/namespaces/default/blackbox/secrets.yamlbin0 -> 626 bytes
4 files changed, 104 insertions, 0 deletions
diff --git a/kubernetes/namespaces/default/blackbox/README.md b/kubernetes/namespaces/default/blackbox/README.md
new file mode 100644
index 0000000..f53ef87
--- /dev/null
+++ b/kubernetes/namespaces/default/blackbox/README.md
@@ -0,0 +1,18 @@
+# Blackbox
+These manifests provision a CronJob for blackbox, our database backup tool.
+
+You can find the repository for blackbox at [lemonsaurus/blackbox](https://github.com/lemonsaurus/blackbox).
+
+## Secrets
+blackbox requires the following secrets in a secret titled `blackbox-env`:
+
+| Variable | Description |
+|--------------------------------|------------------------|
+| **POSTGRES_USER** | Postgres username |
+| **POSTGRES_PASSWORD** | Postgres password |
+| **REDIS_PASSWORD** | Redis password |
+| **MONGO_INITDB_ROOT_USERNAME** | MongoDB username |
+| **MONGO_INITDB_ROOT_PASSWORD** | MongoDB password |
+| **AWS_ACCESS_KEY_ID** | Access key for S3 |
+| **AWS_SECRET_ACCESS_KEY** | Secret key for S3 |
+| **DEVOPS_WEBHOOK** | Webhook for #dev-ops |
diff --git a/kubernetes/namespaces/default/blackbox/blackbox-configmap.yaml b/kubernetes/namespaces/default/blackbox/blackbox-configmap.yaml
new file mode 100644
index 0000000..6922b1f
--- /dev/null
+++ b/kubernetes/namespaces/default/blackbox/blackbox-configmap.yaml
@@ -0,0 +1,47 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: blackbox-config
+data:
+ blackbox.yaml: |
+ databases:
+ mongodb:
+ main_mongodb:
+ connection_string: mongodb://{{ MONGO_INITDB_ROOT_USERNAME }}:{{ MONGO_INITDB_ROOT_PASSWORD }}@mongodb.default.svc.cluster.local:27017
+ postgres:
+ main_postgres:
+ username: {{ POSTGRES_USER }}
+ password: {{ POSTGRES_PASSWORD }}
+ host: postgres.default.svc.cluster.local
+ port: "5432"
+ redis:
+ main_redis:
+ password: {{ REDIS_PASSWORD }}
+ host: redis.default.svc.cluster.local
+ port: "6379"
+
+ storage:
+ s3:
+ frankfurt_s3:
+ bucket: blackbox
+ endpoint: eu-central-1.linodeobjects.com
+ aws_access_key_id: {{ AWS_ACCESS_KEY_ID }}
+ aws_secret_access_key: {{ AWS_SECRET_ACCESS_KEY }}
+ newark_s3:
+ bucket: blackbox
+ endpoint: us-east-1.linodeobjects.com
+ aws_access_key_id: {{ AWS_ACCESS_KEY_ID }}
+ aws_secret_access_key: {{ AWS_SECRET_ACCESS_KEY }}
+ singapore_s3:
+ bucket: blackbox
+ endpoint: ap-south-1.linodeobjects.com
+ aws_access_key_id: {{ AWS_ACCESS_KEY_ID }}
+ aws_secret_access_key: {{ AWS_SECRET_ACCESS_KEY }}
+
+
+ notifiers:
+ discord:
+ dev_ops:
+ webhook: {{ DEVOPS_WEBHOOK }}
+
+ retention_days: 7
diff --git a/kubernetes/namespaces/default/blackbox/cronjob.yaml b/kubernetes/namespaces/default/blackbox/cronjob.yaml
new file mode 100644
index 0000000..405bfbe
--- /dev/null
+++ b/kubernetes/namespaces/default/blackbox/cronjob.yaml
@@ -0,0 +1,39 @@
+apiVersion: batch/v1
+kind: CronJob
+metadata:
+ name: blackbox
+spec:
+ schedule: "0 15 * * *"
+ jobTemplate:
+ spec:
+ template:
+ spec:
+ containers:
+ - name: blackbox
+ image: lemonsaurus/blackbox:main
+ imagePullPolicy: Always
+ envFrom:
+ - secretRef:
+ name: blackbox-env
+ env:
+ - name: BLACKBOX_CONFIG_PATH
+ value: "/blackbox/config_file/blackbox.yaml"
+ volumeMounts:
+ - mountPath: /blackbox/config_file
+ name: blackbox-config
+ - mountPath: /tmp
+ name: blackbox-tmp
+ securityContext:
+ readOnlyRootFilesystem: true
+ volumes:
+ - name: blackbox-config
+ configMap:
+ name: blackbox-config
+ - name: blackbox-tmp
+ emptyDir: {}
+ restartPolicy: OnFailure
+ nodeSelector:
+ # NOTE: This should be updated to match the highest spec
+ # instance that is being used by the cluster.
+ beta.kubernetes.io/instance-type: g6-standard-4
+ backoffLimit: 3
diff --git a/kubernetes/namespaces/default/blackbox/secrets.yaml b/kubernetes/namespaces/default/blackbox/secrets.yaml
new file mode 100644
index 0000000..3659e59
--- /dev/null
+++ b/kubernetes/namespaces/default/blackbox/secrets.yaml
Binary files differ