Skapa din egen molnmiljö och spara pengar!
Det finns otroligt många aspekter att hantera, såsom serverutrymme, utvecklingsmiljöer, säkerhetsåtgärder, programvarustackar, uppdateringar av programvara samt underhåll av hårdvara. Alla dessa faktorer tillsammans gör att de totala underhållskostnaderna för en plattform kan bli överväldigande. Företag som ägnar sig åt att utveckla och distribuera applikationer tvingas avsätta en betydande del av sina resurser för att hålla plattformen i gång – resurser som annars hade kunnat användas till utveckling av själva mjukvaran.
Detta är anledningen till att molnbaserade plattformslösningar har blivit så populära. Dessa lösningar använder en molndatamodell för att tillhandahålla allt som utvecklare behöver för att utföra sitt arbete, från värdbaserade utvecklingsmiljöer och databasverktyg till kompletta funktioner för applikationshantering. Utvecklare som arbetar inom en molnplattform har tillgång till alla verktyg och resurser som behövs för att bygga, distribuera och lansera programvaruapplikationer. För företag kan molnplattformen utgöra en skalbar bas för nya applikationer som måste lanseras på kort tid. Med en ”betala-allteftersom-du-växer”-modell finns det inget behov av långsiktiga investeringar i lokala plattformar.
Varför välja öppen källkod?
Nu när vi har diskuterat fördelarna med molnbaserade plattformar jämfört med traditionella, lokala plattformar, är nästa viktiga fråga varför en molnplattform med öppen källkod är ett bättre alternativ än en proprietär molnplattform. Det mest uppenbara svaret är kostnaden: licensavgifterna för egenutvecklade lösningar är vanligtvis betydligt högre. En annan viktig fördel är flexibiliteten och friheten att välja mellan en mängd olika ramverk, molntjänster och andra tjänster.
Proprietära plattformar kan å andra sidan låsa dig till de verktyg och tjänster som de äger. I utbyte kan de erbjuda vissa fördelar, såsom garantier genom SLA (serviceavtal) och att du slipper besvär med tester och integration. Dessa fördelar överväger dock sällan fördelarna med öppenhet.
Nedan följer ett urval av de ledande molnplattformarna med öppen källkod för företag på dagens marknad.
Cloud Foundry
Cloud Foundry, som ursprungligen utvecklades av VMware (numera ägt av Pivotal Software), Cloud Foundry, utmärker sig genom att vara tillgänglig som en fristående mjukvaruapplikation med öppen källkod. Detta gör den oberoende av molnleverantörer. Den kan distribueras på VMware vSphere eller andra molninfrastrukturer, såsom HP Helion, Azure eller AWS. Alternativt kan du välja att vara värd för den själv på din OpenStack-server.
Genom att använda så kallade buildpacks underlättar Cloud Foundry runtime och stöd för ramverk. När du ”pushar” en applikation väljer Cloud Foundry Application Runtime det mest lämpliga buildpack för den. Sedan tar buildpacket hand om att kompilera appen och förbereda den för lansering.
Cloud Foundry är utformad för att erbjuda snabb applikationsutveckling och distribution tack vare en mycket skalbar arkitektur och DevOps-vänliga arbetsflöden. Språkstödet inkluderar Python, Ruby, PHP, Java och Go, bland många andra. För att fungera optimalt med Cloud Foundry rekommenderas att ditt projekt följer applikationsstandarden Twelve-Factor: en metod som är speciellt utformad för att utveckla optimala SaaS-applikationer (software-as-a-service).
Udemy erbjuder en användbar kurs i utveckling för molnet med Cloud Foundry.
WSO2
Om du arbetar intensivt med SOA är du säkerligen van vid att hantera ett stort antal interna och externa API:er. Det är här WSO2 verkligen briljerar, tack vare sin API Manager, som kan hantera hela API-livscykeln. WSO2 säkerställer överensstämmelse med de flesta krav som dina kunder kan ha, inklusive versionshantering, API-dokumentation och SSL-avlastning.
WSO2 använder ett butikskoncept där utvecklare kan hitta, testa och betygsätta API:er. Implementeringen är enkel och smidig och erbjuder många alternativ för att kontrollera flödet av API. Den har även en automatisk återställningsfunktion om en slutpunkt skulle sluta fungera. Alla dessa egenskaper syftar till att minska tiden till marknad, förenkla kostnadshanteringen och öka smidigheten i affärsprocesserna.
En stor fördel med WSO2 API Manager är dess enkla integration med WSO2 Identity Server, en API-driven IAM-lösning (Identity and Access Manager). Denna integration ger en användarvänlig plattform för autentisering i molnmiljöer.
Cloudify
Cloudify är ett orkestreringsramverk som är utformat för att modellera applikationer och tjänster samtidigt som deras livscykler automatiseras. Detta inkluderar möjligheten att distribuera i valfri molnmiljö eller datacenter och utföra kontinuerligt underhåll. Den erbjuder även verktyg för att övervaka alla aspekter av distribuerade applikationer, upptäcka eventuella problem och lösa dem, antingen manuellt eller automatiskt.
En av Cloudifys mest anmärkningsvärda funktioner är TOSCA-baserad blueprint-modellering. Denna innovation gör det möjligt för utvecklare att använda YAML för att skapa ritningar av applikationens topologier. YAML är ett lättläst dataserialiseringsspråk som används för att skriva definitioner baserade på TOSCA-specifikationen. Detta ger utvecklare ett standardiserat sätt att beskriva kopplingar mellan applikationer, system och molninfrastrukturkomponenter.
Cloudify molnorkestrering ger en solid bas för IT-styrning och säkerhet, vilket gör att användare kan tillämpa åtkomstbegränsningar med olika roller och behörighetsnivåer. För att kommunicera med externa tjänster, som Kubernetes-behållare, molntjänster (AWS, Azure, vSphere, OpenStack) och konfigurationshanteringsverktyg (Puppet, Ansible, Chef), använder Cloudify en uppsättning officiella plugins. Många andra tjänster stöds också av generiska, befintliga plugins.
OpenShift
OpenShift är en Kubernetes-baserad plattform med en flexibel och mycket snabb installation och ett omfattande API-stöd, vilket gör det möjligt för utvecklare att anpassa plattformen efter sina specifika behov. Den är byggd med fokus på säkerhet, vilket bland annat visas genom att behållare förväntas köras som icke-rootanvändare. Om detta inte är fallet kräver OpenShift en uttrycklig åsidosättning för att behållaren ska kunna köras.
Dess användning av Kubernetes kräver en hel del serverresurser, och det finns en viss inlärningskurva för att behärska den. Därför är denna plattform kanske inte det bästa valet för små distributioner, om inte möjligheten finns att skala upp till en större implementering inom en snar framtid.
Användare av OpenShift lyfter fram de snabba installations- och konfigurationsprocedurerna, samt att det är enkelt att underhålla moduler och växlar. En annan fördel är att den har sin egen Git-repo. Det som användare inte uppskattar lika mycket är svårigheten att läsa och tolka loggar, särskilt när ett problem uppstår vid uppladdning av ett projekt, då det kan vara svårt att lokalisera felet.
Att lära sig OpenShift är enkelt.
Tsuru
Rede Globo, det näst största kommersiella TV-nätverket i världen, lanserade Tsuru som en Docker-baserad PaaS-produkt (plattform som en tjänst) som kan orkestrera och köra applikationer i en produktionsmiljö. Det är en öppen källkodsplattform för flera leverantörer som stöder webbplatser med miljontals användare och är utvecklad av Globo.com.
Användare av Tsuru bekräftar att det avsevärt förbättrar tiden till marknaden, utan att kompromissa med enkelhet, hög tillgänglighet, säkerhet eller stabilitet. Det kan köras i en mängd olika molninfrastrukturer, oavsett om de är publika eller privata, så länge de stöds av en Docker-maskin. Den stöder även nästan alla tillgängliga programmeringsspråk, vilket ger utvecklarna frihet att välja efter sina egna preferenser.
Med Tsuru kan du använda olika datalager, inklusive SQL- eller NoSQL-databaser, eller alternativ i minnet, som Memcached eller Redis. Du väljer helt enkelt den du föredrar och kopplar den till din app. För att hantera appen kan du välja att använda kommandoraden eller ett webbgränssnitt och senare distribuera via Git. Tsuru-infrastrukturen tar hand om alla tekniska detaljer.
Stackato
Stackato är en polyglot PaaS-produkt som baseras på Cloud Foundry och Docker. Den körs ovanpå din molninfrastruktur och fungerar som en lanseringsplattform för dina applikationer. Användare av Stackato anser att den tillhandahåller en smidig och robust applikationsplattform som förbättrar produktiviteten för både molnadministratörer och utvecklare. Den är väl lämpad för installationer i företagsmoln, och kombinerar flexibiliteten att få direkt tillgång till den virtuella datorn i molninfrastrukturen med den automatiserade konfigurationen som erbjuds av en fullfjädrad PaaS. De molninfrastrukturer som stöds inkluderar bland annat HP Cloud Services, Citrix XenServer, AWS, OpenStack och VMware.
I Stackato har varje applikation sin egen Linux-behållare (LXC), vilket säkerställer en effektiv och säker resursdelning. Dess tjänster inkluderar: Helion Control Plane, som Stackato använder för att kommunicera med det underliggande molnet och för att hantera servicelivscykler; Helion Service Manager, ett arkiv med extra tjänster som är tillgängliga för applikationer; Helion Cloud Foundry, en elastisk körtid som är utformad för att förenkla apphosting och utveckling; Helion Code Engine, en kontinuerlig leveranstjänst som är integrerad med Git-arkiv, både privata och publika, och Helion Stackato Console, ett webbgränssnitt för att hantera alla Helion Cloud-funktioner.
Alibaba
Även om det inte är lika ofta man nämner Alibaba i samband med molnplattformar med öppen källkod och PaaS, har Alibabas molndatorverksamhet haft en snabb tillväxt. De har redan erövrat 50 % av den kinesiska publika molnmarknaden, och de har också lärt sig att tillgodose marknader utanför Kina. De börjar bland annat tillhandahålla faktureringsstöd i amerikanska dollar i 168 länder och designar tjänster som är särskilt anpassade för utomeuropeiska marknader.
Molnplattformstjänsterna som ingår i Alibabas erbjudande innehåller många gratis funktioner, inklusive containertjänster för Docker och Kubernetes, Container Registry, Auto Scaling och DataWorks, en säker miljö för offlinedatautveckling. Deras tjänster är väl dokumenterade och åtföljs av allt du kan tänkas behöva för att börja migrera dina applikationer till molnet direkt, till exempel många instruktionsvideor. Efter några enkla steg, och utan att investera en enda krona, uppmanar Alibaba dig att börja bygga direkt.
Slutligen…
Som tur är för alla utvecklare är öppenhet den drivande kraften i molnvärlden. För några år sedan hotade konkurrensen mellan olika containertekniker (Docker, Kubernetes, Mesos, Nomad, ECS, för att nämna några) att splittra upp marknaden i separata fack, vilket skapade betydande risker när man behövde välja en plattform. Idag finns det fler plattformar att välja mellan, men skillnaderna mellan dagens alternativ med öppen källkod ligger mest i detaljerna: olika kostnadsmodeller, olika hanteringsverktyg, olika strategier för säkerhet. Med andra ord, om du väljer en molnplattform med öppen källkod idag och inte är nöjd, kan du byta till en annan imorgon, utan att det behöver kosta dig skjortan.
Med den information vi har delat hoppas vi att du ska kunna välja den plattform som bäst passar dina behov och låta dig glömma problem som serverkapacitet, mellanprogram, ramverk, virtuella maskiner och datalager. När du väl har befriat dig från allt detta kan du lägga all din tid och energi på det som verkligen är viktigt för dig: att leverera en fantastisk applikation till dina användare så snabbt som möjligt och hålla dem nöjda.
Letar du efter en gratis nivå eller molnplattformskredit? Kolla in den här listan.