Infrastructure tutorials

Production-grade guides for Linux, servers, security and performance. Copy-paste commands, multi-distro support, written by engineers who run this in production.

monitoring Intermediate

Set up Redis monitoring with Prometheus and Grafana dashboards

Configure comprehensive Redis monitoring using Prometheus Redis Exporter and Grafana dashboards. Monitor Redis performance metrics, memory usage, connections, and replication status with automated alerts for production environments.

45 min 4 distros 638 views
networking Intermediate

Setup Caddy with Consul service discovery for dynamic load balancing

Configure Caddy web server to automatically discover backend services through Consul, enabling dynamic load balancing without manual configuration updates. This setup provides high availability and automatic failover for microservices architectures.

45 min 4 distros 506 views
hosting Advanced

Setup Tomcat 10 clustering with HAProxy load balancing for high availability

Configure Apache Tomcat 10 clustering with HAProxy load balancing to distribute traffic across multiple application server instances. Implement session replication and automatic failover for production-grade Java web applications with high availability and zero-downtime deployments.

45 min 4 distros 512 views
security Intermediate

Set up Node.js application security with Helmet and rate limiting

Secure your Node.js Express applications against common vulnerabilities with Helmet.js middleware and implement rate limiting to prevent abuse and DDoS attacks.

25 min 4 distros 994 views
security Intermediate

Configure GitLab SAML authentication with Keycloak for enterprise SSO

Set up single sign-on (SSO) authentication between GitLab and Keycloak using SAML 2.0 protocol. This enables centralized user management and secure authentication for your GitLab instance through your existing identity provider infrastructure.

45 min 4 distros 425 views
performance Intermediate

Implement Varnish cache warming with automated content preloading for high-performance websites

Set up automated Varnish cache warming with priority URL preloading, systemd timers for scheduled content refreshing, and comprehensive monitoring to optimize cache hit rates and reduce backend server load for high-traffic websites.

35 min 4 distros 612 views
hosting Intermediate

Deploy Django application with Gunicorn and PostgreSQL database migrations

Learn how to deploy a production-ready Django application with Gunicorn WSGI server, PostgreSQL database, and automated database migrations on Ubuntu, Debian, AlmaLinux, and Rocky Linux systems.

35 min 4 distros 708 views
linux Beginner

Configure Linux environment variables and PATH management for development workflows

Learn how to properly configure Linux environment variables and manage your PATH for development workflows. This guide covers temporary and persistent variables, user vs system-wide configuration, and troubleshooting common issues across Ubuntu, Debian, AlmaLinux, Rocky Linux, and Fedora.

20 min 6 distros 577 views
linux Intermediate

Configure Linux user session limits with systemd and pam_limits for resource management

Set up comprehensive user session resource limits using systemd and PAM to prevent resource exhaustion, fix 'too many open files' errors, and enforce memory, CPU, and process restrictions for better system stability.

25 min 6 distros 908 views
hosting Intermediate

Install and configure Gunicorn application server with systemd and reverse proxy for Python web applications

Deploy Python web applications in production using Gunicorn WSGI server with systemd service management and Nginx reverse proxy. Includes performance tuning, security hardening, and monitoring setup.

25 min 6 distros 751 views
performance Intermediate

Optimize HAProxy performance with connection pooling and advanced load balancing algorithms

Configure HAProxy with connection pooling, advanced load balancing algorithms, and performance tuning for high-throughput workloads. Learn to implement least-conn, URI hashing, and buffer optimization.

25 min 6 distros 788 views
networking Advanced

Set up BGP routing with FRRouting for dynamic network routing and failover

Configure BGP routing with FRRouting to implement dynamic network routing, automatic failover, and high availability for enterprise network infrastructure with route filtering and policy management.

45 min 6 distros 726 views

Need help?

Don't want to manage this yourself?

We handle infrastructure for businesses that depend on uptime. From initial setup to ongoing operations.

Talk to an engineer