Vier oplossingen voor het beheer van open source serversoftware

Je moet je software kunnen aanpassen aan de online ruimte. Bedrijven van elke omvang beginnen enorme hoeveelheden verkeer te zien en werken met grote hoeveelheden gegevens verspreid over meerdere servers. Dit kan een groot aantal problemen veroorzaken. Het probleem is ingewikkeld, maar maak je geen zorgen. Er zijn verschillende oplossingen beschikbaar.

Voor bedrijven die van oudsher bedrijfseigen commerciële software gebruiken, is het tijd om open source software te gebruiken die wordt gebruikt door bedrijven zoals Netflix, Facebook en LinkedIn. Elk bedrijf kan nu dezelfde software gebruiken als deze industriële reuzen - zonder een cent te betalen aan vooraf gemaakte kosten en softwarelicentievergoedingen. Dit is nogal de verandering ten opzichte van de eerste dot-com boom, toen bedrijven honderdduizenden dollars in infrastructuur investeerden voordat ze zelfs een product lanceerden.

Gewapend met slechts een creditcard en 15 minuten, kunt u een farm van 100 servers bij Amazon Web Services (AWS) of Rackspace Cloud laten draaien. Open source software is volwassen geworden tot het punt waarop u een databaseserver op ondernemingsniveau kunt downloaden en installeren met een enkele opdracht.

Server overschakelen

Het instellen van servers is misschien veel eenvoudiger met services van Amazon en dergelijke, maar hoe gaat u van daaruit uw software veilig installeren en uitvoeren in de cloud? Hier zijn vier oplossingen om te verkennen wanneer u aan de slag gaat:

  1. Platform as a Service (PaaS): een nieuw soort hostingproviders is opgedoken die veel van dit gedoe aankan. Dit werkt als volgt: u uploadt uw code en vertelt hem welke services u nodig hebt. Hierdoor kunt u zich concentreren op uw software in plaats van op de infrastructuur. Maar houd er rekening mee dat PaaS-services aanzienlijk duurder zijn dan het uitvoeren van uw eigen servers, en ze bieden vaak minder flexibiliteit in de software die u kunt uitvoeren. Heroku lijkt momenteel de leider op dit gebied te zijn, maar services zoals dotCloud en Google App Engine bieden ook aantrekkelijke aanbiedingen.
  2. Hulpprogramma's voor configuratiebeheer: met het vluchtige karakter van cloudservers is het gebruikelijk om meerdere servers in een paar uur op te draaien en ze vervolgens allemaal te verlagen om kosten te besparen. Met Configuration Management (CM) kunt u dit hele proces in een beschrijvende taal scripten; het vereist weinig tot geen handmatige inspanning na de eerste installatie. Deze CM-tools kunnen tegelijkertijd configuratie- en software-updates naar een vloot van servers pushen. Ze vereisen echter vaak aanzienlijke inspanningen vooraf tijdens de eerste installatie, evenals voortdurende aanpassingen. Chef en Puppet zijn hier populaire tools, maar we zijn zeer enthousiast over de nieuwkomer, Salt, die tonnen functionaliteit biedt die verder gaat dan de bestaande tools voor configuratiebeheer.
  3. Services van derden: veel van de logboekregistratie en alarmering van systemen kan worden afgehandeld door services van derden. Het argument zou zelfs kunnen zijn dat externe leveranciers een betere optie zijn dan het werk in eigen huis te doen. Populaire bedrijven in deze ruimte zijn onder andere New Relic, Sentry, Pingdom en PagerDuty.
  4. Externe consultants: de initiële leercurve voor al deze tools is steil. U moet niet alleen leren hoe u de tools moet gebruiken, maar u moet ook leren welke tools u nodig hebt. Voor veel bedrijven is het logisch om experts die goed thuis zijn in deze technologie in te schakelen voor de eerste installatie en training.

Verbindingscomplicaties

Complicaties met uw servers kunnen rampzalig zijn als ze onbeheerd worden achtergelaten. We zien computerproblemen op een schaal die we in het verleden niet hadden moeten aanpakken. Op internet kan een enkele website miljoenen paginabezoeken per dag weergeven. Je kunt dit soort verkeer niet met één machine aan. Bedrijven zoals Facebook en Google onderhouden honderdduizenden servers om de enorme hoeveelheden verkeer en gegevens die ze dagelijks zien te verwerken.

Dat probleem wordt alleen maar groter naarmate het web realtime wordt. Om uw browser bij te werken met Twitter- en Facebook-updates, houdt uw computer een langlopende verbinding met de server open of maakt hij voortdurend verbindingen open om om nieuwe gegevens te vragen. Dit is de kern van het C10k-probleem dat vraagt: Hoe krijgen we een server die 10.000 verbindingen tegelijkertijd kan verwerken? Hoewel sommige mensen zijn geblazen door het 10.000-nummer ( Urban Airship doet meer dan 500.000 ), is er nog steeds een bovengrens en het is minder dan het aantal gebruikers dat we moeten ondersteunen op een website met veel verkeer.

Het beheren van de configuratie en implementatie van technologie op meerdere servers is in het begin een overweldigend probleem. Eén misstap kan een groot beveiligingslek betekenen of een hele website verwijderen. De tijd en middelen besteden om vooraf een sterke infrastructuur te bouwen, is een noodzaak en gelijk aan het oude gezegde dat een onsje preventie de moeite waard is om te genezen. Door vroegtijdig wat bewuste planning te maken, kunt u meer tijd investeren in uw product op de weg.

Peter Baumgartner is de oprichter van full-service webstudio Lincoln Loop , makers van Ginger , een online platform om gedistribueerde teams te helpen communiceren. Peter is een expert in op Django gebaseerde webontwikkeling en een toonaangevend leider in ondernemerschap en teamwerk op afstand. Hij verwelkomt iedereen om hem te bereiken op Twitter of Google+ .

© Copyright 2020 | mobilegn.com