Bygg din egen CDN i 5 steg

vi som användare konsumerar (och producerar) mer innehåll än någonsin förutspår Cisco att ”global Internettrafik 2021 kommer att motsvara 127 gånger volymen på hela det globala Internet 2005. Globalt kommer Internettrafiken att nå 30 GB per capita år 2021, upp från 10 GB per capita 2016.”

det är därför CDN, kommersiella och privata, är viktigare än någonsin. Enheter skickar ständigt och tar emot HTTP-förfrågningar / svar och för att upprätthålla detta enorma utbyte av byte är en välplanerad ryggrad ett måste. Därav den accelererande tillväxten av DIY / privat och hybrid CDN.

på senare tid har många företag börjat implementera sitt eget privata eller hybrida innehållsleveransnätverk. En privat CDN, i motsats till kommersiella CDN, kan ge dig full kontroll över ditt innehåll eftersom du inte behöver dela lagring/maskiner/servrar med någon annan webbplats(er) som använder samma infrastruktur. Du är också helt fri att planera och distribuera ditt eget CDN eftersom det bäst passar ditt specifika användningsfall, flexibilitet som är mycket svårt om inte omöjligt att uppnå med någon av de kommersiella CDN-lösningarna där ute, som använder en one-fits-all-strategi.

och låt oss inte underskatta kostnadsbesparingsfaktorn: kommersiella CDN säljer vanligtvis per begagnad bandbredd och antal förfrågningar som hanteras av varje PoP (närvaropunkt). Om trafiken som din webbplats ser ligger inom intervallet GB per sekund kan dessa trafikrelaterade kostnader minskas märkbart med en privat CDN.

vi lanserade nyligen en DevOps-vänlig DIY CDN-lösning som du kan ställa in i fem steg. Allt du behöver för att ställa in en CDN:

  • origin server och PoP (points of presence)
  • ISP
  • CDN och caching programvara

genom att följa dessa steg hittar du dig själv med en origin server, några Pop strategiskt distribueras baserat på din publik, som du kommer att kunna tjäna innehåll efter webbprestanda bästa praxis.

moln eller på plats?

det allra första beslutet du måste göra är om du vill distribuera ditt innehållsleveransnätverk med molninstanser eller fysiska maskiner.

du måste ställa dig själv denna fråga två gånger: både för origin-servern och sedan för dina PoPs. Det är inte ett ömsesidigt uteslutande beslut; du kan välja att implementera en del av ditt CDN med en (eller flera) molnlösning(er) medan en annan del lever på plats. Följande är några punkter att tänka på när du fattar detta beslut:

    1. tillgänglighet: har molnleverantören jag vill använda maskiner tillgängliga i den region jag vill servera innehåll till? Äger mitt företag datacenter i den region som vi vill leverera innehåll till?
    2. prestanda: kommer jag att få bättre prestanda med molninstanser eller fysiska maskiner?
    3. kostnader: med tanke på min webbtrafikbelastning per sekund, blir det billigare att betala för infrastrukturen eller att äga den? Kommer det också att vara billigare att använda IaaS eller att anställa ett specifikt team för att upprätthålla en sådan arkitektur?
    4. skala: vilken strategi kommer att hjälpa mitt företag skala: Cloud, on-prem eller hybrid?
    5. säkerhet: vilka är säkerhets-och nackdelarna med de olika alternativen för mitt företag?

oavsett om du väljer ”on-prem” – rutten är det verkligen lika enkelt som att installera paket på dina servrar, t.ex. ”apt-get install varnish-plus ”eller” yum install varnish-plus”. Du kan kontakta oss för mer information.

i molnet kan du följa instruktionerna på AWS marketplace eller vår omfattande dokumentation om hur du kommer igång med lack och AWS.

ISP och Routing

