From 8e9a81c34c637de0bfbb46a40d97ce2933b1c1d0 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 00:39:31 +0300 Subject: [PATCH 01/11] Update readme --- .gitignore | 1 + README.md | 12 +++- selfhosted/docker-compose.yml | 65 +++++++++++++++++-- .../postgres/01_postgres_create_dbs.sql | 1 + .../init_scripts/prometheus/prometheus.yml | 2 +- 5 files changed, 73 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 29cb96cf..9e8746d1 100644 --- a/.gitignore +++ b/.gitignore @@ -21,4 +21,5 @@ dist/ ddosify .vscode .idea/ +.DS_Store diff --git a/README.md b/README.md index e52cee77..01cb96c7 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,7 @@ ddosify license ddosify discord server ddosify docker image + cncf landscape

@@ -28,7 +29,7 @@ ## What is Ddosify? -Ddosify is an [open-source](https://github.com/ddosify/ddosify) **Kubernetes Monitoring** and **Performance Testing** platform. +Ddosify is an [open-source](https://github.com/ddosify/ddosify), eBPF-based **Kubernetes Monitoring** and **Performance Testing** platform. ### 🔎 Kubernetes Monitoring @@ -36,8 +37,10 @@ Ddosify is an [open-source](https://github.com/ddosify/ddosify) **Kubernetes Mon - **Automatic Service Map Creation:** Ddosify automatically creates a **service map** of your cluster without code instrumentation or sidecars. So you can easily find the bottlenecks in your system. - **Performance Insights:** It helps you spot issues like services taking too long to respond or slow SQL queries. - **Real-Time Metrics:** The platform tracks and displays live data on your cluster instances CPU, memory, disk, and network usage. -- **Ease of Use:** You don't need to change any code, restart services, or add extra components (like sidecars) to get these insights, thanks to the eBPF technology. +- **Ease of Use:** You don't need to change any code, restart services, or add extra components (like sidecars) to get these insights, thanks to the [eBPF based agent (Alaz)](https://github.com/ddosify/alaz). - **Alerts for Anomalies:** If something unusual, like a sudden increase in CPU usage, happens in your Kubernetes (K8s) cluster, Ddosify immediately sends alerts to your Slack. +- **Seamless Integration with Performance Testing:** Performance testing is natively integrated with Kubernetes monitoring for a unified experience. +- **Distributed Tracing:** Ddosify automatically collects traces from your Kubernetes cluster and generates context propagation without changing a single line of code.

Ddosify Kubernetes Monitoring Metrics @@ -150,6 +153,11 @@ You will see the incoming requests to your K8s cluster, service-to-service traff Ddosify - Find Bottlenecks Feature

