sql >> Databáze >  >> RDS >> Database

Budoucnost zásobníku aplikací

Kontejnery žerou svět. Pokud jste během několika posledních let vytvořili a nasadili aplikaci v produkci, je pravděpodobné, že jste svůj kód nasadili v kontejnerech. Možná jste vytvořili a nasadili jednotlivé kontejnery (Docker, Linux LXC atd.) přímo na začátku, ale rychle jste přešli na technologii orchestrace kontejnerů, jako je Kubernetes (K8s) nebo Swarm, když jste potřebovali koordinovat víceuzlová nasazení a vysokou dostupnost. (HA). Jak bude v tomto světě řízeném kontejnery vypadat budoucnost zásobníku aplikací? Začněme tím, co potřebujeme z tohoto „budoucího“ zásobníku aplikací.

Co potřebujeme od tohoto budoucího zásobníku aplikací?

  1. Cloud Agnostik

    Chceme být cloudově agnostičtí s možností nasazení do libovolného cloudu dle našeho výběru. V ideálním případě můžeme dokonce smíchat různé poskytovatele v jediném nasazení.

  2. On-Premise

    Potřebujeme být schopni provozovat náš zásobník aplikací on-premise s naším vlastním hardwarem, privátním cloudem a interně spravovanými datovými centry.

  3. Jazyková agnostika

    Skoro se to říká, ale pro úplnost to doplním. Budoucí otevřený zásobník musí podporovat všechny oblíbené programovací jazyky.

Budoucí zásobník aplikací

Budoucí zásobník aplikací se bude skládat z triády technologií – K8, Platform-as-a-Service (PaaS) a Database-as-a-Service (DBaaS) :

K8s

Kubernetes je přenosná, rozšiřitelná platforma s otevřeným zdrojovým kódem pro správu kontejnerových úloh a služeb a své aplikace můžete nasadit přímo do kontejnerů K8s. Pro zákazníky se stávajícími aplikacemi má smysl zabalit a nasadit své stávající aplikace přímo do K8.

Budoucnost zásobníku aplikací:K8s, PaaS &DBaaSClick To Tweet

Všichni dodavatelé veřejných cloudů poskytují silnou nativní podporu pro K8 a můžete také provozovat svůj vlastní cluster K8 na místě. Docker nyní také naskočil do rozjetého vlaku K8 – takže máte plnou flexibilitu. Není pochyb o tom, že K8s je dnes králem kopce. Za pár let by ji mohlo překonat jiné řešení, ale technologie kontejnerové orchestrace tu zůstane.

Řešení PaaS

Pokud vytváříte novou aplikaci od začátku, řešení Platform-as-a-Service, jako je Cloud Foundry a OpenShift, nabízejí přesvědčivé výhody, které můžete využít k urychlení vývoje aplikací. životní cyklus. Je PaaS nutností? Rozhodně ne, ale myslím, že to stojí za zvážení, pokud vytváříte novou aplikaci.

V některých případech mohou řešení PaaS běžet na K8 nebo sedět vedle něj – z pohledu aplikace na tom nezáleží. Pokud vaše IT organizace nasazuje řešení PaaS, mohlo by se jí líbit, pokud běží pouze na jejich stávajících clusterech K8s. Výše zmíněná řešení PaaS jsou také dostupná na všech veřejných cloudech. Opět tedy máte plnou flexibilitu, kterou od své platformy potřebujete.

Řešení DBaaS

Provoz a správa produkčního databázového systému není pro slabé povahy. Pokud si myslíte, že nainstalujete svou produkční databázi na tři kontejnery a poběží šťastně až do smrti, čeká vás další věc. Pomocí řešení Database-as-a-Service se postarají o všechny provozní aspekty správy vaší databáze, takže budete připraveni na všechny neočekávané.

Vaše DBaaS může nebo nemusí běžet na K8. Možná některé části DBaaS běží na K8, ale je pravděpodobné, že ne. Proč?

  1. Mimo populární veřejné cloudy neexistuje skvělé řešení pro úložiště/svazky, které by dosahovaly kvality EC2 Elastic Block Storage (EBS). Prodejci jako PortWorx a OpenEBS na tom pracují, ale ještě to tam není. Bez dobrého řešení úložiště je prakticky nemožné vkládat data do vašich kontejnerů.
  2. Pokud provozujete velký produkční databázový server s několika TB, nemá smysl jej provozovat v kontejnerech – budete mít velké dedikované stroje s luxusními SSD .
  3. Příliš mnoho dynamiky – ano, můžete mít příliš mnoho dobrých věcí. Někdy, když věci selžou, chcete, aby zůstaly neúspěšné, takže se můžete podívat a zjistit, co se děje. StatefulSets v Kubernetes jsou skvělým krokem správným směrem k vyřešení tohoto problému.

Naší vizí ve ScaleGrid je poskytovat DBaaS část této budoucí sady aplikací. Dnes jsme multi-cloud a můžeme také provozovat on-premise nebo ve vašem vlastním soukromém datovém centru. Naše platforma je navíc polyglot systém, který podporuje více databází, včetně MongoDB®, Redis™*, MySQL a PostgreSQL.

V zájmu jednoduchosti jsem vyloučil některé další části zásobníků aplikací jako úložiště objektů, úložiště souborového systému atd. V zásadě očekávám tyto komponenty budou podobné komponentě DBaaS. Tento blogový příspěvek byl inspirován setkáním Silicon Valley PostgreSQL, kterého jsem se před několika týdny zúčastnil, a křičím na Davea Nielsena (@davenielsen) z RedisLabs, aby zahájil diskusi na toto téma.


  1. Vytvořte vypočítaný sloupec, který používá data z jiné tabulky na serveru SQL Server

  2. Migrují všichni do cloudu?

  3. Matice podporovaných verzí Oracle

  4. Vypočítat max. součtu anotovaného pole nad seskupeným dotazem v Django ORM?