Hey,
Momenteel draait mijn website op 1 server. Ik heb nog ergens een vps'je welke het over kan nemen maar de site wordt nu te groot om zo maar even om te zetten en bovendien zou dat handmatig gaan. Omdat ik bang ben dat er ooit een keertje wat kapot gaat aan server 1 heb wil ik er nog een server bijkopen en
het zooitje dan zo configureren dat dit niet meer zo gemakklijk offline gaat als er een service uitvalt. Bovendien wil ik er ook graag wat snelheidswinst uit halen door de load naar de php/mysql backend te verdelen mits beide servers online zijn natuurlijk
Ik heb al gedacht aan virtualisatie maar de snelheid daarvan bevalt me niet en de kosten nog minder. Mijn grootste zorg is hardware uitval op dit moment. Het datacenter is vlak bij mij in de buurt, goedkoop en betrouwbaar. Daarom wil ik daar graag daar een tweede server plaatsen. Mocht het echt mis gaan dan heb ik op 2 locaties backups van de server (hoera synology).
Op die server draait nginx (icm php-fpm) en mysql
Mijn idee was om de 2 servers te mirroren met unision/lsyncd voor de bestanden en 2-weg mysql replication met 2 master servers voor de database.
Beide servers zouden een privaat ip adres krijgen en samen 1 publiek ip adres delen.
Vervolgens wil ik met heartbeat en ucast in de gaten houden of machine a nog wel werkt. Als dat niet het geval is moet machine b het publieke ip adres overnemen van machine a
Nu zit ik met een paar conceptuele vraagjes waar jullie hopelijk meer vanaf weten dan ik
1. Zie ik dit verkeerd en is er een betere manier ?
2. Ik zou ook graag de load tussen de 2 machines willen verdelen. Dat kan nginx heel gemakkelijk door 2 backend servers te configureren via de private ip adressen. Maar hoe ga ik er mee om als server a of server b er mee stopt. Dan werk namelijk ook 1 van de prive ip adressen niet meer. - dit blijkt nginx met een simpele config zelf af te kunnen handelen !
3. Zou het werken om meer dan 1 miljoen foto's met unison en lsyncd gesynchroniseerd te houden ?
4. De jongen van het datacenter riep. Pas op voor de ARP cache als je het ip adres van de andere server overneemt maar ik kan daar op internet weinig over terugvinden (wel wat een ARP cache is maar niet dat het problemen zou geven in dit geval). Komt dat omdat het ook geen probleem is en dat ucast dit allemaal afhandelt of zie ik het verkeerd en is het wel een probleem ?
Heel erg bedankt voor het inzicht dat jullie me zouden kunnen geven !
Momenteel draait mijn website op 1 server. Ik heb nog ergens een vps'je welke het over kan nemen maar de site wordt nu te groot om zo maar even om te zetten en bovendien zou dat handmatig gaan. Omdat ik bang ben dat er ooit een keertje wat kapot gaat aan server 1 heb wil ik er nog een server bijkopen en
het zooitje dan zo configureren dat dit niet meer zo gemakklijk offline gaat als er een service uitvalt. Bovendien wil ik er ook graag wat snelheidswinst uit halen door de load naar de php/mysql backend te verdelen mits beide servers online zijn natuurlijk
Ik heb al gedacht aan virtualisatie maar de snelheid daarvan bevalt me niet en de kosten nog minder. Mijn grootste zorg is hardware uitval op dit moment. Het datacenter is vlak bij mij in de buurt, goedkoop en betrouwbaar. Daarom wil ik daar graag daar een tweede server plaatsen. Mocht het echt mis gaan dan heb ik op 2 locaties backups van de server (hoera synology).
Op die server draait nginx (icm php-fpm) en mysql
Mijn idee was om de 2 servers te mirroren met unision/lsyncd voor de bestanden en 2-weg mysql replication met 2 master servers voor de database.
Beide servers zouden een privaat ip adres krijgen en samen 1 publiek ip adres delen.
Vervolgens wil ik met heartbeat en ucast in de gaten houden of machine a nog wel werkt. Als dat niet het geval is moet machine b het publieke ip adres overnemen van machine a
Nu zit ik met een paar conceptuele vraagjes waar jullie hopelijk meer vanaf weten dan ik
1. Zie ik dit verkeerd en is er een betere manier ?
2. Ik zou ook graag de load tussen de 2 machines willen verdelen. Dat kan nginx heel gemakkelijk door 2 backend servers te configureren via de private ip adressen. Maar hoe ga ik er mee om als server a of server b er mee stopt. Dan werk namelijk ook 1 van de prive ip adressen niet meer. - dit blijkt nginx met een simpele config zelf af te kunnen handelen !
3. Zou het werken om meer dan 1 miljoen foto's met unison en lsyncd gesynchroniseerd te houden ?
4. De jongen van het datacenter riep. Pas op voor de ARP cache als je het ip adres van de andere server overneemt maar ik kan daar op internet weinig over terugvinden (wel wat een ARP cache is maar niet dat het problemen zou geven in dit geval). Komt dat omdat het ook geen probleem is en dat ucast dit allemaal afhandelt of zie ik het verkeerd en is het wel een probleem ?
Heel erg bedankt voor het inzicht dat jullie me zouden kunnen geven !
[ Voor 4% gewijzigd door floorcula op 19-09-2012 09:22 ]