Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  27 3352
Hei, har en nettside som det er viktig at kjører hele døgnet og at det ikke er nedetid.

Har dere noen forslag til leverandører som har rask failover?
ओम नमो नारायण
Dodecha's Avatar
DonorCrew
Uh, er ikke failover-løsninger noe avleggs som er totalt redundant nå om dagene?
De fleste webtilbyderne har langt over hundre dager i oppetid på servere, så dette problemet ditt høres særdeles spesielt ut og jeg ville gjerne likt å vite mer om denne nettsiden din.
Kan desverre ikke gå i detaljer men går nettsiden ned til feil tid kan det få enorme konsekvenser.
Selv om det kun er 10 minutter.
Jeg har brukt AWS I 2 år og ikke hatt noe nedetid som jeg har fått med meg hvertfall. Ikke hos loopia heller.

Men dersom 10min nedetid I løpet av ett år/mnd har så enorme konsekvenser så stiller du høyere krav enn mange av tjenestene vi anser som viktige i resten av samfunnet.
Sist endret av random105675; 16. november 2018 kl. 20:24.
Trigonoceps occipita
vidarlo's Avatar
Donor
Sitat av haxxor Vis innlegg
Kan desverre ikke gå i detaljer men går nettsiden ned til feil tid kan det få enorme konsekvenser.
Selv om det kun er 10 minutter.
Vis hele sitatet...
Du må nesten gå litt i detaljer om kva slags nettside det er. Om det er statisk er svaret enkelt - bruk t.d. Cloudflare.

Om det er dynamisk må du nesten fortelle litt om backend og slikt. Kort sagt er det stortsett ikkje run of the mill-løysinger, men noko du må sette opp sjølv eller betale rimeleg godt for å få SLA på.

Uansett har du neppe behov for det, når du ser prislappen på det...
Sitat av haxxor Vis innlegg
Kan desverre ikke gå i detaljer men går nettsiden ned til feil tid kan det få enorme konsekvenser.
Selv om det kun er 10 minutter.
Vis hele sitatet...
Hahahahaha.. Sammenlignet med hva?

Bakke-til-luft comms i luftfarten følger EUROCAE ED-138 som tilsier maks nedetid på 31,5 sekunder årlig, altså 99.9999% oppetid.. Det koster bare en god del millioner i måneden (+ innkjøp av eget utstyr for å bundle tilbyderene sine linjer, + overvåking og drift H24), og det er kun for lille Norge sitt luftrom..
Hvor mye penger har du? Hvor mye nedetid kan du tåle pr uke/mnd/år?

Jo mindre nedetid tu er villig til å tåle jo mer må du betale, og du får stort sett ikke alt du trenger fra en enkelt leverandør

1. Du trenger en dns-tjeneste med helsesjekking som kan peke til minst to forskjellige datasenter og ha kort ttl slik at eventuelle brudd blir korte nok

2. Du trenger loadbalansere i HA

3. Du må duplisere all infrastruktur i minst to separate datasenter

4. Du må finne en måte å duplisere alle oppdateringer av data til begge/alle datasenter

Det er ikke akkurat en kort og enkel jobb man bare kan kjøpe fra en hostingleverandør. I mange tilfeller vil man bare si at det ikke er verdt det, lage cache for å servere stale content når noe går ned og heller betale for SLA-brudd når de oppstår
Trigonoceps occipita
vidarlo's Avatar
Donor
Sitat av liasis Vis innlegg
4. Du må finne en måte å duplisere alle oppdateringer av data til begge/alle datasenter
Vis hele sitatet...
Du gløymte punkt 5.

5. Ting går ned og blir i nede i ei uke fordi du ved eit uhell knekte databaserepliseringa, slik at du har to databaser med forskjellig innhald, som begge trur dei har rett.
Takk for en del svar.
Penger er ikke et problem til dette.
Her er det litt slik som "denne siden må ikke ned, koste hva koste vill".

Det er heller ikke penger som går tapt om siden går ned men er situasjonen kritisk nok og siden detter ned i noen minutter kan det i værstefall ende i et liv som går tapt. Hvor igjen liv er viktigere en pris.

Siden er dynamtisk hvor alt blir lagret i mysql. Resten av koden blir kjørt i en blanding av php, javascript, html.
nso
popålol
nso's Avatar
Administrator
Ok. Så det du trenger er listet over, men oppsummert blir det noe slik som dette etter at du har definert nærmere hva du har idag.

1. DNS-oppslag kan ikke gå ned.
Du trenger:
- Flere DNS-servere hos globalt separerte leverandører.

