Kapasitetstesting for skysøknaden din

Jo større prosjekt, jo bedre må kapasitetstesten være. I 2008 åpnet en ny flyterminal på Heathrow flyplass i Storbritannia. Den fikk navnet Terminal 5 og kostet £ 4, 3 milliarder - prosjekter blir egentlig ikke større enn dette. De første dagene etter åpningen var ikke perfekte. Problemer med screening av ansatte og tekniske feil førte til kansellering av 34 flyreiser, noe som gjorde alle de nasjonale nyhetskanalene veldig glade. De rapporterte om den mangelfulle kapasiteten til bagasjebehandlingssystemet, passasjerens lidelse og stort sett alt annet de kunne finne på å klage på.

Kan de enorme ressursene i sky computing hjelpe oss med å modellere den kapasiteten som kreves for prosjekter på størrelse med Heathrow Terminal 5? Forstyrrelse på 34 flyreiser og noen tusen passasjerer er mye elendighet, men bare et fall i Heathrows hav. Du kan kalle det en suksess. Vil bedrifter kreve bedre kapasitetsstyringsverktøy i skyen?

Kontroller kapasitet

Jeg ønsker å få en ide om kapasiteten som kreves for å kjøre søknaden min før den går i live. Jeg vil absolutt ikke at vingene skal falle av applikasjonen min. Jeg vil sprenge den i en vindtunnel for å se om noe blir sprengt av. Jeg utfører disse tre oppgavene for kapasitetstesten min.

  • Profil systemet . Liste over alle tilgjengelige ressurser og finn ut hvor mye belastningen systemet har før applikasjonskundene mine.
  • Generer en syntetisk belastning . En generator imiterer bruk av klienter. Jeg vil etterligne en gjennomsnittlig dag, ikke se hvor langt systemet mitt går før det går i stykker.
  • Overvåk systemet . Mål økningen i belastningen når applikasjonen min tjenester som de som later som kunder.

Verktøyene som brukes til å sjekke kapasiteten er de samme som brukes til mange driftsoppgaver, for eksempel stresstesting, ytelsesovervåking og kontinuerlig kapasitetsstyring. Noen selskaper skaper sitt eget testmiljø med skinnende nye open source-verktøy som multimekanisering, Selenium og JMeter. Andre leier tjenester fra leverandører av skytesting som Soasta, Loadstorm og Cloudsleuth. Noen ganger bruker jeg de ærverdige sysadmin-kommandolinjeverktøyene lshw, top, tcpdump, df og ab.

Kontroller hele teknologibunken

Enhver skyapplikasjon er bygget på toppen av lag med teknologi.

  • På toppen er min skreddersydde forretningsapplikasjon og støttede applikasjoner utenfor hylla.
  • Den virtuelle maskinen og operativsystemet støtter applikasjonene.
  • Skyleverandørens operativsystem og hypervisor kjører på den fysiske maskinen.
  • Skyleverandørens maskinvare og nettverk danner grunnfjellet.

Skyleverandørens lag - maskinvaren, nettverket og hypervisor - er skjult og kan ikke måles av kunden. En kjede er bare så sterk som dens svakeste ledd, og det er mange koblinger i skyinfrastruktur: fiber, PDU-er, rutere, brytere, lastbalansører, fullmakter og mange flere.

AWS-konsollen kaster inn noen få grafer over CPU-bruk, diskleser og skriver og nettverkstrafikk gratis. Jeg vil ikke basere mine pågående rapporter om kapasitetsstyring på denne informasjonen, men det er greit for det første. AWS tilbyr Cloudwatch-tjenesten for mer sofistikert overvåking.

AWS overvåking (klikk for å forstørre)

Det virtuelle maskinlaget i teknologibunken inkluderer disken, CPU og minne (det er "harddisk, prosessor og RAM" for de gamle tidtakerne). Disse kan måles av mitt operativsystem, og operativsystemet vil gjøre målingene tilgjengelige for systemovervåkingsverktøyene mine. Det samme gjelder toppsjiktet - applikasjonene.

Problemer som måler skykapasitet

Jeg må tro leverandøren vil kunne levere massiv elastisk kapasitet. Det er ingen målinger jeg kan se på fordi ingen leverandør roper om detaljene om infrastrukturen deres. Min tro vil bli testet i løpet av de neste to årene, ettersom flere skyleverandører dukker opp og hastverket til skyen fortsetter å øke hastigheten, vil servicenivået lide. Prisene vil bli tvunget ned og forholdet mellom virtuelle maskiner og fysiske maskiner vil bli tvunget opp. Jeg kan ikke sjekke disse fysiske nedre lagene. Jeg kan ikke sjekke de fleste komponentene jeg er avhengig av.

Mine virtuelle maskinmålinger vil være mindre nøyaktige enn skyleverandørens fysiske maskinmålinger på grunn av handlingene til hypervisoren bak kulissene. Hypervisoren hugger og skifter ressurser for å styre etterspørselen. Det er flygelederen som lander mange fly på noen få rullebaner, innsjekkingsskranken står i kø for hundrevis av passasjerer og bilen kjører uspiselige måltider til langdistansefarten.

Hvis applikasjonen min er inaktiv, og andres applikasjon betjener et travelt telefonsenter, blir ikke den fysiske CPU og nettverksbåndbredde brukt av meg. Hvis min disk har tom plass og noen andre lagrer gigabyte med data, fylles den fysiske disken opp med arbeidet. Systemklokken fungerer i virtuell tid, ikke i sanntid. Arbeidet med hypervisoren kan føre til forsinkelse, unøyaktige avlesninger, pauser og andre små feil i mine målinger.

© Copyright 2020 | mobilegn.com