Systemd Services

How to Deploy a Django Application with Gunicorn and Nginx on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Deploy a Django Application with Gunicorn and Nginx on RHEL 9

Django is a high-level Python web framework that follows the “batteries included” philosophy — it provides an ORM, authentication, admin interface, form validation, URL routing, templating, and security middleware out of the box. This makes Django the framework of choice for data-driven applications and content management systems where rapid development and maintainability matter. Django’s ORM […]

Read more
How to Use Python Virtual Environments (venv) on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Use Python Virtual Environments (venv) on RHEL 9

Python virtual environments solve a fundamental dependency management problem: different projects require different versions of the same library, and installing everything system-wide leads to version conflicts. A virtual environment is a self-contained directory containing a Python interpreter copy and a site-packages directory isolated from the system Python. Each project gets its own virtual environment with […]

Read more
How to Install Apache Kafka on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Install Apache Kafka on RHEL 9

Apache Kafka is a distributed event streaming platform designed for high-throughput, fault-tolerant, and replayable message streams. Unlike traditional message brokers, Kafka persists messages to disk in ordered, append-only topic logs and retains them for a configurable period (days or weeks). Consumers read messages at their own pace using consumer offsets, and any consumer can re-read […]

Read more
How to Monitor MySQL with Prometheus mysqld_exporter on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Monitor MySQL with Prometheus mysqld_exporter on RHEL 9

MySQL’s built-in metrics are powerful but not easily scraped. Prometheus mysqld_exporter is the standard exporter that translates MySQL status variables, InnoDB engine metrics, and replication lag statistics into the Prometheus exposition format. Combined with Grafana, the mysqld_exporter provides real-time dashboards covering query throughput, connection pool usage, InnoDB buffer pool hit rates, disk I/O, and replication […]

Read more
How to Install Elasticsearch 8 on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Install Elasticsearch 8 on RHEL 9

Elasticsearch is a distributed, RESTful search and analytics engine built on Apache Lucene. It stores data as JSON documents in indices and provides near-real-time full-text search, log aggregation, metrics analysis, and complex aggregation queries through a simple HTTP/JSON API. Elasticsearch is the core component of the Elastic Stack (ELK Stack) — Elasticsearch stores and searches […]

Read more
How to Monitor Nginx with Prometheus nginx-exporter on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Monitor Nginx with Prometheus nginx-exporter on RHEL 9

Prometheus is a time-series metrics collection and alerting system widely used for monitoring cloud infrastructure and web servers. The nginx-prometheus-exporter (nginx-exporter) is a lightweight Go binary that reads Nginx’s built-in stub_status page and exposes the metrics in Prometheus format — active connections, total requests, connection states (reading, writing, waiting), and request rate. Combined with Grafana […]

Read more
How to Configure SSL/TLS with OpenSSL and Self-Signed Certificates on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure SSL/TLS with OpenSSL and Self-Signed Certificates on RHEL 9

Even when free trusted certificates from Let’s Encrypt are available for public domains, self-signed certificates serve important roles: development environments, internal network services, IoT devices, automated testing pipelines, and machine-to-machine communication within a private network. Unlike Let’s Encrypt certificates, self-signed certificates require no domain ownership verification or outbound internet access — they can be generated […]

Read more
How to Configure HAProxy for HTTP and TCP Load Balancing on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure HAProxy for HTTP and TCP Load Balancing on RHEL 9

HAProxy (High Availability Proxy) is a battle-hardened open-source load balancer and proxy for TCP and HTTP workloads. Where Nginx load balancing is sufficient for simple round-robin HTTP distribution, HAProxy provides a richer feature set: advanced health checks with multiple failure thresholds, ACL-based routing, Layer 4 TCP load balancing for non-HTTP protocols (MySQL, Redis, SMTP), detailed […]

Read more
How to Install and Configure Caddy Web Server on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Install and Configure Caddy Web Server on RHEL 9

Caddy is a modern, open-source web server written in Go that stands out for one defining feature: automatic HTTPS. Caddy obtains and renews TLS certificates from Let’s Encrypt or ZeroSSL automatically, with zero configuration required beyond specifying a domain name. It also supports HTTP/2 and HTTP/3 (QUIC) out of the box, and its declarative Caddyfile […]

Read more
How to Secure Apache with Let's Encrypt and Certbot on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Secure Apache with Let’s Encrypt and Certbot on RHEL 9

Like Nginx, Apache can be secured with free SSL/TLS certificates from Let’s Encrypt using Certbot. The python3-certbot-apache plugin performs domain validation, obtains the certificate, and automatically updates your Apache virtual host configuration with the SSL directives, HTTP-to-HTTPS redirect, and modern cipher settings. This guide covers installing Certbot on RHEL 9, obtaining a certificate for your […]

Read more
CHAT