Er du en udvikler, systemarkitekt eller it-chef, der leder efter en løsning til at skære i omkostningerne, øge skalerbarheden og sikre dine cloud-baserede applikationer?
Hvis dette er tilfældet, kan multi-lejemål være dit svar.
I dette indlæg vil vi se på det grundlæggende i multi-lejemål, alternative teknikker til at implementere det og afgørende faktorer at overveje. Denne guide giver dig alt, hvad du behøver for at komme i gang.
Hvad er Multitenancy helt præcist?
En enkelt software kan betjene adskillige klienter (lejere) under multi-tenancy softwarearkitekturkonceptet. Hver lejer har sine egne data, konfiguration og brugergrænseflade og er logisk adskilt fra de andre.
Dette indebærer, at hver enkelt lejers data er adskilt fra andre lejeres data og ikke er tilgængelige for andre lejere. I cloud-baseret software, hvor adskillige kunder deler den samme infrastruktur, er multi-tenancy ofte ansat.
Multileje har været et begreb i et stykke tid, men med væksten af cloud computing, det har været mere kendt for nylig. I cloud-baseret software er multi-tenancy en kraftfuld teknik til at spare udgifter, øge skalerbarheden og øge fleksibiliteten.
Hvorfor er det vigtigt?
Multi-tenancy har sin oprindelse i traditionelle mainframe-designs, når flere programmer og brugere delte en enkelt behandlingshardwareplatform. Med introduktionen af moderne hardware-assisteret virtualisering har multi-tenancy oplevet et boom i popularitet.
Kapaciteten til at dele hardware på tværs af adskillige softwareinstanser, såsom virtuelle maskiner og deres applikationer, er dukket op som en kritisk funktion i cloud-baseret software.
Multi-tenancy er almindeligt anvendt i lokale datacentre og hostede infrastrukturer såsom colocation og delte it-tjenester, hvilket giver flere brugere mulighed for at dele en begrænset eller delt hardwareinfrastruktur.
På grund af dets evne til at reducere omkostningerne, forbedre skalerbarheden og øge sikkerheden i cloud-baseret software, er multi-tenancy blevet et vigtigt softwaredesignparadigme.
Hvordan opnås det?
Virtualisering, containerisering og cloud computing er nogle af de tilgange og teknologier, der bruges til at opnå multi-lejemål.
Virtualisering gør det muligt for adskillige virtuelle computere eller operativsystemer at operere på en enkelt fysisk maskine, hvilket gør det muligt at skabe forskellige isolerede miljøer.
Containerization muliggør på den anden side udviklingen af lette, isolerede og bærbare miljøer, der deler den samme operativsystemkerne.
Cloud computing er en yderst skalerbar og tilpasningsdygtig arkitektur, der gør det muligt for adskillige brugere at dele en on-demand-pulje af computerressourcer.
Disse teknologier, når de er parret med forskellige administrations- og sikkerhedsteknikker, muliggør udviklingen af et multi-lejermiljø, der sikrer hver enkelt lejers isolation, sikkerhed og ydeevne.
Forskellen mellem enkelt lejer vs multi-lejer
Den primære skelnen mellem miljøer med én lejer og flere lejere er, at en kunde i et miljø med én lejer har en dedikeret instans af applikationen og understøttende infrastruktur, hvorimod flere kunder deler den samme applikation og infrastruktur i et miljø med flere lejere.
Hver kundes data er adskilt fra andre kunders data i et multi-tenant-miljø, men de deler den samme kodebase og infrastruktur. Dette reducerer leverandørens omkostninger i situationer med flere lejere, da de kan betjene flere kunder med en enkelt forekomst af programmet.
Indstillinger for enkelt lejer giver på den anden side mere kontrol, tilpasning og sikkerhed, fordi hver klient har deres dedikerede ressourcer, og den ene kundes handlinger ikke påvirker de andres handlinger.
Fordele ved multi-lejemål
- Omkostningsbesparelser: Fordi multi-lejemål giver mange kunder mulighed for at dele den samme infrastruktur, kan både softwaresælgeren og kunderne spare penge.
- Forbedret skalerbarhed: Multi-tenancy giver softwareudbydere mulighed for blot at skalere deres infrastruktur for at imødekomme deres kunders krav uden at skulle implementere ny hardware og software for hver kunde.
- Øget fleksibilitet: Multi-tenancy giver både softwareleverandøren og forbrugerne mere frihed. Kunder kan ændre deres forbrug efter behov, mens softwareleverandører kan levere en række serviceniveauer og prisordninger.
- Bedre sikkerhed: Fordi multi-lejemål isolerer hver enkelt lejers data og forhindrer andre lejere i at få adgang til dem, øges sikkerheden.
- Forbedret ressourceudnyttelse: Multi-tenancy gør det muligt for softwareleverandører at udnytte deres hardwareressourcer bedst muligt, hvilket resulterer i forbedret ydeevne og effektivitet.
Tilgange til multilejemål
Separate databaser
Hver lejer har sin database under denne tilgang. Dette er den enkleste løsning og giver total dataadskillelse mellem lejere. Hver lejer har fuldstændig kontrol over deres database og kan konfigurere den efter deres smag.
Denne strategi kan dog være dyr, fordi hver lejer kræver deres databaseinstans. Desuden kan administration af flere databaser være kompliceret og tidskrævende.
Delt database, separat skema
Alle lejere i denne teknik deler en enkelt database, men hver lejer har sit særskilte skema i denne database. Fordi alle lejere deler en enkelt databaseinstans, gør denne teknik effektiv brug af ressourcer.
Det gør også administration og vedligeholdelse nemmere, fordi der kun er én database at håndtere.
Det kan dog være vanskeligere at implementere, da hver lejers skema skal bygges og vedligeholdes omhyggeligt for at sikre tilstrækkelig dataadskillelse. Denne metode er ideel til scenarier, hvor lejere har sammenlignelige datastrukturer men kræver dataadskillelse.
Delt database, delt skema
Alle lejere i denne model deler en enkelt database og et enkelt skema i denne database. Dette er den mest ressourceeffektive mulighed, da den kun kræver en databaseinstans og et skema at administrere.
Det kan dog være svært at opretholde tilstrækkelig dataadskillelse på tværs af lejere. Denne metode er velegnet til scenarier, hvor lejere har identiske datastrukturer og ikke kræver total dataisolering.
Forskellige overvejelser for multilejemål
Dataisolering
Dataisolering er et af de vigtigste aspekter af multi-lejemål.
For at undgå uønsket adgang skal hver enkelt lejers data opbevares adskilt og sikkert. Dette opnås ofte ved brug af logiske eller fysiske separationsteknikker såsom forskellige databaser, skemaer eller tabeller.
Det er afgørende at sikre, at data er adskilt for at beskytte privatlivets fred og sikkerhed for hver enkelt lejers data.
Lejer onboarding
Processen med at introducere en ny lejer til et system med flere lejere kaldes lejer onboarding. Denne procedure skal styres omhyggeligt for at sikre, at nye lejere er ordentligt ombord, mens de forårsager mindst mulig afbrydelse for nuværende lejere.
Dette omfatter levering af nye ressourcer, oprettelse af nye konti og konfiguration af lejerens miljø.
En forenklet onboarding-procedure kan hjælpe med at reducere udgifter og forbedre effektiviteten af lejerstyring.
Performance (Præstation)
Multi-tenancy har potentiale til at forringe systemets ydeevne, især hvis lejere deler ressourcer såsom processorkraft, hukommelse eller lager. På grund af den høje naboeffekt kan en lejers aktiviteter have indflydelse på andre lejeres præstationer.
Omhyggelig ressourceallokering og overvågning kan hjælpe med at reducere dette problem og garantere, at hver enkelt lejers præstation ikke skades.
Tilpasning
Hver enkelt lejers kapacitet til at tilpasse deres omgivelser, så de matcher deres krav, kaldes tilpasning. Selvom tilpasning kan øge værdien af et system med flere lejere for hver lejer, kan det også øge administrationens kompleksitet og omkostninger.
At opnå en balance mellem tilpasning og standardisering kan hjælpe med at sikre, at systemet er skalerbart og vedligeholdes, mens det stadig opfylder de specifikke krav fra hver enkelt lejer.
Eksempler på Multilejemål
Public Cloud Multi-lejemål
Kunder i offentlige cloud-multi-lejemål anvender forekomster af ressourcer og tjenester til at bygge en arkitektur, der er egnet til at hoste en virksomhedsapplikation.
Hver cloud-ressource eller -tjeneste deler underliggende hardware- og netværkskapacitet, og selvom denne strategi kan give forbrugerne dedikerede ressourcer, er det undtagelsen snarere end reglen.
For at opnå multi-tenancy anvender offentlige cloud-udbydere en række metoder, herunder VM-baserede og container-baserede tilgange.
Hardware — VM og container
Flere virtuelle maskiner og virtuelle containere kan genereres og hostes på en enkelt server ved hjælp af hardwarevirtualisering, hvor hver VM kører en separat applikation eller tjeneste, der administreres af en anden interessent, afdeling eller klient.
Hardware multi-lejemål er almindeligt i moderne data centre og colocation-miljøer, og det er en kritisk muliggører for al cloud computing.
SaaS multi-lejemål
Fordi software as a service (SaaS) udbydere ofte kategoriseres som cloud udbydere, er dette en version af offentlig cloud multi-tenancy.
For eksempel kan en SaaS-udbyder betjene én instans af sit program på en enkelt instans af en database og give onlineadgang til flere klienter. I dette tilfælde er hver lejers data adskilt og usynlig for andre lejere.
Multi-lejemål kan også introduceres i multi-tier systemer som SAP.
Privat Cloud Multi-Tenancy
Multilejemål i en privat sky. En privat sky ligner en offentlig sky med hensyn til multi-lejemål, men en privat sky er dedikeret til en enkelt virksomhed eller gruppe, hvorimod en offentlig sky tjener behovene hos adskillige kunder eller organisationer.
Serverløs multilejemål
Serverløs computing er en cloud-tjeneste, der bruger hændelser til at indlæse og køre en kundes kode, før den afviser infrastrukturen, når koden udføres.
Mange programmer kan dele den samme funktion, og funktionen indlæses og fungerer på den delte hardwareinfrastruktur, der er tilgængelig.
Hvad er mulige ulemper?
En af de store ulemper er muligheden for datalæk. Fordi flere lejere deler den samme infrastruktur, kan en sikkerhedsfejl i én lejers applikation bringe alle andre lejeres data i fare.
En anden ulempe er muligheden for støjende nabopåvirkninger, hvor en lejers brugsvaner kan forringe ydeevnen af andre lejeres ansøgninger.
Ændringer og integrationer kan også være vanskelige at implementere, og visse lejere kan kræve særskilte indstillinger eller programversioner, der er inkompatible med andre lejeres.
Endelig er multi-tenancy muligvis ikke passende til mange applikationer, især dem, der kræver høje niveauer af hastighed eller stringent dataadskillelse.
Fremtidige retningslinjer for multi-tenancy i cloud-baseret software
Fremtiden for multi-lejemål ser lys ud, da cloud-baseret software fortsætter med at udvide og tilpasse sig. Serverløs computing, som giver mulighed for mere granuleret ressourceallokering og -forbrug, bliver stadig mere populær.
Dette har potentialet til at forbedre multi-lejemål ved at give mulighed for større isolation og ressourceforbrug. Mikrotjenester og containere, som giver øget fleksibilitet og modularitet, er en anden vej til multi-lejemål.
Maskinlæring og kunstig intelligens-teknologier har desuden potentialet til at optimere ressourceallokering og ydeevne i multi-tenant-systemer.
Endelig vil fremtiden for multi-lejemål i cloud-baseret software ændre sig som følge af teknologiske forbedringer og ændrede forretningskrav.
Giv en kommentar