Dies ist ein Gast-Blogbeitrag, der gemeinsam mit Zack Rossman von Alcion verfasst wurde.
Alcion, eine sicherheitsorientierte, KI-gesteuerte Backup-as-a-Service (BaaS)-Plattform, hilft Microsoft 365-Administratoren, Daten schnell und intuitiv vor Cyber-Bedrohungen und versehentlichem Datenverlust zu schützen. Im Falle eines Datenverlusts müssen Alcion-Kunden Metadaten für die gesicherten Elemente (Dateien, E-Mails, Kontakte, Ereignisse usw.) durchsuchen, um bestimmte Elementversionen für die Wiederherstellung auszuwählen. Alcion verwendet Amazon OpenSearch-Dienst um ihren Kunden eine genaue, effiziente und zuverlässige Suchfunktion für diesen Backup-Katalog zu bieten. Die Plattform ist mandantenfähig, was bedeutet, dass Alcion Datenisolierung und starke Sicherheit benötigt, um sicherzustellen, dass Mieter nur ihre eigenen Daten durchsuchen können.
OpenSearch Service ist ein vollständig verwalteter Dienst, der die Bereitstellung, Skalierung und den Betrieb von OpenSearch in der AWS Cloud vereinfacht. OpenSearch ist eine von Apache 2.0 lizenzierte Open-Source-Such- und Analysesuite, die OpenSearch (eine Such-, Analyse-Engine und Vektordatenbank), OpenSearch Dashboards (eine Visualisierungs- und Dienstprogramm-Benutzeroberfläche) und Plugins umfasst, die erweiterte Funktionen wie Enterprise bieten Hochwertige Sicherheit, Anomalieerkennung, Beobachtbarkeit, Alarmierung und vieles mehr. Amazon OpenSearch ohne Server ist eine serverlose Bereitstellungsoption, die die Verwendung von OpenSearch vereinfacht, ohne dass OpenSearch-Service-Domänen konfiguriert, verwaltet und skaliert werden müssen.
In diesem Beitrag teilen wir mit, wie Alcion durch die Einführung von OpenSearch Serverless seine Skalierungsanforderungen erfüllen, den Betriebsaufwand reduzieren und die Daten seiner Mandanten durch Durchsetzung schützen konnte Isolation der Mieter innerhalb ihrer mandantenfähigen Umgebung.
Von OpenSearch Service verwaltete Domänen
Für die erste Iteration seiner Sucharchitektur entschied sich Alcion für die Bereitstellungsoption für verwaltete Domänen im OpenSearch Service und konnte seine Suchfunktion in weniger als einem Monat in der Produktion starten. Um ihre Sicherheits-, Skalierungs- und Mieteranforderungen zu erfüllen, speicherten sie Daten für jeden Mieter in einem dedizierten Index und nutzten sie differenzierte Zugangskontrolle im OpenSearch Service, um mandantenübergreifende Datenlecks zu verhindern. Während sich ihre Arbeitsbelastung weiterentwickelte, verfolgten die Alcion-Ingenieure die Nutzung der OpenSearch-Domäne über die bereitgestellten Tools Amazon CloudWatch Metriken und nehmen Änderungen vor, um den Speicher zu vergrößern und ihre Rechenressourcen zu optimieren.
Das Team von Alcion nutzte mehrere Funktionen der vom OpenSearch Service verwalteten Domänen, um ihre Betriebsabläufe zu verbessern. Sie führten Index-Aliase ein, die einen einzigen Aliasnamen für den Zugriff (Lesen und Schreiben) auf mehrere zugrunde liegende Indizes bereitstellen. Sie haben auch konfiguriert Indexstatusverwaltung (ISM)-Richtlinien, die ihnen helfen, ihren Datenlebenszyklus zu kontrollieren, indem Indizes basierend auf der Indexgröße aktualisiert werden. Zusammen waren die ISM-Richtlinien und Index-Aliase erforderlich, um Indizes für große Mandanten zu skalieren. Alcion wurde auch verwendet Indexvorlagen die Shards pro Index (Partitionierung) ihrer Daten zu definieren, um ihren Datenlebenszyklus zu automatisieren und die Leistung und Stabilität ihrer Domänen zu verbessern.
Das folgende Architekturdiagramm zeigt, wie Alcion seine von OpenSearch verwalteten Domänen konfiguriert hat.
Das folgende Diagramm zeigt, wie Microsoft 365-Daten in mandantenspezifischen Indizes indiziert und von diesen abgefragt wurden. Alcion implementierte die Anforderungsauthentifizierung, indem es bei jeder API-Anfrage die Anmeldeinformationen des primären OpenSearch-Benutzers bereitstellte.
Überblick über OpenSearch Serverless und Optionen für Mandantenmodelle
Von OpenSearch Service verwaltete Domänen stellten eine stabile Grundlage für die Suchfunktionalität von Alcion dar, das Team musste den Domänen jedoch manuell Ressourcen für die Spitzenauslastung bereitstellen. Dies ließ Spielraum für Kostenoptimierungen, da die Arbeitslast von Alcion sehr hoch ist – es gibt große Unterschiede in der Anzahl der Such- und Indexierungstransaktionen pro Sekunde, sowohl für einen einzelnen Kunden als auch insgesamt. Um Kosten und Betriebsaufwand zu reduzieren, entschied sich das Team für OpenSearch Serverless, das automatische Skalierungsfunktionen bietet.
Um OpenSearch Serverless zu verwenden, besteht der erste Schritt darin, eine Sammlung zu erstellen. A Sammlung ist eine Gruppe von OpenSearch-Indizes, die zusammenarbeiten, um eine bestimmte Arbeitslast oder einen bestimmten Anwendungsfall zu unterstützen. Die Rechenressourcen für eine Sammlung, sogenannte OpenSearch Compute Units (OCUs), werden von allen Sammlungen in einem Konto gemeinsam genutzt, die einen gemeinsamen Verschlüsselungsschlüssel haben. Der OCU-Pool wird automatisch vergrößert und verkleinert, um den Anforderungen der Indexierung und des Suchverkehrs gerecht zu werden.
Der Aufwand für die Migration von einer von OpenSearch Service verwalteten Domäne zu OpenSearch Serverless war überschaubar, da OpenSearch Serverless-Sammlungen dieselben OpenSearch-APIs und -Bibliotheken unterstützen wie von OpenSearch Service verwaltete Domänen. Dadurch konnte sich Alcion auf die Optimierung des Mietmodells für die neue Sucharchitektur konzentrieren. Konkret musste das Team entscheiden, wie Mandantendaten innerhalb von Sammlungen und Indizes aufgeteilt werden sollen und gleichzeitig Sicherheit und Gesamtbetriebskosten in Einklang gebracht werden sollen. Alcion-Ingenieure haben in Zusammenarbeit mit dem OpenSearch Serverless-Team drei Mietmodelle berücksichtigt:
- Silomodell: Erstellen Sie eine Sammlung für jeden Mandanten
- Poolmodell: Erstellen Sie eine einzelne Sammlung und verwenden Sie einen einzelnen Index für mehrere Mandanten
- Brückenmodell: Erstellen Sie eine einzelne Sammlung und verwenden Sie einen einzelnen Index pro Mandant
Alle drei Designoptionen hatten Vorteile und Kompromisse, die bei der Gestaltung der endgültigen Lösung berücksichtigt werden mussten.
Silomodell: Erstellen Sie eine Sammlung für jeden Mandanten
Bei diesem Modell würde Alcion jedes Mal eine neue Kollektion erstellen, wenn ein neuer Kunde auf seiner Plattform an Bord kommt. Obwohl die Mieterdaten sauber zwischen den Sammlungen getrennt würden, wurde diese Option ausgeschlossen, da Kunden aufgrund der Erstellungszeit der Sammlung nicht in der Lage waren, die Daten sofort nach der Registrierung zu sichern und zu durchsuchen.
Poolmodell: Erstellen Sie eine einzelne Sammlung und verwenden Sie einen einzelnen Index für mehrere Mandanten
In diesem Modell würde Alcion eine einzelne Sammlung pro AWS-Konto erstellen und mandantenspezifische Daten in einem von vielen gemeinsamen Indizes indizieren, die zu dieser Sammlung gehören. Ursprünglich war das Zusammenfassen von Mandantendaten in gemeinsamen Indizes aus skalierungstechnischer Sicht attraktiv, da dies zu einer möglichst effizienten Nutzung der Indexressourcen führte. Nach einer weiteren Analyse stellte Alcion jedoch fest, dass sie die Indexquote pro Sammlung auch dann deutlich einhalten würden, wenn sie jedem Mieter einen Index zuweisen würden. Nachdem dieses Skalierbarkeitsproblem ausgeräumt war, verfolgte Alcion die dritte Option, da die Isolierung von Mandantendaten in dedizierten Indizes zu einer stärkeren Mandantenisolation führt als das Modell mit gemeinsam genutzten Indexen.
Brückenmodell: Erstellen Sie eine einzelne Sammlung und verwenden Sie einen einzelnen Index pro Mandant
In diesem Modell würde Alcion eine einzelne Sammlung pro AWS-Konto erstellen und einen Index für jeden der Hunderten von Mandanten erstellen, die von diesem Konto verwaltet werden. Durch die Zuweisung jedes Mandanten zu einem dedizierten Index und die Zusammenfassung dieser Indizes in einer einzigen Sammlung konnte Alcion die Onboarding-Zeit für neue Mandanten reduzieren und Mandantendaten in sauber getrennten Buckets speichern.
Implementierung einer rollenbasierten Zugriffskontrolle zur Unterstützung der Mandantenfähigkeit
OpenSearch Serverless bietet einen mehrpunktigen, vererbbaren Satz von Sicherheitskontrollen, die Datenzugriff, Netzwerkzugriff und Verschlüsselung abdecken. Alcion nutzte die Vorteile von OpenSearch Serverless voll aus Datenzugriffsrichtlinien um eine rollenbasierte Zugriffskontrolle (RBAC) für jeden mandantenspezifischen Index mit den folgenden Details zu implementieren:
- Ordnen Sie einen Index mit einem gemeinsamen Präfix und der Mandanten-ID zu (z. B.
index-v1-<tenantID>
) - Erstellen Sie eine dedizierte AWS Identity and Access Management and (IAM)-Rolle, die zum Signieren von Anforderungen an die OpenSearch Serverless-Sammlung verwendet wird
- Erstellen Sie eine OpenSearch Serverless-Datenzugriffsrichtlinie, die der IAM-Rolle für diesen Mandanten Lese-/Schreibberechtigungen für Dokumente innerhalb eines dedizierten Mandantenindex gewährt
- OpenSearch-API-Anfragen an einen Mandantenindex werden mit temporären Anmeldeinformationen signiert, die zur mandantenspezifischen IAM-Rolle gehören
Im Folgenden finden Sie ein Beispiel für eine OpenSearch Serverless-Datenzugriffsrichtlinie für einen Scheinmandanten mit ID t-eca0acc1-12345678910
. Diese Richtlinie gewährt dem IAM-Rollendokument Lese-/Schreibzugriff auf den dedizierten Mandantenzugriff.
Das folgende Architekturdiagramm zeigt, wie Alcion die Indizierung und Suche nach Microsoft 365-Ressourcen mithilfe des OpenSearch Serverless Shared Collection-Ansatzes implementiert hat.
Im Folgenden finden Sie den Beispielcodeausschnitt zum Senden einer API-Anfrage an eine OpenSearch Serverless-Sammlung. Beachten Sie, wie der API-Client mit einem Unterzeichnerobjekt initialisiert wird, das Anforderungen mit demselben IAM-Prinzip signiert, der mit der OpenSearch Serverless-Datenzugriffsrichtlinie aus dem vorherigen Codeausschnitt verknüpft ist.
Zusammenfassung
Im Mai 2023 führte Alcion seine Sucharchitektur basierend auf der gemeinsamen Sammlung und dem dedizierten Index-pro-Mandanten-Modell in allen Produktions- und Vorproduktionsumgebungen ein. Das Team war in der Lage, komplexe Code- und Betriebsprozesse herauszulösen, die der Skalierung der von OpenSearch Service verwalteten Domänen gewidmet waren. Darüber hinaus hat Alcion dank der automatischen Skalierungsfunktionen von OpenSearch Serverless seine OpenSearch-Kosten um 30 % gesenkt und erwartet eine günstige Skalierung des Kostenprofils.
Auf dem Weg vom verwalteten zum serverlosen OpenSearch Service profitierte Alcion von der anfänglichen Wahl der verwalteten OpenSearch Service-Domänen. Bei der Migration konnten sie dieselben OpenSearch-APIs und -Bibliotheken für ihre OpenSearch Serverless-Sammlungen wiederverwenden, die sie für ihre vom OpenSearch Service verwaltete Domäne verwendet hatten. Darüber hinaus haben sie ihr Mandantenmodell aktualisiert, um die Vorteile der OpenSearch Serverless-Datenzugriffsrichtlinien zu nutzen. Mit OpenSearch Serverless konnten sie sich mühelos an die Größenanforderungen ihrer Kunden anpassen und gleichzeitig die Isolation der Mandanten gewährleisten.
Weitere Informationen zu Alcion finden Sie hier Website .
Über die Autoren
Zack Rossman ist technischer Mitarbeiter bei Alcion. Er ist der technische Leiter für die Such- und KI-Plattformen. Vor Alcion war Zack Senior Software Engineer bei Okta und entwickelte Kernprodukte für die Identitäts- und Zugriffsverwaltung der Belegschaft für das Directories-Team.
Niraj Jetly ist Software Development Manager für Amazon OpenSearch Serverless. Niraj leitet mehrere Data-Plane-Teams, die für die Einführung von Amazon OpenSearch Serverless verantwortlich sind. Vor seiner Zeit bei AWS leitete Niraj über 15 Jahre lang mehrere Produkt- und Engineering-Teams als CTO, VP of Engineering und Head of Product Management. Niraj erhielt über 15 Innovationspreise, darunter die Ernennung zum CIO des Jahres 2014 und die Auszeichnung als Top-100-CIO 2013 und 2016. Als häufiger Redner auf mehreren Konferenzen wurde er in NPR, WSJ und The Boston Globe zitiert.
Jon Handler ist Senior Principal Solutions Architect bei Amazon Web Services mit Sitz in Palo Alto, Kalifornien. Jon arbeitet eng mit OpenSearch und Amazon OpenSearch Service zusammen und bietet Hilfe und Anleitung für eine breite Palette von Kunden, die Such- und Protokollanalyse-Workloads haben, die sie in die AWS Cloud verlagern möchten. Bevor er zu AWS kam, war Jon in seiner Karriere als Softwareentwickler vier Jahre lang mit der Programmierung einer großen E-Commerce-Suchmaschine beschäftigt. Jon hat einen Bachelor of the Arts von der University of Pennsylvania sowie einen Master of Science und einen Ph.D. in Informatik und Künstlicher Intelligenz von der Northwestern University.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- PlatoData.Network Vertikale generative KI. Motiviere dich selbst. Hier zugreifen.
- PlatoAiStream. Web3-Intelligenz. Wissen verstärkt. Hier zugreifen.
- PlatoESG. Automobil / Elektrofahrzeuge, Kohlenstoff, CleanTech, Energie, Umwelt, Solar, Abfallwirtschaft. Hier zugreifen.
- BlockOffsets. Modernisierung des Eigentums an Umweltkompensationen. Hier zugreifen.
- Quelle: https://aws.amazon.com/blogs/big-data/alcion-supports-their-multi-tenant-platform-with-amazon-opensearch-serverless/
- :hast
- :Ist
- $UP
- 10
- 100
- 15 Jahre
- 15%
- 16
- 2013
- 2014
- 2016
- 2023
- a
- Fähig
- Über Uns
- Zugang
- Konto
- genau
- über
- automatisch
- zusätzlich
- Adressen
- Administratoren
- Die Annahme
- advanced
- Vorteil
- Nach der
- AI
- Alle
- zugeordnet
- erlauben
- erlaubt
- ebenfalls
- Obwohl
- Amazon
- Amazon Web Services
- an
- Analyse
- Analytik
- und
- Anomalieerkennung
- Bienen
- APIs
- Ansatz
- Architektur
- SIND
- künstlich
- künstliche Intelligenz
- Kunst
- AS
- At
- attraktiv
- Authentifizierung
- Auto
- automatisieren
- Im Prinzip so, wie Sie es von Google Maps kennen.
- Auszeichnungen
- AWS
- BaaS
- Zurück
- Sicherungskopie
- Balancing
- basierend
- BE
- weil
- war
- Sein
- Vorteile
- zwischen
- Blog
- Körper
- Boston
- beide
- breit
- Last
- aber
- by
- CA
- namens
- CAN
- Fähigkeiten
- capability
- Karriere
- Häuser
- Katalog
- Änderungen
- Wahl
- Entscheidungen
- wählten
- CIO
- Auftraggeber
- eng
- Cloud
- Code
- Programmierung
- Zusammenarbeit
- Sammlung
- Produktauswahl
- gemeinsam
- Komplex
- umfassend
- Berechnen
- Computer
- Computerwissenschaften
- Hautpflegeprobleme
- Kongressbegleitung
- konfiguriert
- betrachtet
- Kontakte
- Kontext
- Smartgeräte App
- Steuerung
- Kernbereich
- Kosten
- Kosten
- Abdeckung
- erstellen
- Erstellen
- Schaffung
- Referenzen
- CTO
- Kunde
- Kunden
- Cyber-
- Dashboards
- technische Daten
- Datenzugriff
- Data Loss
- Datenbase
- entscheidet
- gewidmet
- Standard
- Anforderungen
- einsetzen
- Einsatz
- Beschreibung
- Design
- Entwerfen
- Details
- Entdeckung
- Entwickler:in / Unternehmen
- Entwicklung
- Entwicklung
- Verzeichnisse
- Dokument
- Unterlagen
- Domain
- Domains
- nach unten
- jeder
- Einfache
- E-EINKAUF
- effizient
- Anstrengung
- E-Mails
- freigegeben
- Verschlüsselung
- Durchsetzung
- Motor
- Ingenieur
- Entwicklung
- Ingenieure
- gewährleisten
- Gewährleistung
- Unternehmensqualität
- Arbeitsumfeld
- Umgebungen
- Fehler
- Fehler
- Äther (ETH)
- Sogar
- Event
- Veranstaltungen
- entwickelt
- Beispiel
- erwartet
- Tatsache
- Eigenschaften
- Mappen
- Finale
- Vorname
- Setzen Sie mit Achtsamkeit
- Folgende
- Aussichten für
- vorwärts
- gefunden
- Foundation
- häufig
- für
- voller
- voll
- Funktionalität
- weiter
- Außerdem
- bekommen
- GitHub
- Globus
- für Balkonkraftwerke Reduzierung
- Gruppe an
- GUEST
- Gastblog
- die Vermittlung von Kompetenzen,
- hätten
- Haben
- he
- ganzer
- Hilfe
- hilft
- hält
- Ultraschall
- Hilfe
- HTML
- http
- HTTPS
- hunderte
- IAM
- ID
- Identitätsschutz
- Identitäts- und Zugriffsverwaltung
- if
- sofort
- implementieren
- umgesetzt
- importieren
- zu unterstützen,
- in
- inklusive
- Einschließlich
- Erhöhung
- Index
- indiziert
- Indizes
- Information
- Anfangs-
- anfänglich
- Innovation
- Innovationspreise
- Intelligenz
- Schnittstelle
- in
- eingeführt
- Isolierung
- IT
- Artikel
- Iteration
- SEINE
- Beitritt
- jon
- Reise
- jpg
- JSON
- Wesentliche
- grosse
- großflächig
- starten
- Start
- führen
- umwandeln
- Undichtigkeiten
- geführt
- links
- weniger
- Niveau
- Bibliotheken
- Lebenszyklus
- Gefällt mir
- verknüpft
- Laden
- Log
- Verlust
- MACHT
- Making
- verwaltet
- Management
- Manager
- flächendeckende Gesundheitsprogramme
- manuell
- viele
- Master
- Spiel
- Kann..
- Mittel
- gemeint
- Triff
- Mitglied
- Metadaten
- Metrik
- Microsoft
- Microsoft 365
- migriert
- Migration
- Modell
- Monat
- mehr
- vor allem warme
- schlauer bewegen
- viel
- mehrere
- Name
- Namens
- notwendig,
- Need
- erforderlich
- Bedürfnisse
- Netzwerk
- Netzwerkzugang
- Neu
- Northwestern University
- Notiz..
- Anzahl
- Objekt
- of
- Angebote
- OKTA
- on
- Einsteigen
- EINEM
- einzige
- Open-Source-
- betreiben
- Betriebs-
- Optimieren
- Optimierung
- Option
- or
- Uns
- übrig
- Überblick
- besitzen
- Eigentum
- Seite
- Palo Alto
- Haupt
- Pennsylvania
- für
- Leistung
- Erlaubnis
- Berechtigungen
- Perspektive
- Plattform
- Plattformen
- Plato
- Datenintelligenz von Plato
- PlatoData
- Plugins
- Politik durchzulesen
- Datenschutzrichtlinien
- Pool
- Post
- verhindern
- früher
- primär
- Principal
- Vor
- anpassen
- Produkt
- Produktmanagement
- Produktion
- Produkte
- Profil
- Risiken zu minimieren
- die
- vorausgesetzt
- Versorger
- Bereitstellung
- Bereitstellung
- schnell
- Angebot
- Lesen Sie mehr
- Leser
- Veteran
- Reduziert
- Registrierung:
- zuverlässig
- Anforderung
- Zugriffe
- falls angefordert
- Voraussetzungen:
- erfordert
- entschlossen
- Ressourcen
- Downloads
- Antwort
- für ihren Verlust verantwortlich.
- wiederherstellen
- Die Ergebnisse
- Rückkehr
- Wiederverwendung
- Rollen
- Gerollt
- Wenden
- Zimmer
- Ohne eine erfahrene Medienplanung zur Festlegung von Regeln und Strategien beschleunigt der programmatische Medieneinkauf einfach die Rate der verschwenderischen Ausgaben.
- gleich
- Skalierbarkeit
- Skalieren
- Skalierung
- Wissenschaft
- Umfang
- Suche
- Suchmaschine
- Suche
- Zweite
- Verbindung
- Sicherheitdienst
- Sendung
- Senior
- Serverlos
- Lösungen
- kompensieren
- mehrere
- Teilen
- von Locals geführtes
- Konzerte
- Schild
- unterzeichnet
- Schilder
- Einfacher
- Single
- Größe
- Schnipsel
- So
- Software
- Software-Entwicklung
- Software IngenieurIn
- Lösung
- Lösungen
- Speaker
- spezifisch
- speziell
- Stabilität
- stabil
- Unser Team
- Bundesstaat
- Schritt
- Lagerung
- gelagert
- Schnur
- stark
- stärker
- Suite
- Support
- Unterstützung
- Unterstützt
- Nehmen
- gemacht
- Team
- Teams
- Tech
- Technische
- vorübergehend
- Mieter
- als
- dank
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- ihr
- Sie
- Diese
- vom Nutzer definierten
- Dritte
- fehlen uns die Worte.
- Bedrohungen
- nach drei
- Zeit
- zu
- gemeinsam
- nahm
- Top
- Gesamt
- der Verkehr
- Transaktionen
- Transaktionen pro Sekunde
- Turned
- zugrunde liegen,
- Bereiche
- Universität
- University of Pennsylvania
- aktualisiert
- -
- Anwendungsfall
- benutzt
- Mitglied
- Benutzerschnittstelle
- verwendet
- Verwendung von
- Nutzen
- Werte
- Besuchen Sie
- Visualisierung
- vp
- wollen
- wurde
- we
- Netz
- Web-Services
- GUT
- waren
- sobald
- welche
- während
- WHO
- ganze
- mit
- .
- ohne
- Arbeiten
- zusammenarbeiten
- Belegschaft
- Werk
- würde
- schreiben
- WSJ
- Jahr
- Jahr
- Zephyrnet