De komende periode zal ik in delen de opzet van ons cluster benoemen en bijzonderheden aangeven waar op te letten als je een vergelijkbare omgeving op wilt zetten. Daarnaast zal ik ook vragen beantwoorden die hier over kunnen ontstaan. Mocht je het zelf ook op willen zetten reken dan op meerdere servers, grote capaciteit voor pieken en makkelijk schalen indien nodig/gewenst. Zodra het cluster groter van omvang is wordt het ook mogelijk delen uit te zetten als het rustiger is (kan handig zijn in bepaalde gevallen).
In deze eerste post ga ik een globale beschrijving van de opzet geven. Alle systemen draaien Debian (maar een andere Linux distributie naar eigen voorkeur kan natuurlijk ook).
De volgende functies hebben wij gekozen voor de servers:
- Loadbalancers (met Keepalived/LVS), 1 netwerk interface vereist
- Caching (kan weggelaten worden, op basis van Varnish en Nginx)
- Webservers (Apache httpd, PHP)
- Database servers (MySQL master-master, automatische failover moeten we nog toe gaan voegen. Gebruikt geen NFS)
- Rest (DirectAdmin/mail/ftp/NFS, momenteel nog de enige SPOF. NFS wil ik op termijn overbodig maken als ik hier een goede optie voor heb gevonden)
Waarom deze opsplitsing? Uit ervaring weten we dat als er ergens problemen ontstaan en extra capaciteit gewenst is dit altijd gaat om webservers of database servers bij ons, het wordt veroorzaakt door veel bezoekers/slechte code. Om dit op te kunnen vangen hebben we deze opzet gemaakt en was het met name van belang om makkelijk webservers er bij in te kunnen zetten en om waar nodig extra database servers neer te kunnen zetten (dan kunnen bepaalde klanten andere database servers gebruiken). Een laatste voordeel van deze opzet is dat onderhoud aan de webservers/loadbalancers/caching overdag uitgevoerd kan worden, dit wordt automatisch door een andere server overgenomen.
Bepaalde design keuzes zal ik de komende tijd nader toelichten, net als waar op te letten. De scripts die we hiervoor geschreven hebben zal ik niet delen, hiervoor zal het beheer van de omgeving waar dit wenselijk is aan ons uitbesteed moeten worden.

Likes:


Quote

.