hitta dig själv den bästa ISP för dina behov och anser också att du behöver en lösning som kan dirigera varje begäran till närmaste PoP. Några faktorer som är värda att överväga:

    1. geografisk närvaro: hitta en ISP som täcker regionen / regionerna du vill betjäna.
    2. anslutningshastighet: se till att du har tillräckligt med hastighet för både din genomsnittliga dag och topptider också.
    3. tillgänglighet och tillförlitlighet: som med alla delar av din infrastruktur måste en Internetleverantör alltid vara tillgänglig eftersom den kommer att vara ryggraden i ditt företag.
    4. kostnadseffektivitet: Kartlägg servicekostnaderna noggrant, eftersom kostnaderna från en Internetleverantör varierar mycket beroende på ett antal faktorer, och du måste hitta rätt balans mellan tjänster och kostnader.

marknaden erbjuder många ISP och förfrågningar routing alternativ, och vad du väljer att tjäna dina specifika behov beror på den balans som är mest meningsfullt för din installation och trafik förväntningar.

Origin Server och PoPs

låt oss börja med den saftiga delen här!

du kan tänka på en CDN som en enorm cache med distribuerade noder som hjälper till att leverera innehåll snabbare till slutanvändare. För att göra det och vara effektivt måste du bestämma, baserat på faktorer som du anser vara av strategisk betydelse för ditt företag, i vilken geografisk plats du vill att din ursprungsserver ska vara belägen. Samma resonemang gäller för var och en av dina PoPs.

origin server-beslutet är enkelt, eftersom du vill att din webbserver så nära som möjligt ska ha full kontroll över ditt innehåll. Men när det gäller att bestämma var du ska hitta Popsna och hur många du behöver, finns det några faktorer du bör tänka på:

    1. Var är din viktigaste publik? Förväntar du dig att företag ska växa i vissa regioner? Om så är fallet, vilka regioner? Det är också viktigt att analysera var och hur de är koncentrerade för att leverera bästa möjliga upplevelse.
    2. Latency mellan din origin-server och din publik: detta hjälper dig att bestämma var du ska hitta varje PoP.
    3. trafikmönster. Genom att analysera dem kan du ge en utmärkt användarupplevelse och optimera din Infrastruktur

installera lack DIY CDN Software

lack är extremt flexibel på grund av dess unika VCL konfigurationsspråk. VCL låter dig ställa in cachningsregler och fatta beslut i kanten.

lack DIY CDN levereras med en komplett uppsättning funktioner för innehållsleverans:

    1. lastbalansering
    2. Prefetch alternativ för att hålla cachen varm
    3. Persistent storage engine
    4. hög tillgänglighet
    5. Säkerhet, i både en säker anslutning och en helt krypterad cache

lack DIY CDN måste installeras i var och en av dina Pop.
Detta är vad vi kommer att uppnå i slutet av denna snabba installation:

som du kan se kommer vi att installera lack DIY CDN i:

  • Origin shield: detta hjälper till att skydda din origin-server(er) och avlasta några av förfrågningarna. I det här exemplet kommer origin-servern att vara baserad i London.
  • PoP A: är en av de två PoPs vi kommer att utveckla för att skapa en mycket grundläggande CDN. För detta exempel placerar vi det i Frankfurt, Tyskland, inom EU.
  • PoP B: vår andra PoP kommer att tjäna innehåll till den nordamerikanska publiken. Det kommer att vara New York-baserat.

varje PoP och origin shield har en symmetrisk och kopplad konfiguration för att säkerställa att varje PoP alltid är tillgänglig även om en av de två Lacknoderna är under underhåll eller inte är tillgänglig.

varje lack Cache Plus tuple synkroniseras med VHA, som förutom att replikera innehåll mellan olika caching noder, minskar också stressen på dina backends, lindra dem för mycket belastning förbrukar mindre bandbredd och kräver färre tur och retur.

konfigurera lack

för att ha en grundläggande och fungerande konfiguration måste du:

1. Låt lack veta vilka backends det kan prata med: öppna ”/etc/lack/standard.vcl ” och ange din backas IP-adress och port

2. Konfigurera vilken port på vilken lack lyssnar på inkommande begäran:

öppna ”etc/default/varnish.param ”och ställ in” -a": 80.

starta lack, och du är redo. Du har din egen CDN igång. När du väl har förstått vilken typ av infrastruktur som bäst uppfyller dina behov och hur din publik distribueras, bör det bara ta några timmar att följa dessa steg för att bygga din egen privata CDN med lack.

Write a Comment

Din e-postadress kommer inte publiceras.