Microsoft Radius: «Kubernetes har gjort ting vanskeligere»

Microsofts nye open source-prosjekt Radius skal forenkle sky-applikasjoner.

Utviklere skal ikke trenge å kunne alt om den underliggende infrastrukturen, mener Microsoft – og lanserer Radius. 📸: Kurt Lekanger
Utviklere skal ikke trenge å kunne alt om den underliggende infrastrukturen, mener Microsoft – og lanserer Radius. 📸: Kurt Lekanger Vis mer

Microsofts Azure Incubations Team har lansert en ny åpen kildekode-basert plattform de kaller Radius, som skal gjøre det enklere å levere og drifte applikasjoner på tvers av ulike skytjenester og privat infrastruktur. Det melder DevClass.

– Selv om det er riktig at forbedringer innenfor skyinfrastruktur og plattformer som Kubernetes har vært avgjørende for å utvikle fleksible, skalerbare og portable mikrotjeneste-applikasjoner, har de også gjort ting vanskeligere for utviklere og de som skal drifte løsningene, skriver de som vedlikeholder Radius-prosjektet i et blogginnlegg.

– Utvikere og operatører sliter med å forstå hvordan applikasjonene deres er satt sammen på tvers av forskjellige verktøy.

Som eksempel nevner de at utviklere opplever at det å administrere infrastruktur er ganske komplekst, og at manglende innsyn i ressursene applikasjonene deres er satt sammen av går ut over produktiviteten.

Radius-plattformen skal gjøre det enklere for både de som utvikler og de som drifter applikasjoner, uavhengig av skyleverandører. 📸: Microsoft
Radius-plattformen skal gjøre det enklere for både de som utvikler og de som drifter applikasjoner, uavhengig av skyleverandører. 📸: Microsoft Vis mer

Fungerer med alle skyer

Radius skal ifølge lanseringsbloggposten gi utviklere og operatører ett enkelt verktøy for å beskrive, rulle ut og administrere hele applikasjonen.

Selv om det er Microsoft som står bak Radius, er litt av poenget med Radius at løsningen skal fungere med alle skyer og ikke låse deg inn i bestemte plattformer.

I første omgang er det riktignok bare Azure og Amazon Web Services (AWS) som støttes, men flere skal komme etter hvert.

Det er støtte for mange av de mest populære app-utviklingsverktøyene som Dapr og infrastruktur-som-kode-språk som Terraform og Bicep. Og Radius kan integreres mot eksisterende løsninger for kontinuerlig integrasjon og utrulling (CI/CD), som GitHub Actions.

følge Radius vil utviklere kunne definere applikasjoner og avhengighetene i applikasjonene, uten å bry seg om den underliggende infrastrukturen. Så vil operatører definere og konfigurere plattform, infrastruktur og policies.

Radius Recipes

Den første versjonen av Radius inneholder blant annet:

  • Forenklet og konsistent applikasjonsutvikling ved at man kan rulle ut til en hvilken som helst skyleverandør eller on-prem med den samme applikasjons-definisjonen og de samme verktøyene.
  • "Radius Recipes", forhåndsdefinerte maler som automatiserer provisjonering av infrastruktur-ressurser og miljø-konfigurasjoner.
  • Applikasjons-grafer skal gi innsikt i alle ressurser og sammenhenger som utgjør en applikasjon. Som Radius sier: grafer er bedre enn lister. Grafene kan brukes både til å rulle ut og til å forstå applikasjonen bedre.

– Radius gjør utviklere i stand til å forstå applikasjonene sine, og den vet at applikasjonen er mer enn bare Kubernetes, forklarer Mark Russinovich i Microsofts Azure-team i en bloggpost.

Ifølge Russinovich vil Radius hjelpe utviklere med å se hvilke komponenter applikasjonen er satt sammen av, og når de legger til nye komponenter vil Radius automatisk "koble" disse komponentene til applikasjonen ved å ta seg av nødvendige tillatelser og andre ting.

Skrevet i Go

DevClass skriver at kjernen i Radius er det som kalles Universal Control Platform (UCP), som ifølge dokumentasjonen er basert på designprinsippene til Azure Resource Manager (ARM) – men skrevet om slik at det skal fungere på tvers av ulike skyer og systemer.

UCP skal være helt ny kode skrevet i Go.

Kildekoden til Radius er som nevnt åpen kildekode (Apache 2.0-lisens), og ligger på GitHub.