2. Webserveren som behandler PHP kan ikke gå ned.
Du trenger:
- Flere Web-servere (apache, nginx, whatever du bruker) hos globalt separerte leverandører.
- Enten round robin i DNS med lav TTL for å kunne fjerne servere som ikke fungerer, "roaming" IP hos cloud-leverandører eller annen måte å alltid sørge for at du kan treffe en eller flere web-servere. (HA?, men du trenger fremdeles flere av dem...). Et alternativ kan kanskje være små containers som du kan destroy og redeploy når noe er feil, og gjerne da ha data lagret i en form for bucket eller annen off server lagringsplass.

3. Databasen kan ikke gå ned.
Du trenger:
- Replikering av databasen (altså du trenger mer enn 2 servere hos geografisk separerte leverandører).
- Failover ved å i php-koden legge til støtte for å falle over på andre serveren hvis den første ikke svarer.

4. JS/CSS bør ikke gå ned.
Du trenger:
- Dette er den enkleste. Cloudflare/Akami/Cloudfront/whatever som proxy forran websiden.

Du trenger selvfølgelig også health-checks på absolutt alt.

Alternativt kan du kanskje sette deg inn i cloudløsninger som AWS eller Google Cloud Platform, som hjelper deg en del på vei men du må fremdeles sette opp løsningene selv.

Oppsummert så er det ikke en knapp du kan trykke på, et script du kan kjøre eller andre quick-fixes. Du må nok belage deg på veldig mye arbeid for å komme i nærheten av noe som er failsafe.
Sist endret av nso; 17. november 2018 kl. 09:09.
Siden luftfart er nevnt over: Man kan rigge seg til slik at man kan styre moderne jagerfly via en nettleser. Det vil selvsagt kreve litt hacking av Lockheed-Martin, men teknisk sett er det ingenting som står i veien for å styre en F35 fra bakken, akkurat som en drone. Å styre en drone er litt som å spille flyspill, og det finnes plenty av browserbaserte flysimulatorer. Så kan kan man sette opp en webserver med en innloggingstjeneste og yo, slik at luftforsvarets piloter i pappaperm kan delta på tokt mens kidden tar seg en liten formiddagsblund. Man kan faktisk gjøre det. Hvis man virkelig vil.

Men det vil man ikke.
Fordi det av åpenbare grunner ville være fette tilbakestående.

Jeg skal være den første til å innrømme at mine kunnskaper om webprogrammering er langt under pari, og jeg har overhode ikke ekspertise til å si noe om hvordan du skal lage en nettside som aldri går ned. Men hvorfor trenger du en nettside som ikke kan gå ned? Det er et veldig spesielt behov. Det finnes systemer som er designet for å aldri gå ned. Webtjenester er ikke et slikt system. For meg høres det ut som om du insisterer på å bruke feil verktøy. Du har et problem som i teorien kan løses med en nettside, men det ekstreme kravet til oppetid forhindrer deg fra å bare smelle opp ei vanlig nettside hos et pålitelig webhotell. Men hvis du kan kan finne en måte å løse dette problemet på, om det så betyr å bygge fire datasentra i tre ulike land, så vil opplegget ditt funke. Kanskje. Det er ikke sikkert, for du er svært sparsom med detaljene. For alt noen her inne vet kan det godt være at det ligger noe annet grums og lurer som gjør nettsideløsningen helt uaktuell uansett. Så. Har du vurdert muligheten for at du helt enkelt forsøker å løse jobben med feil verktøy? Har du oversikt over andre tilgjengelige systemer og utelukket de til fordel for ei nettside etter en grundig vurdering? Eller kan du ha kjørt deg fast i xy-problemet? Insisterer du kanskje på å hamre inn skruer med øks? Da blir det fort seende slik ut, uansett hvor god du er til å hamre:
Trigonoceps occipita
vidarlo's Avatar
Donor
Sitat av haxxor Vis innlegg
Det er heller ikke penger som går tapt om siden går ned men er situasjonen kritisk nok og siden detter ned i noen minutter kan det i værstefall ende i et liv som går tapt. Hvor igjen liv er viktigere en pris.
Vis hele sitatet...
Om liv går tapt er det galskap å hoste det på internett. Internett er stortsett ikkje laga for å garantere tilgjengelegheit, og i verste fall er det faktorer du ikkje har kontroll over, som BGP Hijack som tar det ned. Du kan ikkje gjere en jævla drit for å forhindre BGP Hijack, men det vil påverke deg.