+#### ✅ Distributed Tracing + +Ddosify automatically collects traces from your Kubernetes cluster and generates context propagation without changing a single line of code. More → + + ## Performance Testing Features #### ✅ Parametrization Use built-in random data generators. More → diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index 5a7b7e2d..d93c0203 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.8' services: nginx: - image: nginx:1.25.3-alpine + image: nginx:1.25.4-alpine ports: - '8014:80' volumes: @@ -15,7 +15,7 @@ services: - ddosify frontend: - image: ddosify/selfhosted_frontend:2.5.2 + image: ddosify/selfhosted_frontend:latest depends_on: - backend restart: always @@ -24,7 +24,7 @@ services: - ddosify backend: - image: ddosify/selfhosted_backend:2.4.4 + image: ddosify/selfhosted_backend:latest depends_on: - postgres - influxdb @@ -39,7 +39,7 @@ services: command: /workspace/start_scripts/start_app_onprem.sh backend-celery-worker: - image: ddosify/selfhosted_backend:2.4.4 + image: ddosify/selfhosted_backend:latest depends_on: - postgres - influxdb @@ -56,7 +56,7 @@ services: command: /workspace/start_scripts/start_celery_worker.sh backend-celery-beat: - image: ddosify/selfhosted_backend:2.4.4 + image: ddosify/selfhosted_backend:latest depends_on: - postgres - influxdb @@ -72,6 +72,55 @@ services: pull_policy: always command: /workspace/start_scripts/start_celery_beat.sh + alaz-backend: + image: ddosify/selfhosted_alaz_backend:latest + depends_on: + - postgres + - influxdb + - redis + - backend + env_file: + - .env + networks: + - ddosify + restart: always + pull_policy: always + command: /workspace/start_scripts/start_app_onprem.sh + + alaz-backend-celery-worker: + image: ddosify/selfhosted_alaz_backend:latest + depends_on: + - postgres + - influxdb + - redis + - alaz-backend + - rabbitmq-celery-backend + - backend + env_file: + - .env + networks: + - ddosify + restart: always + pull_policy: always + command: /workspace/start_scripts/start_celery_worker.sh + + alaz-backend-celery-beat: + image: ddosify/selfhosted_alaz_backend:latest + depends_on: + - postgres + - influxdb + - redis + - alaz-backend + - rabbitmq-celery-backend + - backend + env_file: + - .env + networks: + - ddosify + restart: always + pull_policy: always + command: /workspace/start_scripts/start_celery_beat.sh + hammermanager: ports: - "9901:8001" @@ -174,6 +223,12 @@ services: - ddosify restart: always + rabbitmq-celery-alaz-backend: + image: "rabbitmq:3.9.4" + networks: + - ddosify + restart: always + rabbitmq-job: ports: - "6672:5672" diff --git a/selfhosted/init_scripts/postgres/01_postgres_create_dbs.sql b/selfhosted/init_scripts/postgres/01_postgres_create_dbs.sql index cd932a5d..c1c018c9 100644 --- a/selfhosted/init_scripts/postgres/01_postgres_create_dbs.sql +++ b/selfhosted/init_scripts/postgres/01_postgres_create_dbs.sql @@ -1,2 +1,3 @@ CREATE DATABASE backend; +CREATE DATABASE alazbackend; CREATE DATABASE hammermanager; diff --git a/selfhosted/init_scripts/prometheus/prometheus.yml b/selfhosted/init_scripts/prometheus/prometheus.yml index a26769b5..a17d4aa8 100644 --- a/selfhosted/init_scripts/prometheus/prometheus.yml +++ b/selfhosted/init_scripts/prometheus/prometheus.yml @@ -13,4 +13,4 @@ scrape_configs: - job_name: "backend" metrics_path: '/alaz/metrics/scrape' static_configs: - - targets: ["backend:8008"] + - targets: ["alaz-backend:8008"] From bb4bb14bca2d819af82b1fb16594154adfbe9702 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 00:45:02 +0300 Subject: [PATCH 02/11] Update compose --- selfhosted/docker-compose.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index d93c0203..1e72508c 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -212,19 +212,19 @@ services: restart: always rabbitmq-celery: - image: "rabbitmq:3.9.4" + image: "rabbitmq:3.13.0" networks: - ddosify restart: always rabbitmq-celery-backend: - image: "rabbitmq:3.9.4" + image: "rabbitmq:3.13.0" networks: - ddosify restart: always rabbitmq-celery-alaz-backend: - image: "rabbitmq:3.9.4" + image: "rabbitmq:3.13.0" networks: - ddosify restart: always @@ -232,7 +232,7 @@ services: rabbitmq-job: ports: - "6672:5672" - image: "rabbitmq:3.9.4" + image: "rabbitmq:3.13.0" networks: - ddosify restart: always @@ -255,7 +255,7 @@ services: restart: always redis: - image: "redis:6.2.6" + image: "redis:7.2.4" volumes: - redis_data:/data networks: From b5812da4f7636295a36a1902ad882c3a360d0e23 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 16:15:49 +0300 Subject: [PATCH 03/11] Add nginx rule for alaz api --- selfhosted/nginx/default_reverseproxy.conf | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/selfhosted/nginx/default_reverseproxy.conf b/selfhosted/nginx/default_reverseproxy.conf index 31a16aa5..dac22f8b 100644 --- a/selfhosted/nginx/default_reverseproxy.conf +++ b/selfhosted/nginx/default_reverseproxy.conf @@ -25,4 +25,12 @@ server { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } + + location /api-alaz/ { + proxy_pass http://alaz-backend; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } } From 835269bd39f20b86b750deecf180615e5433edba Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 16:21:20 +0300 Subject: [PATCH 04/11] Update nginx rule for alaz api --- selfhosted/nginx/default_reverseproxy.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/selfhosted/nginx/default_reverseproxy.conf b/selfhosted/nginx/default_reverseproxy.conf index dac22f8b..1e80cca8 100644 --- a/selfhosted/nginx/default_reverseproxy.conf +++ b/selfhosted/nginx/default_reverseproxy.conf @@ -6,6 +6,10 @@ upstream backend { server backend:8008; } +upstream alaz-backend { + server alaz-backend:8008; +} + server { listen 80; client_max_body_size 96M; From a1a13c4d74e5f8c3f69186aa228ee8900db9eb0c Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 18:43:36 +0300 Subject: [PATCH 05/11] Update --- selfhosted/init_scripts/prometheus/prometheus.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/selfhosted/init_scripts/prometheus/prometheus.yml b/selfhosted/init_scripts/prometheus/prometheus.yml index a17d4aa8..f59f3238 100644 --- a/selfhosted/init_scripts/prometheus/prometheus.yml +++ b/selfhosted/init_scripts/prometheus/prometheus.yml @@ -11,6 +11,9 @@ rule_files: scrape_configs: - job_name: "backend" - metrics_path: '/alaz/metrics/scrape' + metrics_path: '/metrics/scrape' static_configs: - targets: ["alaz-backend:8008"] + basic_auth: + username: alaz-backend + password: jRTyHAbUHYE37hRBgEz From cdc0a7b6c7b58f333ced65a12a315cbf578bd4b3 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 20:36:38 +0300 Subject: [PATCH 06/11] Add port to postgres --- selfhosted/docker-compose.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index 1e72508c..a18fc700 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -205,6 +205,8 @@ services: volumes: - postgres_data:/var/lib/postgresql/data - ./init_scripts/postgres:/docker-entrypoint-initdb.d + ports: + - "5532:5432" env_file: - .env networks: From 61f595be5b76a205c72e849817ac1490915b4660 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Fri, 15 Mar 2024 21:02:59 +0300 Subject: [PATCH 07/11] Add extra worker --- selfhosted/docker-compose.yml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index a18fc700..3538b556 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -87,7 +87,24 @@ services: pull_policy: always command: /workspace/start_scripts/start_app_onprem.sh - alaz-backend-celery-worker: + alaz-backend-celery-worker-1: + image: ddosify/selfhosted_alaz_backend:latest + depends_on: + - postgres + - influxdb + - redis + - alaz-backend + - rabbitmq-celery-backend + - backend + env_file: + - .env + networks: + - ddosify + restart: always + pull_policy: always + command: /workspace/start_scripts/start_celery_worker.sh + + alaz-backend-celery-worker-2: image: ddosify/selfhosted_alaz_backend:latest depends_on: - postgres From d471d3e47e76efa65211ecb8c37ad77f0f628b21 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Mon, 18 Mar 2024 16:33:45 +0300 Subject: [PATCH 08/11] Update --- selfhosted/docker-compose.yml | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index 3538b556..4da476ec 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -28,7 +28,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-backend - seaweedfs env_file: - .env @@ -43,7 +43,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-backend - seaweedfs - backend - rabbitmq-celery-backend @@ -60,7 +60,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-backend - seaweedfs - backend - rabbitmq-celery-backend @@ -77,7 +77,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-backend - backend env_file: - .env @@ -92,7 +92,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-alaz-backend - alaz-backend - rabbitmq-celery-backend - backend @@ -109,7 +109,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-alaz-backend - alaz-backend - rabbitmq-celery-backend - backend @@ -126,7 +126,7 @@ services: depends_on: - postgres - influxdb - - redis + - redis-alaz-backend - alaz-backend - rabbitmq-celery-backend - backend @@ -273,10 +273,18 @@ services: - ddosify restart: always - redis: + redis-backend: image: "redis:7.2.4" volumes: - - redis_data:/data + - redis_backend_data:/data + networks: + - ddosify + restart: always + + redis-alaz-backend: + image: "redis:7.2.4" + volumes: + - redis_alaz_backend_data:/data networks: - ddosify restart: always @@ -307,7 +315,8 @@ services: volumes: postgres_data: influxdb_data: - redis_data: + redis_backend_data: + redis_alaz_backend_data: seaweedfs_data: hammer_id: hammerdebug_id: From 0c88866e87ccf679cc6f78cc85368c0dc110b4e8 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Mon, 18 Mar 2024 20:44:51 +0300 Subject: [PATCH 09/11] Update compose --- selfhosted/docker-compose.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index 4da476ec..6a77e1f6 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -15,7 +15,7 @@ services: - ddosify frontend: - image: ddosify/selfhosted_frontend:latest + image: ddosify/selfhosted_frontend:2.7.3 depends_on: - backend restart: always @@ -24,7 +24,7 @@ services: - ddosify backend: - image: ddosify/selfhosted_backend:latest + image: ddosify/selfhosted_backend:2.6.5 depends_on: - postgres - influxdb @@ -39,7 +39,7 @@ services: command: /workspace/start_scripts/start_app_onprem.sh backend-celery-worker: - image: ddosify/selfhosted_backend:latest + image: ddosify/selfhosted_backend:2.6.5 depends_on: - postgres - influxdb @@ -56,7 +56,7 @@ services: command: /workspace/start_scripts/start_celery_worker.sh backend-celery-beat: - image: ddosify/selfhosted_backend:latest + image: ddosify/selfhosted_backend:2.6.5 depends_on: - postgres - influxdb @@ -73,7 +73,7 @@ services: command: /workspace/start_scripts/start_celery_beat.sh alaz-backend: - image: ddosify/selfhosted_alaz_backend:latest + image: ddosify/selfhosted_alaz_backend:1.0.3 depends_on: - postgres - influxdb @@ -88,7 +88,7 @@ services: command: /workspace/start_scripts/start_app_onprem.sh alaz-backend-celery-worker-1: - image: ddosify/selfhosted_alaz_backend:latest + image: ddosify/selfhosted_alaz_backend:1.0.3 depends_on: - postgres - influxdb @@ -105,7 +105,7 @@ services: command: /workspace/start_scripts/start_celery_worker.sh alaz-backend-celery-worker-2: - image: ddosify/selfhosted_alaz_backend:latest + image: ddosify/selfhosted_alaz_backend:1.0.3 depends_on: - postgres - influxdb @@ -122,7 +122,7 @@ services: command: /workspace/start_scripts/start_celery_worker.sh alaz-backend-celery-beat: - image: ddosify/selfhosted_alaz_backend:latest + image: ddosify/selfhosted_alaz_backend:1.0.3 depends_on: - postgres - influxdb @@ -141,7 +141,7 @@ services: hammermanager: ports: - "9901:8001" - image: ddosify/selfhosted_hammermanager:1.2.3 + image: ddosify/selfhosted_hammermanager:1.2.4 depends_on: - postgres - rabbitmq-job @@ -155,7 +155,7 @@ services: command: /workspace/start_scripts/start_app.sh hammermanager-celery-worker: - image: ddosify/selfhosted_hammermanager:1.2.3 + image: ddosify/selfhosted_hammermanager:1.2.4 depends_on: - postgres - rabbitmq-job @@ -170,7 +170,7 @@ services: command: /workspace/start_scripts/start_celery_worker.sh hammermanager-celery-beat: - image: ddosify/selfhosted_hammermanager:1.2.3 + image: ddosify/selfhosted_hammermanager:1.2.4 depends_on: - postgres - rabbitmq-job From 855d02ccacd9d56c27e105b04520304b74c50e9a Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Mon, 18 Mar 2024 20:50:36 +0300 Subject: [PATCH 10/11] Update selfhosted/VERSION from 1.5.5 to 1.6.0 --- selfhosted/VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfhosted/VERSION b/selfhosted/VERSION index 5ebba4f0..ce6a70b9 100644 --- a/selfhosted/VERSION +++ b/selfhosted/VERSION @@ -1 +1 @@ -1.5.5 \ No newline at end of file +1.6.0 \ No newline at end of file From 79242bd426313cbe74af5252da99f18e8f59acc1 Mon Sep 17 00:00:00 2001 From: fatihbaltaci Date: Mon, 18 Mar 2024 20:51:50 +0300 Subject: [PATCH 11/11] Remove postgres port --- selfhosted/docker-compose.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/selfhosted/docker-compose.yml b/selfhosted/docker-compose.yml index 6a77e1f6..6c1633dc 100644 --- a/selfhosted/docker-compose.yml +++ b/selfhosted/docker-compose.yml @@ -222,8 +222,6 @@ services: volumes: - postgres_data:/var/lib/postgresql/data - ./init_scripts/postgres:/docker-entrypoint-initdb.d - ports: - - "5532:5432" env_file: - .env networks: