Checklista för att utforma och skapa lösningar för flera klientorganisationer i Azure
När du skapar din lösning för flera klientorganisationer i Azure finns det många element som du behöver tänka på. Använd den här checklistan som utgångspunkt för att utforma och skapa en lösning för flera klientorganisationer. Den här checklistan är en kompletterande resurs till arkitekturlösningar för flera klientorganisationer i Azure-serien med artiklar. Checklistan är strukturerad kring affärsrelaterade och tekniska överväganden och de fem grundpelarna i Azure Well-Architected Framework.
Dricks
När du har gått igenom den här checklistan kan du göra En Granskning av SaaS-resan för att utvärdera din SaaS-produkt genom att analysera din förståelse för arkitektur för flera klientorganisationer och dess anpassning till metodtips för SaaS-åtgärder.
Affärsöverväganden
- Förstå vilken typ av lösning du skapar, till exempel B2B (business-to-business), B2C (Business-to-Consumer) eller företagets programvara, och hur klientorganisationer skiljer sig från användare.
- Definiera dina klienter. Förstå hur många klienter du kommer att stödja från början och dina tillväxtplaner.
- Definiera din prismodell och se till att den överensstämmer med klientorganisationens förbrukning av Azure-resurser.
- Förstå om du behöver dela upp dina klienter i olika nivåer. Nivåerna kan ha olika priser, funktioner, prestandalöften, geografiska platser och så vidare.
- Baserat på kundernas krav kan du bestämma vilka innehavarmodeller som är lämpliga för olika delar av din lösning.
- När du är klar kan du sälja din B2B-lösning för flera klientorganisationer med hjälp av Microsoft Commercial Marketplace.
Tillförlitlighetsöverväganden
- Gå igenom checklistan för Azure Well-Architected Reliability, som gäller för alla arbetsbelastningar.
- Förstå antimönstret Noisy Neighbor. Förhindra att enskilda klienter påverkar systemets tillgänglighet för andra klienter.
- Utforma din lösning för flera klientorganisationer för den tillväxtnivå som du förväntar dig. Men överdriv inte för orealistisk tillväxt.
- Definiera servicenivåmål (SLO) och eventuellt serviceavtal (SLA) för din lösning. Serviceavtal och serviceavtal bör baseras på kraven för dina klienter.
- Testa lösningens skala. Se till att den fungerar bra under alla belastningsnivåer och att den skalas korrekt när antalet klienter ökar.
- Tillämpa kaostekniska principer för att testa lösningens tillförlitlighet.
Säkerhetsfrågor
- Tillämpa principerna för Nulta pouzdanost och lägsta behörighet i alla lager i din lösning.
- Se till att du kan mappa användarbegäranden korrekt till klientorganisationer. Överväg att inkludera klientkontexten som en del av identitetssystemet, eller genom att använda ett annat sätt, till exempel klientauktorisering på programnivå.
- Design för klientisolering. Testa isoleringsmodellen kontinuerligt.
- Se till att programkoden förhindrar åtkomst mellan klientorganisationer eller dataläckage.
- Utför pågående intrångstester och säkerhetskodgranskningar.
- Förstå dina klientorganisationers efterlevnadskrav, inklusive datahemvist och eventuella efterlevnads- eller regelstandarder som de kräver att du uppfyller.
- Hantera domännamn korrekt och undvik sårbarheter som dangling DNS- och underdomänövertagandeattacker.
- Följ tjänstspecifika riktlinjer för flera klientorganisationer.
Överväganden för kostnadsoptimering
- Granska checklistan för azure-välarkitekterad kostnadsoptimering, som gäller för alla arbetsbelastningar.
- Se till att du kan mäta förbrukningen per klientorganisation och korrelera den med dina infrastrukturkostnader.
- Undvik antimönster. Antimönster omfattar att inte spåra kostnader, spåra kostnader med onödig precision, realtidsmätning och att använda övervakningsverktyg för fakturering.
Överväganden för driftskvalitet
- Använd automatisering för att hantera klientorganisationens livscykel, till exempel registrering, distribution, etablering och konfiguration.
- Förstå skillnaderna mellan kontrollplan och dataplan i multitenantlösningen.
- Hitta rätt balans för att distribuera tjänstuppdateringar. Överväg både klientorganisationens krav och dina egna driftskrav.
- Övervaka hälsotillståndet för det övergripande systemet samt varje klientorganisation.
- Konfigurera och testa aviseringar för att meddela dig när specifika klienter har problem eller överskrider sina förbrukningsgränser.
- Organisera dina Azure-resurser för isolering och skalning.
- Undvik distributions- och konfigurationsantimönster. Antimönster omfattar att köra separata versioner av lösningen för varje klientorganisation, hårdkoda klientspecifika konfigurationer eller logik och manuella distributioner.
Överväganden för prestandaeffektivitet
- Gå igenom checklistan för Azure Well-Architected Performance Efficiency, som gäller för alla arbetsbelastningar.
- Om du använder delad infrastruktur ska du planera för hur du ska åtgärda problem med bullriga grannar . Se till att en klientorganisation inte kan minska systemets prestanda för andra klienter.
- Bestäm hur du skalar dina beräknings-, lagrings-, nätverksresurser och andra Azure-resurser för att matcha kraven från dina klienter.
- Överväg varje Azure-resurss skalningsgränser. Organisera dina resurser på rätt sätt för att undvika resursorganisationens antimönster. Överkonstruera till exempel inte din lösning för att arbeta med orealistiska skalningskrav.
Deltagare
Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.
Huvudsakliga författare:
- Arsen Vladimirskiy | Huvudkundtekniker
- Bohdan Cherchyk | Senior kundtekniker
Annan deltagare:
- John Downs | Huvudprogramtekniker
Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.
Nästa steg
- Granska arkitekturöverväganden för lösningar med flera klienter.
- Granska arkitekturmetoder för flera klientorganisationer.
- Granska tjänstspecifik vägledning för flera klientorganisationer.
- Granska ytterligare resurser för arkitekter och utvecklare av lösningar för flera klientorganisationer.