Eg hadde ikkje stolt på internett for livsviktige ting.
Til og med AMK sine systemer kan gå ned fra tid til annen. Og de systemene koster mye og har veldig strenge krav til oppetid.

Hvilke systemer er det snakk om her?
Og hva med redundans på strøm og nett på klient siden?
Ingenting er mer komisk enn å se privat næringsliv si de skal ha full redundans på alt, men så fort du nevner innkjøp av strøm fra to forskjellige leverandører og å betale begge for prioritert strøm i tillegg til vanlig bystrøm med egne separate UPS-rom (ja, flertall så ene kan ta over hvis en sliter) og aggregater som slår inn automatisk så ender de som regel på at bystrøm + UPS egentlig var nok ja..
Jeg lurer fælt på hva dette er som kan koste liv. Helsevesenet har jo ganske greie rutiner hvis dataen går ned. Må jo da være kuvøser, puateapperatee osv, men koble de til nettet ville jo i seg selv vært idiotisk, uten mulighet for manuell overstyring.

Stridsystemer... Bekymret hvis noen som utvikler dette må spørre her....

Styringssystemer fly, båt
bil igjen se over....

Så da står vi igjen med noen med en fiks ide om hvor viktige de er, men som kanskje ikke helt har kunnskapen...

Men ellers er vel det meste delt over her
Hadde det vært liv og helse involvert så hadde det allerede eksistert samt vært underlagt et tilsyn eller to.. For ikke å glemme at ingen med slike behov hadde leitet etter ressurser på freak.no..
Sitat av tearz83 Vis innlegg
Jeg lurer fælt på hva dette er som kan koste liv. Helsevesenet har jo ganske greie rutiner hvis dataen går ned. Må jo da være kuvøser, puateapperatee osv, men koble de til nettet ville jo i seg selv vært idiotisk, uten mulighet for manuell overstyring.

Stridsystemer... Bekymret hvis noen som utvikler dette må spørre her....

Styringssystemer fly, båt
bil igjen se over....

Så da står vi igjen med noen med en fiks ide om hvor viktige de er, men som kanskje ikke helt har kunnskapen...

Men ellers er vel det meste delt over her
Vis hele sitatet...
Det virker å være en tråd som ikke helt har rot i virkeligheten. Enten at ts ikke har gjort nødvendige analyser i forkant for å avdekke hvor viktig det er at siden kjører 100% av tiden eller at det "behovet" som ts har ikke er et reelt behov men mer en følelse av at oppetid er viktig.

Når det så snakkes om at det kan tapes liv om siden går ned så virker det for meg som det kanskje er en løsning utviklet for webben som kanskje ikke burde vært utviklet for webben.

Om dette faktisk gjelder en tjeneste der liv kan gå tapt om nettsiden går ned, da virker det veldig lite produktivt å be om hjelp på freak - for da skulle en jo tro at kompetanse og kunnskap rundt dette skulle funnets på huset?
Sitat av random67489 Vis innlegg
Om dette faktisk gjelder en tjeneste der liv kan gå tapt om nettsiden går ned, da virker det veldig lite produktivt å be om hjelp på freak - for da skulle en jo tro at kompetanse og kunnskap rundt dette skulle funnets på huset?
Vis hele sitatet...
Tja, flere av de som har svart i tråden har stor kompetanse på området så i TS sitt tilfelle vil jeg si at det er innafor å diskutere saken her, for det virker jo som at dette er en idé og ikke en eksisterende tjeneste så det eksisterer nok ikke noe "hus".
For hver '9' i oppetiden så øker prisen eksponentielt. Dette har blitt forklart godt allerede over.

Det du også må ta høyde for, er angrep. Hvis noen går inn for å utføre tjenestenektangrep, eller forsøke å hacke siden din, så kan de gjøre mye skade på oppetiden din. For å unngå dette, så kreves det kunnskapsrike utviklere og 24/7 overvåkning over systemene. Samme sekund som noe mystisk skjer så må noen dra i en nødspake og fryse sideinnholdet.

