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.
Browse by topic
Linux
System administration, shell scripting, package management
Hosting & Servers
Web servers, reverse proxies, SSL, domains
Security
Firewalls, hardening, encryption, access control
Performance
Caching, optimization, profiling, load testing
Databases
MySQL, PostgreSQL, Redis, backups, replication
Networking
DNS, load balancing, VPN, TCP/IP, routing
DevOps
CI/CD, Docker, Kubernetes, automation
Monitoring
Logging, alerting, metrics, observability
Most viewed
Install and configure Deno for web development with systemd and reverse proxy
hostingInstall and configure Caddy web server with automatic HTTPS and reverse proxy
hostingInstall and configure Ollama for local AI models on Linux servers
devopsInstall and configure Uvicorn ASGI server with systemd and reverse proxy for FastAPI applications
hostingInstall and configure Uptime Kuma for website monitoring with SSL and email alerts
monitoringRecently published
Implement Apache load balancing with SSL termination and health checks
hostingSetup Node.js error tracking with Sentry for production monitoring and debugging
monitoringImplement Node.js application monitoring with Prometheus metrics and Grafana dashboards
monitoringImplement OSPF multi-area design with FRRouting and advanced routing policies
networkingConfigure Istio security policies with external authorization services integration
securityConfigure NTP server with chrony and security hardening for precise time synchronization
Set up a production-grade NTP server using chrony with client access controls, firewall rules, and security hardening. Learn to configure upstream time sources, implement monitoring, and troubleshoot common synchronization issues.
Set up Jaeger high availability clustering with load balancing and failover
Deploy a production-grade Jaeger distributed tracing cluster with Elasticsearch backend, load-balanced collectors, and automatic failover for enterprise-scale microservices monitoring.
Set up Spark 3.5 Delta Lake with MinIO for ACID transactions and big data analytics
Configure Apache Spark 3.5 with Delta Lake and MinIO object storage for ACID transactions, data versioning, and distributed analytics processing. Includes complete setup for production-grade data lake architecture.
Configure MariaDB 11.6 master-slave replication with SSL encryption and automatic failover
Set up production-grade MariaDB master-slave replication with SSL/TLS encryption for secure data transmission and MaxScale for automatic failover and load balancing.
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.
Configure Apache rate limiting and DDoS protection with mod_security and mod_evasive
Set up comprehensive Apache protection against DDoS attacks and malicious traffic using mod_evasive for rate limiting, mod_security with OWASP rules for web application firewall capabilities, and fail2ban integration for automated IP blocking.
Configure Node.js application clustering with PM2 and load balancing
Set up PM2 clustering to scale Node.js applications across CPU cores with NGINX load balancing. Monitor performance and optimize resource utilization for high-traffic production workloads.
Configure ClamAV cluster scanning for high availability and enterprise threat detection
Build a production-grade ClamAV cluster with HAProxy load balancing, shared virus definitions, and comprehensive monitoring for enterprise-scale threat detection and high availability.
Configure application connection pooling for CockroachDB with PgBouncer and HAProxy
Set up efficient connection pooling for CockroachDB applications using PgBouncer as a connection pool manager and HAProxy for load balancing across multiple database nodes. This configuration reduces database connection overhead and improves application performance.
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.
Monitor Linux system resources with performance alerts and automated responses
Set up comprehensive Linux system monitoring with Prometheus, Node Exporter, and Alertmanager to track CPU, memory, and disk usage with automated alerts and response scripts for proactive system management.
Configure network monitoring with SNMP and Grafana dashboards for infrastructure visibility
Set up comprehensive network monitoring using SNMP with Prometheus and Grafana to monitor network devices, collect performance metrics, and create visual dashboards for infrastructure visibility.
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