@@ -432,6 +432,43 @@ function InsightsVisual() {
432432 ) ;
433433}
434434
435+ function MultiTenantVisual ( ) {
436+ const tenants = [
437+ { label : "Tenant A" , quota : "5 TB" } ,
438+ { label : "Tenant B" , quota : "2 TB" } ,
439+ { label : "Tenant C" , quota : "500 GB" } ,
440+ ] ;
441+
442+ return (
443+ < IllustrationFrame label = "Operator-managed multi-tenancy" >
444+ < div className = "grid w-full max-w-lg grid-cols-[minmax(0,1fr)_auto_minmax(0,1fr)] items-center gap-3" >
445+ < div className = "grid gap-2" >
446+ { tenants . map ( ( tenant , index ) => (
447+ < Reveal key = { tenant . label } delay = { index * 0.1 } >
448+ < Tile icon = { UsersIcon } label = { tenant . label } detail = { tenant . quota } />
449+ </ Reveal >
450+ ) ) }
451+ </ div >
452+ < div className = "flex flex-col items-center gap-2" >
453+ < DataFlowLine direction = "horizontal" className = "w-8" />
454+ < motion . span
455+ className = "flex size-11 items-center justify-center border border-brand/60 bg-brand/5"
456+ animate = { { boxShadow : [ "0 0 0px transparent" , "0 0 18px var(--color-brand)" , "0 0 0px transparent" ] } }
457+ transition = { { duration : 2.2 , repeat : Infinity } }
458+ >
459+ < BlocksIcon className = "size-5 text-brand" />
460+ </ motion . span >
461+ < span className = "font-mono text-[7px] uppercase tracking-[0.12em] text-brand" > Operator</ span >
462+ </ div >
463+ < div className = "grid gap-2" >
464+ < Tile icon = { DatabaseIcon } label = "Pool 01" detail = "auto-scaling" accent />
465+ < Tile icon = { ServerIcon } label = "Pool 02" detail = "MNMD cluster" />
466+ </ div >
467+ </ div >
468+ </ IllustrationFrame >
469+ ) ;
470+ }
471+
435472function CliVisual ( ) {
436473 return (
437474 < IllustrationFrame label = "rc client" >
@@ -615,7 +652,13 @@ const illustrations: Record<ProductIllustrationVariant, ((props: { sectionIndex:
615652 return visuals [ sectionIndex ] ?? visuals [ 0 ] ;
616653 } ,
617654 ops : ( { sectionIndex } ) => {
618- const visuals = [ < ConsoleVisual key = "console" /> , < OtelVisual key = "otel" /> , < InsightsVisual key = "insights" /> , < CliVisual key = "cli" /> ] ;
655+ const visuals = [
656+ < MultiTenantVisual key = "multi-tenant" /> ,
657+ < ConsoleVisual key = "console" /> ,
658+ < OtelVisual key = "otel" /> ,
659+ < InsightsVisual key = "insights" /> ,
660+ < CliVisual key = "cli" /> ,
661+ ] ;
619662 return visuals [ sectionIndex ] ?? visuals [ 0 ] ;
620663 } ,
621664 security : ( { sectionIndex } ) => {
0 commit comments