Als het gaat om het hosten van WordPress op AWS, is de meest voorkomende vraag: hoeveel gaat het kosten? AWS staat erom bekend een ingewikkelde prijsstructuur te hebben. Gewoon hun prijspagina doornemen helpt niet veel, als je alleen dit ziet: Dit is waar de AWS-prijscalculator van pas komt. Het vraagt ​​u naar de componenten die u wilt gebruiken en toont u de geschatte kosten De uitdaging met deze rekenmachine is weten welke van de 131 AWS-services je moet gebruiken om WordPress goed te laten werken. In dit artikel gaan we in op de AWS-componenten die je kunt en moet gebruiken met WordPress en berekenen we de maandelijkse kosten **Aannames** Hosting is een breed onderwerp met een breed scala aan mogelijke oplossingen, afhankelijk van uw werklast. Voor de toepassing van dit artikel zullen we enkele aannames doen over de WordPress-site die u op AWS wilt hosten. Bij Nestify zien we de volgende use cases vaak terugkomen: - Hosting van 25-30 kleine WordPress-sites op dezelfde server - Hosting van 1 grote WooCommerce-site met 10-15 transacties per uur Gelukkig hebben beide use cases een vergelijkbare infrastructuur nodig om optimale prestaties en uptime te bieden De meeste AWS-componenten zijn geprijsd per uur. We gaan ervan uit dat u van plan bent deze sites op lange termijn te hosten en vermenigvuldigen de uurkosten met 744 (ongeveer uren per maand) om de maandelijkse kosten te krijgen AWS heeft een gratis laag waar u 12 maanden gratis verschillende services kunt gebruiken als u het gebruik onder bepaalde limieten houdt. Aangezien we van plan zijn om productiewebsites te hosten die veel meer bronnen zullen gebruiken dan de gratis laag, houden we er geen rekening mee in onze schattingen. Dit zorgt ook voor herhaalbare schattingen voor eventuele aanvullende websites die u uiteindelijk host Door het brede aanbod aan producten dat AWS biedt, kun je veel diensten combineren en integreren met WordPress. Om de hostingkosten nauwkeurig te berekenen, laten we de schatting opsplitsen in verplichte AWS-componenten en optionele services die indien nodig kunnen worden overgeslagen ## Verplichte AWS-services voor WordPress Dit zijn de services die je absoluut nodig hebt om WordPress goed op AWS te hosten **1. Server** Welke naam u ook gebruikt, servers zijn het belangrijkste onderdeel van de installatie. Op AWS worden virtuele servers instanties genoemd en worden geleverd door de EC2-service. U kunt ook AWS Lightsail-instanties gebruiken, maar deze zijn geen goede keuze voor WordPress, zoals uitgelegd in dit artikel Als u bekend bent met VPS en dedicated servers, kunt u vergelijkbare criteria gebruiken om EC2-instanties te selecteren. AWS biedt honderden verschillende soorten instanties die verschillen in CPU-capaciteit en geheugen. U kunt aan deze instanties afzonderlijk opslagruimte toewijzen Voor WordPress werken de volgende instantietypen goed: - Instanties voor algemeen gebruik Deze instanties zorgen voor een gezond evenwicht tussen CPU en geheugen. Voor productielocaties zijn M5-instanties ideaal. U kunt de kosten een beetje verlagen door T3-instanties te gebruiken, maar deze hebben CPU-limieten die onwenselijk zijn wanneer u belangrijke websites beheert. Om 25-30 kleine WordPress-sites of 1 grote WooCommerce-site te hosten, raden we de M5.Xlarge-instantie aan. Het wordt geleverd met 4 CPU-kernen met 16 GB geheugen - CPU-geoptimaliseerde instanties Deze instances zijn ideaal voor CPU-intensieve workloads, zoals een WooCommerce-winkel met een groot aantal producten. Als uw site veel databases bevat, zorgen deze instanties voor snellere reactietijden en minder time-outs. Als u meerdere kleine WordPress-sites host, merkt u mogelijk niet veel verschil bij het gebruik van deze instanties. Voor grote WooCommerce-sites raden we het instantietype c5.Xlarge aan. Het wordt geleverd met 4 CPU-kernen, maar slechts 8 GB geheugen, in plaats van 16 GB die u krijgt van de instanties voor algemeen gebruik. Als u meer geheugen nodig heeft, kunt u tegen een kleine meerprijs kiezen voor de c5.2Xlarge-instantie AWS biedt ook voor geheugen geoptimaliseerde en voor opslag geoptimaliseerde instanties, maar deze hebben weinig zin bij het hosten van WordPress-sites **Serverkosten** **m5.xlarge $ 0,192 * 744 = $ 142,64** Als u voor de voor rekenkracht geoptimaliseerde instantie kiest, betaalt u in plaats daarvan $ 252,96 voor het instantietype c5.2xlarge 2. Opslag AWS geeft u de flexibiliteit om zoveel opslagruimte toe te wijzen als u nodig heeft voor uw instances. Hoewel dit u de vrijheid geeft om zoveel schijfruimte te gebruiken als u nodig heeft, voegt het ook een ander regelitem toe aan de AWS-kosten Op AWS wordt opslag geleverd met behulp van de EBS-service. Voor WordPress werken de volgende typen EBS-volumes goed: - SSD-volumes voor algemeen gebruik (gp2). Deze volumes of schijven zijn SSD-ondersteund en bieden een goede mix van capaciteit en snelheid. Lees-schrijfsnelheid (iops) is afhankelijk van de grootte van de schijf die u maakt. Grotere schijven krijgen meer iops in vergelijking met kleinere schijven. Omwille van dit artikel gaan we voor een volume van 200 GB, wat voldoende zou moeten zijn voor 25 kleine WordPress-sites of een grote WooCommerce-site - SSD-volumes voor algemeen gebruik (gp3). Deze volumes zijn vergelijkbaar met de gp2-volumes, maar bieden u de flexibiliteit om tegen een kleine vergoeding de iops-limiet aan te passen. Tenzij u een specifieke use-case heeft, zorgt het houden van de iops op de standaardlimiet voor optimale prestaties voor uw sites. Deze volumes kosten iets minder dan gp2 bij gebruik van de standaard iops-limiet en bieden een betere snelheid voor kleinere volumes Er zijn andere volumetypes beschikbaar zoals io1, io2, st1, enz. Maar deze hebben weinig zin voor WordPress en zijn vooral handig voor io-zware toepassingen zoals videobewerking of big data **Opslagkosten** **200 GB gp3-volume: $0,8 * 200 = $16** **3. IP adres** AWS wijst willekeurige IP-adressen toe aan de EC2-instanties. Deze IP's staan ​​niet vast en je loopt het risico een willekeurig IP-adres te krijgen wanneer de server opnieuw wordt opgestart. Dit is natuurlijk niet ideaal bij het hosten van WordPress-sites die vaste IP-adressen nodig hebben voor de DNS. Om dit op te lossen heb je elastische IP-adressen nodig. Voor elke EC2-instantie kunt u gratis 1 elastisch IP-adres krijgen. Als u meer dan 1 IP-adres nodig heeft, rekent AWS $ 0,005 per IP per uur Gelukkig kun je met moderne serverstacks meerdere websites op hetzelfde IP-adres hosten. Voor deze schatting houden we het bij het gratis IP-adres **IP-adreskosten: $0** **4. Back-ups** Bij het draaien van productiewebsites zijn back-ups absoluut noodzakelijk. De snelste manier om back-ups op AWS in te schakelen, zijn geautomatiseerde EBS-snapshots. Hiermee maakt AWS in wezen een point-in-time momentopname van uw volledige server. Deze momentopname kan worden gebruikt in het geval van gegevensverlies, schijfstoringen of zelfs het per ongeluk verwijderen van de volledige server EBS-snapshots kosten $ 0,05 per GB per maand, maar slaan alleen de incrementele wijzigingen op volgende snapshots op. Dus als uw gegevens niet veel veranderen, kunt u verwachten dat u veel minder betaalt voor dagelijkse snapshots dan de verkoopprijs Op basis van onze ervaring kosten dagelijkse momentopnamen van een volume van 200 GB dat niet meer dan 5% per dag verandert tussen $ 25-35 **Back-upkosten EBS-snapshots) $35** **5. Data overdracht** Een van de grootste variabele kosten op AWS is gegevensoverdracht. Telkens wanneer iemand uw websites bezoekt die op AWS worden gehost, maakt u kosten voor gegevensoverdracht. Sommige serverproviders noemen dit de bandbreedtekosten. Elke maand krijg je tot 9 GB gratis dataverkeer. Daarna betaal je voor elke GB uitgaande gegevensoverdracht van de server naar het internet Afhankelijk van de regio van de bezoeker betaal je verschillende transferkosten. Voor deze schatting gaan we ervan uit dat de meeste sitebezoekers uit Noord-Amerika komen en dat u 200 GB aan gegevensoverdracht per maand gebruikt **Gegevensoverdrachtkosten 0,09 per GB * 200 = $18** **Optionele AWS-services voor WordPress** Laten we nu eens kijken naar de optionele AWS-services die u met WordPress kunt gebruiken om de prestaties, beveiliging of beschikbaarheid te verbeteren**Beheerde database**AWS biedt beheerde MySQL-databases die voor u zorgen voor updates, prestatie-optimalisatie en back-ups.Dit wordt de RDS-service genoemd.RDS biedt u 1 of meer MySQL-databaseservers die in verschillende beschikbaarheidszones draaien om een ​​hogere beschikbaarheid te garanderen.U kunt meerdere databases op 1 RDS-instantie maken en deze op verschillende WordPress-sites gebruikenAfhankelijk van uw uptime-vereisten kunt u zich houden aan 1 MySQL-instantie of een cluster van 2 maken of 3 instanties die in verschillende zones in dezelfde regio draaienNet als bij EC2 hebben RDS-instanties verschillende cpu- en geheugenlimieten.Bij het selecteren van het type DB-instantie moet u ervoor zorgen dat het meer geheugen heeft dan de grootte van uw database.Als je een instantie selecteert die kleiner is dan de database, loop je tegen trage prestaties aan, wat het doel van een speciale database teniet doet.Een ander ding om in gedachten te houden is dat als je host de database in een andere beschikbaarheidszone dan uw EC2-instantie, wordt u gefactureerd voor de gegevensoverdracht tussen de server en de database.Hoewel het misschien niet veel lijkt, kan het snel oplopen op drukke WooCommerce-sitesWe gaan ervan uit dat de WooCommerce-site een database van 4 GB heeft en passen bij het instantietype db.t4g.large**Databasekosten**Enkele DB-instantie (db. t4g.large): $ 0,258 * 744 = $ 191,95DB-cluster met hoge beschikbaarheid met 2 instances (db.t4g.large): $ 191,95 * 2 = $ 383,90**S3-objectopslag**Hoewel EBS-volumes geweldig zijn voor server-side opslag, moet u soms een groot aantal bestanden in de cloud opslaan.Bijvoorbeeld WordPress-media, afbeeldingen, pdf's en back-ups van sites.Hier komt de S3-service van Amazon goed van pas.S3 biedt bijna oneindige opslagruimte voor individuele bestanden.U kunt verschillende back-upplug-ins op WordPress gebruiken om sitegegevens op S3 op te slaanOm WordPress-mediabestanden op S3 op te slaan, hebt u een plug-in zoals WP Offload Media nodig.Een voordeel van het gebruik van S3 in plaats van lokale opslag voor mediabestanden is dat u nooit zonder schijfruimte komt te zitten.S3 brengt u gewoon de gebruikte opslagruimte per maand in rekeningEr zijn verschillende niveaus van S3-opslag, zoals niet-frequente toegang en intelligente tiering, maar ze doen nietâà Het heeft weinig zin voor mediaopslag.U kunt ze overwegen voor back-upopslag op lange termijn, hoewelS3 ook kosten in rekening brengt voor bestandsbewerkingen, zoals plaatsen, kopiëren, posten, weergeven en verwijderen.Hoewel deze bewerkingen zeer weinig kosten, ($ 0,005 per 1000 bewerkingen), kunnen deze oplopen als u een grote mediabibliotheek heeft.Voor deze schatting, weàWe passen bij de S3-standaard en gaan uit van een opslaggebruik van 500 GB per maand.Omdat de bestandsbewerkingen minder dan 1 cent kosten, nemen we ze niet mee in de schattingS3-kosten: $ 0,023 per GB * 500 = $ 11,5**Cloudfront CDN**Hoewel AWS datacenters over de hele wereld heeft, blijft uw server beperkt tot een van deze locaties.Als je klanten hebt in meerdere landen of in verschillende gebieden van hetzelfde land, kan het gebruik van een CDN zorgen voor betere prestaties voor je WordPress-sites.Op AWS heet de CDN-service Cloudfront.Het is vergelijkbaar met andere CDN-providers zoals Cloudflare en Stackpath.Cloudfront kan uw website cachen op 310 locaties wereldwijd.Wanneer iemand uw CDN-compatibele site bezoekt, ontvangen ze een reactie van de dichtstbijzijnde CDN-locatie in plaats van helemaal naar uw server te reizenZelfs als u dat niet doetâà Er zijn geen klanten die wereldwijd verspreid zijn, het gebruik van Cloudfront CDN kan de prestaties van de site verbeteren en tegelijkertijd de kosten voor gegevensoverdracht minimaliserenAan het begin van dit artikel hebben we besloten om de gratis AWS-besparingen niet mee te nemen in onze schatting, maar Cloudfront vormt hierop een uitzondering.Cloudfront wordt geleverd met een royale gratis gegevensoverdracht van 1 TB per maand.Als uw sites minder dan 1 TB aan gegevensoverdracht gebruiken, is het gebruik van Cloudfront een goed ideeVoor gegevensoverdracht van meer dan 1 TB wordt u gefactureerd per GB op basis van regio's.Dit is vergelijkbaar met EC2-kosten voor gegevensoverdracht, maar iets goedkoperCloudfront-kosten: $ 0 voor gegevensoverdracht van 1 TB**WAF**WAF staat voor Web Application Firewall.Tegenwoordig is een extra beveiligingslaag voor WordPress absoluut essentieel.Als experiment hebben we de bezoekerslogboeken van meerdere WordPress-sites met weinig verkeer bekeken.Binnen een paar minuten na lancering vertoonden deze sites een groot aantal brute force-pogingen en spamregistratiesOmdat dit de nieuwe realiteit is waarin we leven, gebruiken we een WAF voor uw sites kunnen helpen om ze veilig te houden.AmazonâÃÂÃÂ's webapplicatie-firewall (WAF) biedt u de mogelijkheid om kwaadwillende verzoeken te blokkeren, te voorkomen dat bots uw sites aanvallen en bescherming te bieden tegen generieke bedreigingenWAF wordt gefactureerd op basis van het aantal regels dat u toevoegt aan de firewall.Als u botbeveiliging inschakelt, wordt er een vast bedrag per maand aan toegevoegd.Aangezien dit AWS is, is er ook een variabele vergoeding op basis van het aantal bezoeken aan uw site.Alles bij elkaar genomen is WAF een essentiële investering voor productiewebsites WAF-kosten: $ 5 per firewall + $ 10 voor 10 regels + $ 10 voor botbescherming + $ 1 voor 1 miljoen bezoeken = $ 26 per maand **Belastingverdeling** Een van de grootste aantrekkingskrachten van AWS is de hoge beschikbaarheid van servers. Het is een veel voorkomende misvatting dat het hosten van websites op AWS ze automatisch zeer beschikbaar maakt. Maar de waarheid is dat hoewel AWS u alle componenten biedt die nodig zijn voor een installatie met hoge beschikbaarheid, u deze nog steeds zelf moet bouwen. Een van de kritieke componenten in deze opstelling is de load balancer. Een load balancer verdeelt in feite het websiteverkeer over twee of meer servers. Dit geeft u de mogelijkheid om uit te schalen en meer servers toe te voegen naarmate de website groeit. Hoewel dit misschien niet zo logisch is voor de 25 WordPress-sites die we hosten, kan een load balancer handig zijn om de WooCommerce-site over meerdere servers te schalen AWS biedt verschillende soorten load balancers, waaronder applicatie- en netwerkload balancers Voor WooCommerce wordt het gebruik van Application Load Balancer (ALB) aanbevolen. Houd er rekening mee dat wanneer u een load balancer gebruikt, u in wezen 2 of meer EC2-instanties, een speciale database en een strategie nodig hebt om uw bestanden gesynchroniseerd te houden tussen deze instanties Application load balancer brengt een vergoeding in rekening voor de balancer zelf, plus een variabele vergoeding voor de hoeveelheid verkeer die deze verwerkt Loadbalancer Kosten: $ 0,0225 per uur voor de load balancer * 744 = $ 16,74 $ 0,008 per uur voor maximaal 25 nieuwe verbindingen * 744 = $ 5,95 Totale kosten: $ 22,69 Aanvullende componenten die nodig zijn om WordPress achter een load balancer te laten draaien: 2x EC2-instanties, 1x RDS-instantie, 1x S3-bucket voor mediaopslag **Route53 DNS** Een van de belangrijkste en vaak over het hoofd geziene diensten is DNS (Domain Name System). Deze service is verantwoordelijk voor het vertalen van de domeinnaam van uw website naar het IP-adres van de server. Vaak wordt deze taak overgelaten aan de DNS-service van de domeinregistreerder, die gratis wordt meegeleverd bij domeinregistratie. Hoewel het voldoende kan zijn om de gratis service te blijven gebruiken, wilt u soms een robuustere en snellere oplossing. Hier komt AWS Route53 om de hoek kijken. Route53 biedt u de mogelijkheid om domeinen te registreren, DNS-records te beheren en geavanceerde routering en failover uit te voeren op DNS-niveau Route53 wordt ook geleverd met een 100% uptime-garantie, die wordt begeerd door belangrijke websites. Wanneer je een domeinnaam toevoegt aan Route53, krijg je 4 verschillende nameservers van 4 verschillende rootdomeinen. Dit betekent dat zelfs als alle .com-domeinen offline gaan, uw DNS-server nog steeds bereikbaar is vanaf .net-, .co.uk-domeinen Route53 rekent een kleine vergoeding per domein per maand, en je raadt het al, nog een variabele vergoeding op basis van het aantal DNS-verzoeken Route53-kosten: $ 0,50 per domein + $ 0,40 per miljoen zoekopdrachten = $ 0,90 of minder per domein per maand. Als u 25 WordPress-sites host, betaalt u het volgende bedrag: $ 0,50 * 25 + $ 0,40 (miljoen zoekopdrachten worden gedeeld over deze 25 domeinen) = $ 6,65 **Overige indirecte kosten** In dit artikel hebben we gekeken naar alle AWS-componenten die nodig zijn om WordPress-websites correct te laten werken. Naast AWS-kosten zijn er nog andere uitgaven waarmee u rekening moet houden. Enkele van de onvermijdelijke kosten zijn: - Onderhoud AWS-server: Ondanks de mooie naam zijn EC2-servers nog steeds Linux-servers die onderhoud en onderhoud nodig hebben. Als u 1/2 uur per week budgetteert voor serveronderhoud, kunt u een nauwkeurigere schatting maken - Beveiligingsscans en malware-opruiming: Verschillende beveiligingsgerelateerde taken, waaronder logboekcontrole en SSL-vernieuwing, zijn essentieel voor productiewebsites. Laten we hiervoor nog een uur per week toevoegen Staging- en ontwikkelingssites: Aangezien AWS geen GUI biedt om uw sites te beheren, is het opzetten van staging- en ontwikkelingssites een handmatig proces dat hier en daar gemakkelijk een uur kan duren. Laten we dit voor onze schatting beperken tot 2 uur per maand - Leercurve: Hoewel de meeste AWS-services goed gedocumenteerd zijn, kunt u een leercurve verwachten wanneer u aan de slag gaat. Hoewel dit van persoon tot persoon verschilt, gaan we uit van 5 uur leren voor onze schatting Totale bestede tijd: 2 uur serveronderhoud + 2 uur beveiligingscontrole + 2 uur opzetten van site-installatie per maand = 6 uur per maand Eenmalig leren: 5 uur Alles bij elkaar genomen, moet u in eerste instantie 10-12 uur uittrekken om aan de slag te gaan met AWS en vervolgens de sites soepel laten werken. Vermenigvuldig dit met je uurtarief en je krijgt een idee van de indirecte kosten die aan dit project zijn verbonden **Totale prijs** Hosting van 25 WordPress-sites of 1 WooCommerce op AWS met verplichte services: $ 211/maand Optionele services voor hoge beschikbaarheid, CDN, beveiliging: $ 191 tot $ 450 per maand **Kosteneffectief alternatief voor zelfhosting** Als al deze bewegende delen u afschrikwekkend lijken, of als de kosten iets te hoog zijn, is er een betere manier. Bij Nestify hebben we WordPress-hosting op grote schaal geperfectioneerd op AWS en een intuïtief dashboard gebouwd voor sitebeheer. Vanwege de schaalvoordelen bieden wij u een volledig beheerde WordPress-hostingservice tegen aanzienlijk lagere kosten en zonder leercurve. Met Nestify zouden uw totale kosten voor het hosten van 25 WordPress-sites of een grote WooCommerce-site op AWS $ 99 per maand zijn, zonder variabele kosten of verborgen kosten. Als u een meer op maat gemaakte oplossing nodig heeft of complexe hostingbehoeften heeft, neem dan contact met ons op en we zullen de perfecte oplossing voor u bouwen.