Google har præsenteret serverløs computing-platformen Knative 1.0

Google har præsenteret en stabil version af Knative 1.0, en platform designet til at skabe infrastruktur til serverless computing, der kører over et containeriseringssystem bygget på Kubernetes. Udover Google deltager også virksomheder som IBM, Red Hat, SAP og VMware i udviklingen af Knative. Udgivelsen af Knative 1.0 markerede stabiliseringen af API'et til app-udvikling, som nu vil forblive uændret og sikre bagudkompatibilitet. Koden til projektet er skrevet i Go og distribueres under Apache 2.0-licensen.

Den serverless app-udviklingsmodel, der tilbydes i Knative, giver et ekstra abstraktionsniveau for cloud-systemer, som muliggør udførelse af funktioner som tjenester (FaaS, Functions as a Service). Essence af serverless-modellen er, at udvikleren implementerer logikken på niveauet af individuelle funktioner uden at skulle bekymre sig om oprettelse og styring af den infrastruktur, der kræves for at køre applikationerne, og uden at være bundet til specifikke serverapplikationer og de nødvendige cloud-miljøer for deres drift.

Udviklingen foregår uden oprettelse af monolitiske applikationer, men derimod via en samling af små, separate funktioner, hvor hver enkelt håndterer en specifik hændelse og er beregnet til at arbejde isoleret uden tilknytning til miljøet (stateless, resultatet afhænger ikke af tidligere tilstand og indholdet af Filsystemet). Funktioner aktiveres kun ved behov, og efter at have behandlet en hændelse kan de straks afslutte deres arbejde; d.v.s. i modsætning til mikrotjenester kræves der ikke konstant tilstedeværelse af aktive miljøer, som forbruger ressourcer uden aktivitet.

Knative-platformen starter automatisk containere efter behov, placerer de forberedte funktioner i dem, organiserer administrationen og sikrer skalering af de miljøer, der er nødvendige for at udføre disse funktioner. Platformen kan implementeres på egne faciliteter uden at være bundet til eksterne cloud-tjenester. Det kræver kun Kubernetes for at køre. Der tilbydes værktøjer til støtte for forskellige standardrammer, inklusive Django, Ruby on Rails og Spring. Kommando-grænsefladen kan bruges til at administrere platformens drift.

Platformen tilbyder to hovedkomponenter:

  • Betjening til at starte serverløse containere i Kubernetes med automatisk konfiguration af netværksinteraktion, routing, ændringssporing (oprettelse af snapshots af den implementerede kode og indstillinger) og opretholdelse af det krævede niveau af skalering (herunder reduktion af antallet af pods til nul i tilfælde af inaktivitet). Udvikleren fokuserer kun på logikken, mens platformen håndterer alt relateret til udførelsen. Til organisering af netværksinteraktion og routing af forespørgsler kan netværkssystems som Ambassador, Contour, Kourier, Gloo og Istio anvendes. Der tilbydes support til HTTP/2, gRPC og WebSockets.
  • Eventing er et universelt abonnementssystem (tilknytning af behandlere), levering og styring af hændelser. Det muliggør oprettelse af asynkront fungerende applikationer ved at tilknytte beregningsressourcer til datastreams ved hjælp af objektmodellen og hændelsesbehandlingsmekanismen.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster