Cât de eficientă este preluarea IP la Amazon EC2?

24 aprilie 2008: Amazon construiește o platformă revoluționară de cloud computing cu serviciul lor Electric Compute Cloud (EC2). Caracteristica IP elastică anunțată recent extinde dramatic posibilitățile EC2 ca un adevărat mediu de găzduire.
Pentru cerințele standard ale site-ului web, implementarea actuală pare potrivită, dar pentru proiectele care necesită disponibilitate ridicată, există cel puțin o limitare semnificativă.
Ne imaginăm un cluster echilibrat de încărcare în întregime în cadrul EC2. Partea frontală a acestei configurații ar fi gestionată de două instanțe mici EC2 care ar servi efectiv ca echilibratori de încărcare sau routere. Solicitările vor ajunge la routerul primar și vor fi direcționate ulterior către instanța cel mai puțin încărcată din cluster. Deoarece un singur router servește ca punct unic de defecțiune, este necesar cel puțin un router suplimentar pentru un sistem cu adevărat disponibil. Un monitor ar putea să facă ping în mod regulat la routerul principal și, dacă există probleme, routerul secundar ar trebui să-și reatribuie adresa IP și să preia conducerea ca router principal.
Împreună cu zonele de disponibilitate ale Amazon, un astfel de sistem nu ar avea puncte unice de defecțiune. Pentru a testa fezabilitatea acestui aspect, am generat două instanțe mici EC2 și am monitorizat timpul necesar unei a doua instanțe pentru a prelua adresa IP a primei. În trei teste, a durat în medie 3 minute și jumătate și niciodată mai puțin de 3 minute pentru ca acest lucru să se întâmple.
Rulăm un cluster similar într-un mediu de găzduire tradițional, iar preluarea IP durează aproximativ 2 secunde.
Desigur, rezultatul este că, în caz de defecțiune a routerului primar, ar exista un timp de nefuncționare teoretic de până la 3.5 minute, în timp ce routerul secundar așteaptă propagarea IP-ului. Presupunem că numărul mare de routere din rețeaua Amazon face ca propagarea IP mai rapidă să fie o sarcină netrivială.
O soluție ar fi mutarea routerelor în afara EC2. Timpii mari de ping și latență fac ca această soluție să fie suboptimă.
În mod ideal, Amazon ar oferi o soluție dedicată de echilibrare a sarcinii, concepută special pentru astfel de scopuri. Cu excepția cazului în care se oferă o altă soluție, clusterele „foarte disponibile” în întregime din serviciul Amazon EC2 nu vor fi cu adevărat disponibile.