I tillegg må all utvikling gjøres ekstremt forsiktig. All kode bør gjennomgås veldig nøye, og man bør helst unngå kompliserte løsninger som Wordpress, Drupal osv. hvor det er mange komponenter som kan feile på ulike måter. Kommersielle løsninger er også svært plaget med automatiserte angrep, så det gir flere grunner til å holde seg unna. Utvikling må skje i miljøer hvor alt innhold sjekkes grundig vha. både automatiserte og manuelle tester, før nettsiden sendes til et staging-område og får påtrykt stressende operasjoner. Dette bør skje i et miljø som er tilnærmet 100% likt det endelige miljøet. Selve utviklingen bør også foregå i et system som er rimelig likt staging, men det trenger ikke være like kraftig. Bare testmiljøet i seg selv kan koste gode penger, ettersom du må duplisere hele oppsettet ditt flere ganger, utvikle og vedlikeholde tusenvis av tester, og betale topp-utviklere en svært god lønn for strevet. Det finnes svært store selskaper som gjør alt dette, og likevel går de ned pga. programmeringsfeil.

Jeg tror det er mye bedre å simpelthen ha en god rutine på hva som skal gjøres når siden går ned.
Jeg drifter en nettside som har høye krav til oppetid og også ofte opplever stor pågang i korte tidsrom.

Jeg har identifisert to 3 store feilkilder som jeg har prøvde å eliminere:

1) Tap av 1 enkelt server (disker og annen maskinvare som feiler)
2) Tap av hele datasenteret (strømmen går for eksempel)
3) Stor pågang gjør at nettsiden kneler

Kode og data er skilt. Selve nettsiden er pakket i Docker konteinere og kjøres av Amazon ECS med auto scaling. Auto scaling systemet styrer de underliggende virtuelle maskinene som kjører Docker. Hvis en maskin feiler eller CPU last blir for høy bestiller auto scaling systemet flere virtuelle maskiner automatisk. Når CPU lasten synker igjen skrues en og en maskin av til man kommer til en stabil tilstand igjen.

Auto scaling er koblet opp med AWS Elastic Load Balancing (ELB) lastbalanserer. Så snart en ny virtuelle maskin er bestilt legges den inn i ELB og ELB kjører en del tester. Fungerer maskinen vil den ble puttet inn i poolen og begynne å svare brukere. ELB kjører tester på alle virtuelle maskiner hvert minutt. Hvis noen feiler testene eller tilkoblinger begynner å feile skrues maskinen av og auto scaling starter en ny maskin. Les mer om dette på https://aws.amazon.com/blogs/compute...th-amazon-ecs/


Data lagres i Postgres som kjørers med Amazon Relational Database Service (RDS) som replikerer data på flere maskiner.


Alt i ECS og RDS spres automatisk over flere "availability zones". Availability zones er separate datasenter som har sin egne separate bygning, med separat strøm og nettverk, men ligger typisk ved siden av hverandre.


Jeg lener meg mye på Amazon her, men fordelen er at man får et veldig tolerant oppsett som rimelig greit å sette opp. Mesteparten kan bli satt opp fra ECS gui. Pris for 3 små virtuelle maskiner og RDS med 2 noder ligger på rundt 1 000 kr pr måned (men dette øker fort ethvert som man trenger flere resurser).
Må si at det er veldig mange her som ikke leser teksten, eller som ikke forstår teksten.
Jeg er ute etter tips til tjenester som kan levere dette.

Jeg er ikke ute etter tips og forklaringer på hvorfor dette ikke er en god ideè.
Og dere trenger ikke vite hvilken tjeneste dette er for å kunne gi tips til hvem som kan levere dette.

Men for dere som lurer, så er dette en tjeneste som er i drift den dag i dag. Hvor et større styre har vedtatt at vi må se på feilover løsninger siden det er kritisk at tjenesten ikke går ned. Dette har vi allerede opplevd noen ganger. Heldig vis så hadde vi dobbelt kopi av alt på papir slik at ting gikk greit for seg.
Tjenesten er utviklet fra bunnen av pga behovet for dette i Norge, hvor ingen andre kunne levere et likt system.

Så igjen, vi er ute etter noen, et sted i verden som kan levere en tjeneste som kan være operativ hele tiden. som ikke detter ned.
Vet noen om noen som kan levere dette?

Kongen: takk, skal sjekke dette ut litt nærmere!
Sitat av haxxor Vis innlegg
Så igjen, vi er ute etter noen, et sted i verden som kan levere en tjeneste som kan være operativ hele tiden. som ikke detter ned.
Vet noen om noen som kan levere dette?
Vis hele sitatet...
~alle hostingleverandører kan levere det du spør etter så lenge de har minst 2 lokasjoner å tilby tjenester fra.

