Google je predstavio platformu za računalstvo bez poslužitelja Knative 1.0

Google je predstavio stabilno izdanje platforme Knative 1.0, dizajnirane za stvaranje računalne infrastrukture bez poslužitelja postavljene povrh sustava izolacije spremnika temeljenog na platformi Kubernetes. Osim Googlea, u razvoj Knativea uključene su i tvrtke kao što su IBM, Red Hat, SAP i VMware. Izdanje Knative 1.0 označilo je stabilizaciju API-ja za razvoj aplikacija, koji će od sada ostati nepromijenjen i kompatibilan sa starijim verzijama. Kôd projekta napisan je u Go i distribuiran pod licencom Apache 2.0.

Model razvoja aplikacija bez poslužitelja koji nudi Knative pruža dodatnu razinu apstrakcije za cloud sustave, dopuštajući da se funkcije izvode kao usluge (FaaS, Functions as a service). Bit serverless modela je da programer implementira logiku na razini pojedinačnih funkcija, bez brige o kreiranju i upravljanju infrastrukturom za pokretanje aplikacija, te bez vezivanja za specifične poslužiteljske aplikacije i cloud okruženja potrebna za njihov rad.

Razvoj se provodi bez stvaranja monolitnih aplikacija na razini pripreme skupa malih pojedinačnih funkcija, od kojih svaka osigurava obradu određenog događaja i dizajnirana je za rad odvojeno bez veze s okolinom (bez stanja, rezultat ne ovisi o prethodno stanje i sadržaj datotečnog sustava). Funkcije se pokreću samo kada se ukaže potreba i nakon obrade događaja mogu odmah završiti svoj posao, tj. za razliku od mikroservisa, ne postoji zahtjev za stalnom prisutnošću pokrenutih okruženja koja troše neaktivne resurse.

Platforma Knative sama po potrebi pokreće spremnike, u njih postavlja pripremljene funkcije, organizira upravljanje i osigurava skaliranje okruženja potrebnih za obavljanje tih funkcija. Platforma se može samostalno implementirati bez povezivanja s vanjskim uslugama u oblaku. Za rad je potreban samo Kubernetes. Dostupni su alati za podršku različitim uobičajenim okvirima, uključujući Django, Ruby on Rails i Spring. Sučelje naredbenog retka može se koristiti za kontrolu rada platforme.

Platforma nudi dvije glavne komponente:

  • Služi za pokretanje spremnika bez poslužitelja u Kubernetesu s automatskom konfiguracijom mrežne komunikacije, usmjeravanjem, praćenjem promjena (stvaranje snimaka hostiranog koda i postavki) i održavanjem potrebne razine skaliranja (do smanjenja broja podova na nulu u nedostatku aktivnosti) . Programer se fokusira samo na logiku; svime što je povezano s izvođenjem upravlja platforma. Za organiziranje mrežne interakcije i usmjeravanja zahtjeva mogu se koristiti mrežni podsustavi Ambassador, Contour, Kourier, Gloo i Istio. Postoji podrška za HTTP/2, gRPC i WebSockets.
  • Eventing je univerzalni sustav za pretplatu (pričvršćivanje rukovatelja), dostavu i upravljanje događajima. Omogućuje vam stvaranje asinkrono pokrenutih aplikacija pripajanjem računalnih resursa tokovima podataka pomoću objektnog modela i mehanizma za obradu događaja.

Izvor: opennet.ru

Dodajte komentar