The EuroVPS blog
Field notes.
From the engine room.
Decisions, investigations and lessons from running production infrastructure. Written by the people who look after it.
The archive
More from the team.
How to acceptance-test a Kubernetes cluster before production
A green dashboard is not a ready cluster. Test storage restores, node failure, disruption budgets, builds and tenant access on OpenShift or OKD first.
Pull-only backup: why production should never reach its own backups
How to design backups an intruder on production cannot delete: pull from the backup side, lock keys to one command, append-only repos, prune locally.
Change one thing, measure again: finding the real bottleneck
A repeatable method for slow servers: define the symptom, check each resource for use, saturation and errors, change one thing, measure again.
How to test a restore, not just a backup
A green backup job proves the job ran. A restore test proves you can recover: coverage checks, three levels of restore, an isolated lab, timing.
What to check on a new server before it carries production
Acceptance checks for a new dedicated server: memory, drives, RAID cache, flash detection, bonded links, dual power and remote access, with commands.
NFS exports and mounts that fail safely
The NFS defaults that bite shared content: open exports, root access, soft mounts and boot hangs, plus the settings and checks that fix them.
Patching a CloudStack cloud while tenant instances keep running
A layer by layer method for a CloudStack security update: assess, back up, management first, agents one host at a time, routers by evidence.
How to read multipath state on a Linux host
What multipath -ll tells you about your SAN disks: path counts, ALUA priorities, queueing on path loss, and how to prove failover before you need it.
Replicate the group, not the disk: consistency in array replication
Why replicating each volume alone can leave a remote copy that will not start, how consistency groups fix it, and how to test a replica safely.
What to ask a GPU provider before you sign
Twelve questions to ask before renting GPU servers for AI: the exact card, dedicated or shared, jurisdiction, drivers, exposure and data handling.
Why a VM bigger than one CPU socket is often slower
How NUMA works on a two-socket host, why a VM spanning both sockets pays on every memory access, and how to read your topology and size to fit.
Fibre Channel zoning changes, one fabric at a time
How to apply Brocade zoning changes so a mistake can never take every path at once: single initiator zones, naming rules, staged enables, checks.
They stopped calling us when things break.
Clients stopped calling us when things break, and started calling us to build what is next: release engineering, staging environments, secure access and migrations run as projects now fill our engineering queue. The proof is not a testimonial. It is the work itself.
Instant 503 or 403: check above the app first
An error page that arrives with no latency was served before your application ran, so the checklist starts at the edge and works down to the code last.
How sites actually get compromised, and how not to be the easy one.
In security the customer's assumed cause is usually 'nothing is wrong.' Here's how sites actually get compromised, why the top of that list is preventable, and how we prove a door is shut before we call it closed.
A switch can die and your storage keeps serving
What multipath over two independent Fibre Channel fabrics buys you, why RAID inside one server protects far less than it sounds, and why maintenance on one fabric is a non-event for the workload.
Your host should open the ticket first.
On our desk, many tickets are opened by us, off monitoring and security detection, before the customer files anything. Here are the four moves of a forward-deployed team, and the boundary that makes fully managed a described model instead of an adjective.
Why we standardized on all-flash HPE 3PAR
One array family, chosen and mastered, beats a vendor menu of storage tiers. The standardization argument for storage, with the architecture, on the public record, as the receipt.
Maintenance windows: what gets done under load instead
Most planned work on redundant infrastructure happens while it serves; the changes that need a window are designed, bounded and agreed with you first.
ERR_TOO_MANY_REDIRECTS behind a CDN: the two settings that loop together.
The redirect loop that leaves nothing in the access log: a CDN SSL mode that fetches the origin over HTTP, and an origin redirect that is not proxy-aware. Reproduce it with one request and fix both ends.
Why a compromised root account means rebuilding the server, not cleaning it.
On Unix, root is a number, not a name. A UID-0 account with no creation log wasn't made with any tool, it was written into the user file by hand. How to find it, why a single passing check is not proof, and why root for any window means rebuild, not scrub.
Most read
The guides readers come back to- 01Top 10 Reasons Your Site Loads Slowly (And How to Fix Them)
- 02Important Linux Log Files You Must Be Monitoring on RHEL 9 and 10
- 03Configuring WordPress Multisite with Nginx and PHP-FPM on RHEL 9 and 10
- 04Archimedes and the compound pulley: how one man moved a ship
- 05Ultimate Guide to Understanding HTTP Status Codes: 300 Series
- 06Ultimate Guide to Understanding HTTP Status Codes: 400 Series
- 07How much RAM, CPU, Storage, and IOPS resources does your VPS really need?
Put the reading to work
Have a workload in mind?
Start with the numbers.
The sizing desks turn your requirements into a proposed configuration and an indicative price range. An engineer can help you review what fits.

