Er du en utvikler, systemarkitekt eller IT-leder som søker etter en løsning for å kutte utgifter, øke skalerbarheten og sikre dine skybaserte applikasjoner?
Hvis dette er tilfelle, kan flerleieforhold være svaret.
I dette innlegget vil vi se på det grunnleggende om multi-tenancy, alternative teknikker for å implementere det, og avgjørende faktorer å vurdere. Denne guiden vil gi deg alt du trenger for å komme i gang.
Hva er egentlig multitenancy?
En enkelt programvare kan betjene mange klienter (leietakere) under multi-tenancy programvarearkitekturkonseptet. Hver leietaker har sine egne data, konfigurasjon og brukergrensesnitt og er logisk atskilt fra de andre.
Dette innebærer at dataene til hver leietaker er forskjellig fra dataene til andre leietakere og ikke er tilgjengelige for andre leietakere. I skybasert programvare, hvor mange klienter deler samme infrastruktur, brukes ofte multi-tenancy.
Flerleie har vært et begrep en stund, men med veksten av cloud computing, det har vært mer kjent i det siste. I skybasert programvare er multi-tenancy en kraftig teknikk for å spare utgifter, øke skalerbarheten og øke fleksibiliteten.
Hvorfor er det viktig?
Multi-tenancy har sin opprinnelse i tradisjonell stormaskindesign når flere programmer og brukere delte en enkelt prosesseringsmaskinvareplattform. Med introduksjonen av moderne maskinvareassistert virtualisering, har multi-tenancy sett en boom i popularitet.
Kapasiteten til å dele maskinvare på tvers av en rekke programvareforekomster, som virtuelle maskiner og deres applikasjoner, har dukket opp som en kritisk funksjon i skybasert programvare.
Multi-tenancy brukes ofte i lokale datasentre og vertsbaserte infrastrukturer som colocation og delte IT-tjenester, slik at flere brukere kan dele en begrenset eller delt maskinvareinfrastruktur.
På grunn av kapasiteten til å kutte kostnader, forbedre skalerbarheten og øke sikkerheten i skybasert programvare, har multi-tenancy blitt et viktig programvaredesignparadigme.
Hvordan oppnås det?
Virtualisering, containerisering og cloud computing er noen av tilnærmingene og teknologiene som brukes for å oppnå flere leieforhold.
Virtualisering lar mange virtuelle datamaskiner eller operativsystemer operere på en enkelt fysisk maskin, slik at forskjellige isolerte miljøer kan opprettes.
Containerisering, på den annen side, muliggjør utvikling av lette, isolerte og bærbare miljøer som deler den samme operativsystemkjernen.
Cloud computing er en svært skalerbar og tilpasningsdyktig arkitektur som lar mange brukere dele en on-demand pool av dataressurser.
Disse teknologiene, når de er sammenkoblet med forskjellige administrasjons- og sikkerhetsteknikker, muliggjør utvikling av et multi-tenant-miljø som sikrer hver enkelt leietakers isolasjon, sikkerhet og ytelse.
Forskjellen mellom enkelt leietaker vs multi-leietaker
Det primære skillet mellom miljøer med én leietaker og flere leietakere er at en kunde i et miljø med én leietaker har en dedikert forekomst av applikasjonen og støttende infrastruktur, mens flere kunder deler samme applikasjon og infrastruktur i et miljø med flere leietakere.
Hver kundes data er atskilt fra andre kunders data i et miljø med flere leietakere, men de deler samme kodebase og infrastruktur. Dette reduserer leverandørens kostnader i situasjoner med flere leietakere siden de kan betjene flere klienter med en enkelt forekomst av programmet.
Innstillinger for én leietaker, derimot, gir mer kontroll, tilpasning og sikkerhet fordi hver klient har sine dedikerte ressurser og handlingene til én kunde ikke påvirker handlingene til de andre.
Fordeler med flerleieforhold
- Kostnadsbesparelser: Fordi multi-tenancy lar mange kunder dele den samme infrastrukturen, kan både programvareselgeren og kundene spare penger.
- Forbedret skalerbarhet: Multi-tenancy lar programvareleverandører enkelt skalere infrastrukturen sin for å møte kravene til kundene sine uten å måtte distribuere ny maskinvare og programvare for hver kunde.
- Økt fleksibilitet: Multi-tenancy gir både programvareleverandøren og forbrukerne større frihet. Kunder kan endre forbruket etter behov, mens programvareleverandører kan tilby en rekke tjenestenivåer og prisordninger.
- Bedre sikkerhet: Fordi multi-tenancy isolerer hver leietakers data og hindrer andre leietakere fra å få tilgang til dem, økes sikkerheten.
- Forbedret ressursutnyttelse: Multi-tenancy gjør det mulig for programvareleverandører å utnytte sine maskinvareressurser best mulig, noe som resulterer i forbedret ytelse og effektivitet.
Tilnærminger til flerleieforhold
Separate databaser
Hver leietaker har sin database under denne tilnærmingen. Dette er den enkleste løsningen og gir total datasegregering mellom leietakere. Hver leietaker har full kontroll over sin database og kan konfigurere den etter eget ønske.
Denne strategien kan imidlertid være kostbar fordi hver leietaker krever sin databaseforekomst. Videre kan det være komplisert og tidkrevende å administrere flere databaser.
Delt database, separat skjema
Alle leietakere i denne teknikken deler en enkelt database, men hver leietaker har sitt distinkte skjema i den databasen. Fordi alle leietakere deler en enkelt databaseforekomst, gjør denne teknikken effektiv bruk av ressurser.
Det gjør også administrasjon og vedlikehold enklere fordi det bare er én database å håndtere.
Det kan imidlertid være vanskeligere å distribuere siden hver leietakers skjema må bygges og vedlikeholdes nøye for å sikre tilstrekkelig dataseparasjon. Denne metoden er ideell for scenarier der leietakere har sammenlignbare datastrukturer men krever dataseparasjon.
Delt database, delt skjema
Alle leietakere i denne modellen deler en enkelt database og et enkelt skjema i den databasen. Dette er det mest ressurseffektive alternativet siden det bare krever én databaseforekomst og ett skjema for å administrere.
Det kan imidlertid være vanskelig å opprettholde tilstrekkelig datasegregering på tvers av leietakere. Denne metoden passer for scenarier der leietakere har identiske datastrukturer og ikke krever total dataisolering.
Ulike hensyn ved flerleieforhold
Dataisolering
Dataisolering er en av de viktigste aspektene ved flerleieforhold.
For å unngå uønsket tilgang, må hver leietakers data holdes atskilt og sikre. Dette oppnås ofte ved bruk av logiske eller fysiske separasjonsteknikker som forskjellige databaser, skjemaer eller tabeller.
Det er avgjørende å sikre at data er atskilt for å ivareta personvernet og sikkerheten til hver enkelt leietakers data.
Leietaker onboarding
Prosessen med å introdusere en ny leietaker til et system med flere leietakere omtales som leietaker onboarding. Denne prosedyren må håndteres nøye for å sikre at nye leietakere er ordentlig ombord, samtidig som de forårsaker minst mulig avbrudd for nåværende leietakere.
Dette omfatter å levere nye ressurser, opprette nye kontoer og konfigurere leietakers miljø.
En forenklet onboarding-prosedyre kan bidra til å redusere utgifter og forbedre effektiviteten i leietakeradministrasjonen.
Ytelse
Multi-tenancy har potensial til å forringe systemytelsen, spesielt hvis leietakere deler ressurser som prosessorkraft, minne eller lagring. På grunn av den høye naboeffekten kan en leietakers aktiviteter ha innvirkning på ytelsen til andre leietakere.
Nøye ressursallokering og overvåking kan bidra til å redusere dette problemet og garantere at hver enkelt leietakers ytelse ikke blir skadet.
Tilpasning
Kapasiteten til hver enkelt leietaker til å tilpasse omgivelsene sine for å matche deres krav er kjent som tilpasning. Selv om tilpasning kan øke verdien av et system med flere leietakere for hver leietaker, kan det også øke administrasjonskompleksiteten og kostnadene.
Å oppnå en balanse mellom tilpasning og standardisering kan bidra til å sikre at systemet er skalerbart og vedlikeholdt, samtidig som det tilfredsstiller de spesifikke kravene til hver enkelt leietaker.
Eksempler på flerleieforhold
Public Cloud Multi-tenancy
Kunder i offentlig sky med flere leieforhold bruker forekomster av ressurser og tjenester for å bygge en arkitektur som egner seg for å være vert for en forretningsapplikasjon.
Hver skyressurs eller tjeneste deler underliggende maskinvare- og nettverkskapasitet, og selv om denne strategien kan gi forbrukere dedikerte ressurser, er det unntaket snarere enn regelen.
For å oppnå flere leieforhold bruker offentlige skyleverandører en rekke metoder, inkludert VM-baserte og containerbaserte tilnærminger.
Maskinvare — VM og container
Flere virtuelle maskiner og virtuelle beholdere kan genereres og hostes på en enkelt server ved hjelp av maskinvarevirtualisering, med hver VM som kjører en separat applikasjon eller tjeneste administrert av en annen interessent, avdeling eller klient.
Multi-tenancy av maskinvare er vanlig i moderne data sentre og samlokaliseringsmiljøer, og det er en kritisk muliggjører for all cloud computing.
SaaS multi-tenancy
Fordi programvare som en tjeneste (SaaS)-leverandører ofte kategoriseres som skyleverandører, er dette en versjon av offentlig skymulti-tenancy.
For eksempel kan en SaaS-leverandør operere én forekomst av programmet sitt på én enkelt forekomst av en database og gi online tilgang til flere klienter. I dette tilfellet er hver leietakers data atskilt og usynlig for andre leietakere.
Multi-tenancy kan også introduseres i flerlagssystemer som SAP.
Private Cloud Multi-Tenancy
Flerleie i en privat sky. En privat sky ligner på en offentlig sky når det gjelder flere leieforhold, men en privat sky er dedikert til et enkelt selskap eller gruppe, mens en offentlig sky tjener behovene til en rekke kunder eller organisasjoner.
Serverløs multi-tenancy
Serverløs databehandling er en skytjeneste som bruker hendelser til å laste og kjøre en kundes kode før den avviser infrastrukturen når koden utføres.
Mange programmer kan dele den samme funksjonen, og funksjonen laster og opererer på hvilken som helst delt maskinvareinfrastruktur som er tilgjengelig.
Hva er mulige ulemper?
En av de store ulempene er muligheten for datalekkasjer. Fordi flere leietakere deler samme infrastruktur, kan en sikkerhetsfeil i én leietakers applikasjon sette dataene til alle andre leietakere i fare.
En annen ulempe er muligheten for støyende naboeffekter, der en leietakers bruksvaner kan forringe ytelsen til andre leietakers søknader.
Det kan også være vanskelig å implementere endringer og integrasjoner, og enkelte leietakere kan kreve forskjellige innstillinger eller programversjoner som er uforenlige med andre leietakere.
Til slutt kan det hende at multi-tenancy ikke er passende for mange applikasjoner, spesielt de som krever høye hastighetsnivåer eller streng datasegregering.
Fremtidige retningslinjer for multi-tenancy i skybasert programvare
Fremtiden for multi-tenancy ser lys ut ettersom skybasert programvare fortsetter å utvide og tilpasse seg. Serverløs databehandling, som gir mulighet for mer detaljert ressursallokering og forbruk, blir stadig mer populært.
Dette har potensial til å forbedre flerleieforhold ved å tillate større isolasjon og ressursbruk. Mikrotjenester og containere, som gir økt fleksibilitet og modularitet, er en annen rute for flerleieforhold.
Videre har maskinlæring og kunstig intelligens-teknologier potensial til å optimalisere ressursallokering og ytelse i multi-tenant-systemer.
Endelig vil fremtiden for multi-tenancy i skybasert programvare endres som følge av teknologiske forbedringer og endrede forretningskrav.
Legg igjen en kommentar