Hur vi garanterar hög driftsäkerhet

author David Wibergh, om Produkter & infrastruktur

Att kunna garantera en hög driftsäkerhet är inget lätt arbete. Det är bara att kolla på Pingdoms karta över hemsidor som har driftstörningar för att förstå hur ofta det sker att en applikation blir onårbar.

Vi har spenderat många timmar på att planera en arkitektur för våra servrar så att vi ska kunna garantera att OVPNs tunnel ständigt ska fungera. Vi har framförallt prioriterat att det alltid ska gå att ansluta till OVPNs tunnel, vilket betyder att även om hemsidan ligger nere ska VPN-tjänster fungera felfritt.

Arktiketuren ser ut som följande:


Databas

När en användare ansluter till OVPNs tunnel görs det ett anrop till vår databasserver för att autensiera användaren. Om databasservern är onårbar går det inte att ansluta till våra VPN-servrar, även om de fungerar. Därför är det av stor vikt att det ständigt finns åtkomst till databasen.

Vi har i dagsläget två servrar i två åtskilda datahallar som vi använder för MySQL. Den ena servern ligger i Falun, och den andra ligger i Falkenberg. Om en server går ner tar den andra över, vilket drastiskt ökar tillgängligheten.

I framtiden kan vi även komma att lägga till databasserver i fler datahallar för att ytterligare öka tillgängligheten, men i skrivande stund känner vi oss bekväma med att ha två servrar i två åtskilda datahallar.


Geografiskt åtskilda servrar

Vårt mål är att ha VPN-servrar i majoriteten av storstäderna i Sverige för att minimera svarstiden för användare, men också för att ständigt ha en server tillgänglig, även om en hel stad skulle förlora strömmen. Varje datahall vi befinner oss i har multipla fiberanslutningar, UPS, kylaggregat och larmcentral.

Vi har i dagsläget VPN-servrar placerade i två städer i Sverige, nämligen Malmö och Stockholm (Kista). Om en av dessa datahallar skulle bli otillgänglig går det ändå att använda OVPN eftersom det finns tillgänliga servrar i andra städer.


Lastbalanserare

När man ansluter till våra VPN-servrar så ansluter man till pool.prd.se.ovpn.com. IP-adressen för varje VPN-server finns tillagt som ett A-record med en TTL på 60 sekunder för respektive subdomän.

Vi använder oss utav Round-robin DNS för att lastbalansera våra VPN-servrar. Om en VPN-server blir otillgänglig så tas den automatiskt bort från våra DNS-inställningar. När servern återigen blir tillgänglig läggs den till på nytt.

Fördelen med att vi använder oss utav Round-robin är att du aldrig behöver uppdatera din klientkonfiguration när vi lägger till flera VPN-servrar.


Bevakning

Vi använder Monitis för att säkerställa att våra servrar är tillgängliga. Om någon av servrarna skulle bli onårbar blir vi uppringda direkt så att arbetet för att återställa servern kan påbörjas.


Garanti

OVPN garanterar att VPN-tunneln är tillgänglig 99.5% av tiden. Om det är så att vi inte lyckas hålla det vi garanterar, får alla kunder med aktiva abonnemang tillägg på sin abonnemangstid.

För varje minut som passerar en tillgänglighet på 99.5% adderas det två minuter på kundernas abonnemang. Tillgängligheten granskas på månadsbasis, och om tillgängligheten inte har uppnått våra garanterad tid på 99.5% läggs då tiden till automatiskt.


Är du inte kund hos OVPN? Prova OVPN gratis i fem timmar, utan några som helst förpliktelser att fortsätta om det är så att du inte är imponerad.