Hvordan laste inn balanseside mellom GCP og AWS ved hjelp av Cloudflare?

Finn ut hvordan du kan bruke Cloudflare load balancer (LB) til å distribuere trafikk mellom AWS (Amazon Web Services) og GCP (Google Cloud Platform).

De fleste webapplikasjoner krever eller gjør lastbalanse mellom servere/tjenester i samme datasenter.

Men hvis du kjører oppdragskritiske applikasjoner der oppetid er nødvendig hele tiden over hele verden, trenger du en skylastbalanserer.

Ikke bare oppetid, men kan være mange andre faktorer.

Eks:

  • Aktiv-passiv eller aktiv-aktiv datasenterkrav
  • Katastrofegjenopprettingsplan
  • Dra nytte av flere datasentre for å betjene forespørsler fra nærmeste lokasjon
  • Samsvar

Cloudflare tilbyr lokale og globale lastbalanseringsalternativer, som hjelper til med å rute trafikk til flere datasentre.

Noen av Cloudflare LB-funksjonene er:

  • Helsesjekker er innebygd, slik at du raskt kan ta ned en defekt server.
  • Utløs failover når helsesjekk mislykkes
  • Reduser ventetiden ved å dirigere trafikk til nærmeste server
  • DNS-nivå og støtte HTTP(S), TCP og UDP
  • Session stickiness for å sikre at forespørselen går til samme server

Du kan konfigurere hele ting enten gjennom Cloudflare-dashbordet eller API.

Teknisk sett gjelder følgende instruksjoner for lastbalanse på enhver skyplattform som Azure, DigitalOceanAlibaba, osv. Men jeg har valgt GCP og AWS for demonstrasjonen.

AWS- og GCP-oppsettdetaljer

Jeg har klargjort én server i GCP- og AWS-plattformen med følgende.

  • Installerte Nginx
  • Lagt til index.html med egendefinert tekst for å vise at siden blir servert fra den respektive serveren
  • Startet Nginx, og siden er tilgjengelig fra begge serverne
  Slik lader du iPhone med den nye MacBook Pro

La oss gå til Cloudflare for å implementere LB.

Aktiverer Cloudflare Load Balancer

Jeg har ett tilgjengelig domene (bloggerflare.com), som jeg skal bruke for denne laboratoriet.

Merk: Load balancer av Cloudflare er ikke GRATIS, og prissetting starter på $5 per måned.

Jeg antar at du allerede har en konto hos Cloudflare; hvis ikke, kan du opprette og legge til domenet, som jeg forklarte i mitt forrige innlegg.

  • Logg på Cloudflare og velg domenet der du vil aktivere balansering
  • Gå til trafikkfanen og aktiver lastbalansering.

  • Konfigurer funksjonene basert på kravet. Jeg fortsetter med minimal konfigurasjon.

Hvis du vil at forespørsler skal omdirigeres til det nærmeste stedet, må du aktivere Geo Routing.

  • Bekreft abonnementet og aktiver det.
  Slik tømmer du buffer på iPhone

Som du kan se, kan du starte det fra $ 5 i måneden med to opprinnelsesservere og ett minutts helsesjekkintervall.

Infrastruktur er så rimelig nå. 5 år tilbake, kan du forestille deg skybelastningsbalanser for $5?

Dette indikerer at Cloudflare LB er aktivert og klar til å konfigureres.

Oppretter Cloudflare LB

Det vil ta noen sekunder å bekrefte abonnementet og ta deg tilbake til Trafikk-siden.

  • Klikk på Opprett belastningsbalanser

  • Skriv inn domenet der du vil sette opp balansering.
  • Utvid Session Affinity og velg By Cloudflare Cookie hvis du trenger å aktivere session stickiness

  • Skriv inn et bassengnavn, og det er opprinnelsen (serveren som trafikken skal omdirigeres til)

  • Deretter kan du konfigurere en helsesjekk.

En helsesjekk er viktig. Cloudflare vil slutte å sende trafikk til den defekte opprinnelsen når en helsesjekk mislykkes.

  • Hvis opprinnelsen din lytter på port 80, kan du velge HTTP eller https for 443-porten.

Cloudflare lar deg også konfigurere avanserte helsesjekkinnstillinger som:

  • GET eller HEAD-metoden
  • Forventet HTTP-statuskode
  • Innholdsvalidering i svarteksten
  • Antall forsøk før de vurderer sunt eller usunt
  • Bekreftelse av overskriftsnavn

Og til slutt, lagre konfigurasjonen og distribuer

  • LB vil utføre en helsesjekk, og i løpet av noen sekunder vil du se at statusen er sunn.
  Hvordan administrere flere postbokser i Outlook

Flott, dette konkluderer med at Cloudflare load balancer er klar til å akseptere trafikk fra verden og videresende den til de konfigurerte opprinnelsesserverne.

Testing av lastbalanser

La oss utføre en grunnleggende test for å se om det fungerer.

  • Prøv først å få tilgang til domenet.

Rått!

LB videresendte en forespørsel til Google Cloud VM og fikk svaret. Jeg kan se forespørselen i Nginx.

162.158.167.174 - - [19/Dec/2017:10:25:41 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36"
  • La meg slå av Nginx på GCP og få tilgang til siden igjen.

  • Og her går du. En forespurt side serveres fra AWS.

Jeg kan se at LB tok GCP-poolmedlemmet ned.

Som standard vil Cloudflare IP vises i Nginx-tilgangslogger, og hvis du trenger å gjenopprette klient-IP, kan du sjekke ut denne veiledningen.

Konklusjon

Implementering av en Cloudflare belastningsbalanser er enkel og kan komme i gang på mindre enn 15 minutter. Hvis du ser etter høy tilgjengelighet mellom flere datasentre eller opprinnelsesservere, kan du prøve det for å se hvordan det fungerer.

Likte du å lese artikkelen? Hva med å dele med verden?