Men uten kjennskap til hvordan en tjeneste er bygd opp er det også umulig å gi gode råd om hvordan man skal kunne kjøre tjenesten distribuert og redundant.
Sist endret av liasis; 19. november 2018 kl. 13:48.
Du sier at selv 10 minutter nedetid er for mye, og da kan vi fastslå at en failover-løsning er poengløst. Du vil aldri kunne reagere kjapt nok til det, med mindre du ønsker å åpne deg selv opp for datatap og "split brain"-problematikk. Det er ingen garanti mot datatap hos f.eks. Amazon. Du er rett og slett nødt til å ta en impact analyse og se hvor mye nedetid dere kan overleve med manuelle prosesser og hvor mye datatap dere kan takle. Ingen av tallene kan være null.

Det sagt - det største problemet med tjenester som AWS er at de som setter det opp ikke har nok kunnskap, eller at det skjer noe som er helt utenfor din kontroll. Det er fint med et system som automatisk balanserer seg selv, men det er ikke så fint hvis backend systemene henger seg opp så du ikke får skalert opp. Det har skjedd hos bl.a. Azure, Google Cloud og Amazon relativt nylig. Og det er ingenting du kan gjøre når det skjer.

Plan for failure, og husk at automatic recovery stort sett betyr automatisk datatap.
Sitat av haxxor Vis innlegg
Så igjen, vi er ute etter noen, et sted i verden som kan levere en tjeneste som kan være operativ hele tiden. som ikke detter ned.
Vet noen om noen som kan levere dette?
Vis hele sitatet...
Det er en del ting man må vite før man kan anbefale noe sånt.

Skal dere drifte løsningene selv og trenger bare en leverandør som har flere datasentre?
Trenger dere noen som kan designe og drifte hele løsningen, mens dere bare forvalter applikasjonen i bakkant?
Hva slags data er det snakk om? Hvilke personvernshensyn må dere ta? (Hvor kan data være lagret?)

Budsjett?
Ok, la meg omformulere meg litt.

I gjennomsnitt så blir det lagret ny informasjon på serveren (Mysql) hvert 5 minutt.
Går siden ned så gjør hovedsakelig ikke det noe, men! Vi må kunne ha en "live" kopi av databasen en plass. Slik at om hoved serveren går ned, kan vi logge oss på en annen server å printe ut en liste fra databasen og fortsette arbeidet på papiret.

Når serveren går ned har det tatt i underkant av 60 sekunder før vi har blitt varslet om dette. Så da er det i teorien 1 minutt med data som ikke har blitt lagret, men den dataen går igjennom et annet system så det minuttet kan jeg hente inn igjen, så lenge jeg får tilgang til lisen som var der før serveren gikk ned. (Litt merkelig forklart men slik er det)

Vi har rutiner for og forsette arbeidet manuelt om vi ikke har tilgang til serveren, men vi må ha den siste listen før serveren gikk ned så da er løsningen en "Live-Kopi" av databasen på en annen server hos en annen leverandør? og da er spørsmålet igjen, hvordan løser jeg det? Noen som tilbyr dette allerede? feks at jeg skriver inn vår ip-adresse, brukernavn, passord og database navn så holder den en direkte kopi hele tiden?

Ble dette mer forstålig?
Sitat av haxxor Vis innlegg

Vi har rutiner for og forsette arbeidet manuelt om vi ikke har tilgang til serveren, men vi må ha den siste listen før serveren gikk ned så da er løsningen en "Live-Kopi" av databasen på en annen server hos en annen leverandør? og da er spørsmålet igjen, hvordan løser jeg det? Noen som tilbyr dette allerede? feks at jeg skriver inn vår ip-adresse, brukernavn, passord og database navn så holder den en direkte kopi hele tiden?
Vis hele sitatet...
Både Azure, AWS og GCP har managed mysql som er multi-region.

Men tror det er helt andre ting dere burde prioritere og jobbe med hvis det er så kritisk å miste tilgang til en database.
Strøm og internett går ned til stadighet og applikasjonen dere har på toppen kan wipe hele databasen.
Du skal med andre ord kun lese fra den andre maskinen? I så tilfelle er det en smal sak å sette opp en read-only replica til et annen maskin et annet sted. F.eks. tilbyr Amazon det til en slikk og ingenting.

Men hva gjør du hvis det er nettet til kontoret som går ned? Det må også overvåkes så du ikke står der med skjegget i postkassa når noe galt skjer, mens replicaen er 30 dager out of sync fordi den gikk tom for diskplass siden vacuum failet.

Jeg ville kanskje vurdert å bytte ut dagens leverandør hvis de har for vane å falle ned i tide og utide. Det er også litt interessant at dere har alle disse kravene, men har kjørt på en maskin så lenge. Hvordan løser dere oppgraderinger?