[ OK ]Initializing kernel...
~/im/blog
Hire Me

Let's Talk

Got an infrastructure problem or need an extra hand? I'm open to discussing new projects.

Get in touch

Connect

Find me on social media and professional networks.

© 2026 Irfan Miral. All rights reserved.Developed byIrfan Miral
Privacy PolicyTerms & Conditions
HomeServicesAbout/ResumeBlogContactTools

Blog

Thoughts, tutorials, and insights from the trenches.

Clear Filters
11 articles•Filtering by:DevOps
2026-10-28• 5 min read
DevOps

Log Management on a Single Server

An ELK stack is massive overkill for one server, but 'grep through /var/log and hope' isn't a strategy either. There is a useful middle ground.

Logging Linux Administration Observability
2026-10-14• 5 min read
DevOps

Monitoring a Small VPS with Prometheus and Grafana

Prometheus and Grafana sound like enterprise tools for a dedicated ops team. But the setup for a single VPS is small enough to be worth it, and it scales perfectly when a second server shows up.

Prometheus Grafana Monitoring
2026-09-16• 6 min read
DevOps

Migrating a Website Without Downtime

'Zero downtime migration' sounds like it needs special tooling. Almost always, it just needs the new server fully tested before DNS changes, and a TTL that was lowered days in advance.

Migration DNS Linux Administration
2026-05-20• 5 min read
DevOps

Docker vs LXC on Proxmox: What I Actually Run in Production

The Docker-vs-LXC debate resurfaces every year. Here is how I actually split workloads across the Proxmox hosts I manage, and why Docker-in-LXC never makes the list.

Proxmox Docker Virtualization
2026-05-14• 5 min read
DevOps

HAProxy or Nginx as a Reverse Proxy: How I Choose

Both can sit in front of your application. Both can do TLS termination and load balancing. The real difference shows up when a backend goes unhealthy.

HAProxy Nginx Load Balancing
2026-03-05• 5 min read
DevOps

Cron vs systemd Timers: When I Reach for Each

systemd timers are more capable, but I still write cron jobs. Here is how I actually decide between the two.

Linux Administration systemd Automation
2026-02-19• 5 min read
DevOps

Why Server Configs Belong in Git, Not in Your Head

An Nginx config edited live at 2 AM during an incident is correct, but completely undocumented. Here is how I keep configs in version control without turning small setups into heavy infrastructure-as-code projects.

Git Infrastructure as Code Linux Administration
2026-02-05• 5 min read
DevOps

The Ansible Playbook I Run on Every New Server

Doing server hardening by hand works fine until you're doing it for the tenth time that month. Here's the Ansible playbook that automates my baseline checklist.

Ansible Automation Linux Administration
2026-01-22• 5 min read
DevOps

A GitLab CI/CD Pipeline That Covers Most Small Projects

Most small projects do not need an elaborate pipeline. They need a basic `.gitlab-ci.yml` that builds, tests, and deploys reliably. Here is the one I start from.

GitLab CI/CD Automation
2026-01-08• 5 min read
DevOps

Bash Scripts I Reuse on Every New Server

A handful of small scripts go on every server I manage before any application gets deployed. None of them are clever, and that is exactly why they are still useful years later.

Bash Linux Administration Automation