364 lines
10 KiB
HCL
364 lines
10 KiB
HCL
kubernetes = {
|
|
|
|
gluetun = {
|
|
#enabled = false
|
|
dns_nameservers = "1.1.1.1"
|
|
replicas = 01
|
|
image = "qmcgaw/gluetun:latest"
|
|
exposed = false
|
|
service_port = [8888]
|
|
secret_import = ["5527ba11-07e3-415b-8d1f-b3ee0154eb56", "b0d22160-d81a-4702-a3dd-b40e0168d617", "643dbe99-ace0-4ef5-8a2e-b44f014dccb0"]
|
|
security_context = true
|
|
|
|
environment = {
|
|
WIREGUARD_PRIVATE_KEY = {
|
|
value_from = {
|
|
secret_key_ref = {
|
|
name = "gluetun-secret-nl-free-280"
|
|
key = "WIREGUARD_PRIVATE_KEY"
|
|
}
|
|
}
|
|
}
|
|
HTTPPROXY = {
|
|
value = "on"
|
|
}
|
|
HTTPPROXY_LOG = {
|
|
value = "on"
|
|
}
|
|
HTTPPROXY_LISTENING_ADDRESS = {
|
|
value = "0.0.0.0:8888"
|
|
}
|
|
VPN_SERVICE_PROVIDER = {
|
|
value = "protonvpn"
|
|
}
|
|
VPN_TYPE = {
|
|
value = "wireguard"
|
|
}
|
|
SERVER_COUNTRIES = {
|
|
value = "Netherlands"
|
|
}
|
|
HEALTH_TARGET_ADDRESS = {
|
|
value = "0.0.0.0:8888"
|
|
}
|
|
|
|
FREE_ONLY = {
|
|
value = "on"
|
|
}
|
|
|
|
FIREWALL_INPUT_PORTS = {
|
|
value = "8081,7878,9696,9091,51413,8080,6881,8989,8191,8888,8000"
|
|
}
|
|
PUBLICIP_API = {
|
|
value = "ip2location"
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
django = {
|
|
#enabled = false
|
|
namespace = "django"
|
|
domain_name = ["django", "admin", "redirect", "streaming", "stash", "simpsons", "kubernetes", "cloudmanager", "podcast"]
|
|
image = "gitea.geeraert.eu/pi-ux-ce/django-python:latest"
|
|
service_port = [8000]
|
|
database = {
|
|
image = "docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0"
|
|
username = "django_username"
|
|
mountPath = "/var/lib/postgresql/data"
|
|
}
|
|
secret_ref = ["django-bitwarden-credentials"]
|
|
secret_import = ["9fc5a725-75f5-4bab-b595-b474017146c3"]
|
|
requirements = {
|
|
limits-cpu = "800m"
|
|
limits-memory = "800Mi"
|
|
requests-cpu = "10m"
|
|
requests-memory = "300Mi"
|
|
}
|
|
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/django/kubeconfig.secret.yaml", "/opt/kubernetes/Terraform_kube/external_manifests/django/django-db.secret.yaml"]
|
|
|
|
environment = {
|
|
ALLOWED_HOSTS = {
|
|
value = "django.geeraert.eu,admin.geeraert.eu,redirect.geeraert.eu,streaming.geeraert.eu,stash.geeraert.eu,simpsons.geeraert.eu,kubernetes.geeraert.eu,cloudmanager.geeraert.eu,podcast.geeraert.eu"
|
|
}
|
|
DEBUG = {
|
|
value = "False"
|
|
}
|
|
ENVIRONMENT = {
|
|
value = "PRODUCTION"
|
|
}
|
|
|
|
DB_PASSWORD = {
|
|
value_from = {
|
|
secret_key_ref = {
|
|
name = "django-db-credentials"
|
|
key = "DB_PASSWORD"
|
|
}
|
|
}
|
|
}
|
|
POSTGRES_DB = {
|
|
value_from = {
|
|
secret_key_ref = {
|
|
name = "django-db-credentials"
|
|
key = "DB_DATABASE_NAME"
|
|
}
|
|
}
|
|
}
|
|
POSTGRES_USER = {
|
|
value_from = {
|
|
secret_key_ref = {
|
|
name = "django-db-credentials"
|
|
key = "DB_USERNAME"
|
|
}
|
|
}
|
|
}
|
|
POSTGRES_PASSWORD = {
|
|
value_from = {
|
|
secret_key_ref = {
|
|
name = "django-db-credentials"
|
|
key = "DB_PASSWORD"
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
DB_HOSTNAME = {
|
|
value_from = {
|
|
secret_key_ref = {
|
|
name = "django-db-credentials"
|
|
key = "DB_HOST"
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
pvc = {
|
|
kubeconfig = {
|
|
secret = true
|
|
mount_path = "/kubeconfig"
|
|
}
|
|
|
|
stash-django-pvc = {
|
|
host_path = "/ssd/stash/data-pvc/"
|
|
mount_path = "/stash"
|
|
}
|
|
}
|
|
import_database_secret = {
|
|
host = "c73c74e5-b482-4abb-a4b3-b3ed00b0f089"
|
|
name = "0a0d6458-86e9-4257-b874-b3ed00b6a11c"
|
|
password = "6e947bd5-5646-4838-a93a-b3ed00b0f176"
|
|
port = "5e7de818-6131-4372-923c-b3ed00b0efa2"
|
|
username = "30ce2424-e67c-42d5-a5ac-b3ed00b0f0fc"
|
|
|
|
}
|
|
}
|
|
|
|
django-testing = {
|
|
#enabled = false
|
|
image = "gitea.geeraert.eu/pi-ux-ce/django-testing:latest"
|
|
service_port = [8000]
|
|
domain_name = ["django-testing", "admin-testing", "redirect-testing", "streaming-testing", "stash-testing", "simpsons-testing", "kubernetes-testing", "cloudmanager-testing", "podcast-testing"]
|
|
database = {}
|
|
requirements = {
|
|
limits-cpu = "800m"
|
|
limits-memory = "800Mi"
|
|
requests-cpu = "10m"
|
|
requests-memory = "300Mi"
|
|
}
|
|
extra_manifest = ["../external_manifests/django/kubeconfig-testing.secret.yaml"]
|
|
secret_ref = ["django-bitwarden-credentials"]
|
|
secret_import = ["68dce7aa-8e5f-4483-9083-b474016e34fc"]
|
|
environment = {
|
|
ALLOWED_HOSTS = {
|
|
value = "django-testing.geeraert.eu,admin-testing.geeraert.eu,redirect-testing.geeraert.eu,streaming-testing.geeraert.eu,stash-testing.geeraert.eu,simpsons-testing.geeraert.eu,kubernetes-testing.geeraert.eu,cloudmanager-testing.geeraert.eu,podcast-testing.geeraert.eu"
|
|
}
|
|
CELERY_BROKER_URL = {
|
|
value = "redis://django-testing-redis-svc:6379"
|
|
}
|
|
|
|
DEBUG = {
|
|
value = "true"
|
|
}
|
|
DB_PORT = {
|
|
value = 5432
|
|
}
|
|
CUSTOM_DB_DATABASE = {
|
|
value = "cloudmanager" }
|
|
}
|
|
pvc = {
|
|
kubeconfig = {
|
|
secret = true
|
|
mount_path = "/kubeconfig"
|
|
}
|
|
}
|
|
|
|
import_database_secret = {
|
|
host = "097f10de-63ee-405c-b46a-b41001781e07"
|
|
name = "20530a85-e446-4d79-8985-b41001781e07"
|
|
password = "a3385f49-ba92-4478-b6f1-b4e100ff01fb"
|
|
port = "e15e00eb-db1e-47ea-ab0e-b41001781e09"
|
|
username = "3c67d310-7113-45b7-8f3f-b41001781e08"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
fail2ban = {
|
|
enabled = false
|
|
#image = "lscr.io/linuxserver/fail2ban:latest"
|
|
image = "gitea.tryton.geeraert.eu/pi-ux-ce/fail2ban:latest"
|
|
extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/fail2ban/fail2ban.RoleBinding.yaml", "/opt/kubernetes/Terraform_kube/external_manifests/fail2ban/fail2ban.Role.yaml", "/opt/kubernetes/Terraform_kube/external_manifests/fail2ban/fail2ban.ServiceAccount.yaml"]
|
|
service_account_name = "kubectl-service-account"
|
|
config_map_import = ["9d8ef71a-de74-478b-aa86-b3ee0160dc43", "50814edb-d190-41cb-8950-b3ee01622dcf", "fb11452e-fec1-489f-9144-b3ee0162ccda"]
|
|
environment = {
|
|
PUID = {
|
|
value = "1000"
|
|
}
|
|
PGID = {
|
|
value = "1000"
|
|
}
|
|
TZ = {
|
|
value = "Etc/UTC"
|
|
}
|
|
|
|
VERBOSITY = {
|
|
value = "-vv" }
|
|
}
|
|
|
|
security_context = true
|
|
pvc = {
|
|
fail2ban-config = {
|
|
pvc = true
|
|
pvc_size = "2Mi"
|
|
mount_path = "/config"
|
|
name = "fail2ban-config"
|
|
}
|
|
fail2ban-log = {
|
|
pvc = true
|
|
pvc_size = "2Mi"
|
|
mount_path = "/var/log"
|
|
name = "fail2ban-log"
|
|
}
|
|
nginx-fail2ban-logs = {
|
|
host_path = "/data/kubernetes/reverse-proxy/reverse-proxy-log/"
|
|
name = "nginx-fail2ban-logs"
|
|
pvc_size = "2Mi"
|
|
mount_path = "/remotelogs/nginx/"
|
|
}
|
|
fail2ban-nginx-http-auth-jail = {
|
|
config_map = true
|
|
name = "fail2ban-nginx-http-auth-jail"
|
|
pvc_size = "2Mi"
|
|
mount_path = "/config/fail2ban/jail.d/"
|
|
}
|
|
fail2ban-nginx-unauthorized-filter = {
|
|
config_map = true
|
|
name = "fail2ban-nginx-unauthorized-filter"
|
|
pvc_size = "2Mi"
|
|
mount_path = "/config/fail2ban/filter.d/"
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
netdatat = {
|
|
image = "debian"
|
|
enabled = false
|
|
service_port = [19999]
|
|
domain_name = ["netdata"]
|
|
command = ["sleep", "3600"]
|
|
security_context = true
|
|
|
|
environment = {
|
|
NETDATA_CLAIM_TOKEN = {
|
|
value = "wN6wJV1M5jvLbcpQTT78s0WRWiCkxz-s4l9tzeIqwA86upIkVSTk6TbaPbA5L6h_5HH9LoemluBqSPAGzi8DnJ2LBp4e8JGRVuWwOv8EWcKfrV0winCPce4xXtuD780KUW5CR6k"
|
|
}
|
|
NETDATA_CLAIM_URL = {
|
|
value = "https://app.netdata.cloud"
|
|
}
|
|
NETDATA_CLAIM_ROOMS = {
|
|
value = "28654d7b-4767-4b8e-bddc-8d134624bb3b"
|
|
}
|
|
}
|
|
|
|
pvc = {
|
|
netdata-config = {
|
|
name = "netdata-config"
|
|
pvc = true
|
|
pvc_size = "1Gi"
|
|
mount_path = "/etc/netdata"
|
|
}
|
|
netdata-lib = {
|
|
name = "netdata-lib"
|
|
pvc = true
|
|
pvc_size = "1Gi"
|
|
mount_path = "/var/lib/netdata"
|
|
}
|
|
netdata-cache = {
|
|
name = "netdata-cache"
|
|
pvc = true
|
|
pvc_size = "1Gi"
|
|
mount_path = "/var/cache/netdata"
|
|
}
|
|
netdata-host-root = {
|
|
host_path = "/"
|
|
name = "netdata-host-root"
|
|
mount_path = "/host/root"
|
|
}
|
|
netdata-host-passwd = {
|
|
host_path = "/etc/passwd"
|
|
name = "netdata-host-passwd"
|
|
mount_path = "/host/etc/passwd"
|
|
}
|
|
netdata-host-group = {
|
|
host_path = "/etc/group"
|
|
name = "netdata-host-group"
|
|
mount_path = "/host/etc/group"
|
|
}
|
|
netdata-host-localtime = {
|
|
host_path = "/etc/localtime"
|
|
name = "netdata-host-localtime"
|
|
mount_path = "/etc/localtime"
|
|
}
|
|
netdata-host-proc = {
|
|
host_path = "/proc"
|
|
name = "netdata-host-proc"
|
|
mount_path = "/host/proc"
|
|
}
|
|
netdata-host-sys = {
|
|
host_path = "/sys"
|
|
name = "netdata-host-sys"
|
|
mount_path = "/host/sys"
|
|
}
|
|
netdata-host-os-release = {
|
|
host_path = "/etc/os-release"
|
|
name = "netdata-host-os-release"
|
|
mount_path = "/host/etc/os-release"
|
|
}
|
|
netdata-host-var-log = {
|
|
host_path = "/var/log"
|
|
name = "netdata-host-var-log"
|
|
mount_path = "/host/var/log"
|
|
}
|
|
netdata-docker-sock = {
|
|
host_path = "/var/run/docker.sock"
|
|
name = "netdata-docker-sock"
|
|
mount_path = "/var/run/docker.sock"
|
|
}
|
|
netdata-host-dbus = {
|
|
host_path = "/run/dbus"
|
|
name = "netdata-host-dbus"
|
|
mount_path = "/run/dbus"
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|