Creazione, pubblicazione ed eliminazione di raccolte Amazon OpenSearch Serverless - OpenSearch Servizio Amazon

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione, pubblicazione ed eliminazione di raccolte Amazon OpenSearch Serverless

Una raccolta in Amazon OpenSearch Serverless è un raggruppamento logico di uno o più indici che rappresentano un carico di lavoro di analisi. OpenSearch Il servizio gestisce e ottimizza automaticamente la raccolta, richiedendo un input manuale minimo.

Autorizzazioni richieste

OpenSearch Serverless utilizza le seguenti autorizzazioni AWS Identity and Access Management (IAM) per creare e gestire le raccolte. È possibile specificare le condizioni IAM per limitare gli utenti a raccolte specifiche.

  • aoss:CreateCollection: crea una raccolta.

  • aoss:ListCollections: elenca le raccolte nell'account corrente.

  • aoss:BatchGetCollection: ottieni dettagli su una o più raccolte.

  • aoss:UpdateCollection: modifica una raccolta.

  • aoss:DeleteCollection: elimina una raccolta.

La seguente policy di accesso basata sull'identità di esempio fornisce le autorizzazioni minime necessarie a un utente per gestire una singola raccolta denominata Logs:

[ { "Sid":"Allows managing logs collections", "Effect":"Allow", "Action":[ "aoss:CreateCollection", "aoss:ListCollections", "aoss:BatchGetCollection", "aoss:UpdateCollection", "aoss:DeleteCollection", "aoss:CreateAccessPolicy", "aoss:CreateSecurityPolicy" ], "Resource":"*", "Condition":{ "StringEquals":{ "aoss:collection":"Logs" } } } ]

aoss:CreateAccessPolicy e aoss:CreateSecurityPolicy sono inclusi perché le policy di crittografia, rete e accesso ai dati sono necessarie per il corretto funzionamento di una raccolta. Per ulteriori informazioni, consulta Identity and Access Management per Amazon OpenSearch Serverless.

Nota

Se stai creando la prima raccolta nel tuo account, hai bisogno anche dell'autorizzazione iam:CreateServiceLinkedRole. Per ulteriori informazioni, consulta Utilizzo di ruoli collegati ai servizi per creare raccolte Serverless OpenSearch .

Creazione di raccolte

È possibile utilizzare la console o il AWS CLI per creare una raccolta serverless. Questi passaggi spiegano come creare una raccolta di ricerche o di serie temporali. Per creare una raccolta di ricerca vettoriale, vediLavorare con le raccolte di ricerca vettoriale.

Creazione di una raccolta (console)

Creazione di una raccolta tramite la console
  1. Accedi alla console di Amazon OpenSearch Service all'indirizzo https://console.aws.amazon.com/aos/home/.

  2. Espandi Serverless nel pannello di navigazione a sinistra e scegli Collections (Raccolte).

  3. Scegli Create collection (Crea raccolta).

  4. Fornisci un nome e una descrizione per la raccolta. Il nome deve soddisfare i seguenti criteri:

    • È unico per il tuo account e Regione AWS

    • Inizia con una lettera minuscola

    • Contiene da 3 a 32 caratteri

    • Contiene solo lettere minuscole a-z, i numeri da 0 a 9 e i trattini (-)

  5. Scegli un tipo di raccolta:

    • Ricerca: l'opzione della ricerca full-text supporta le applicazioni nelle reti interne e le applicazioni connesse a Internet. Tutti i dati di ricerca vengono memorizzati in un'archiviazione ad accesso frequente per garantire tempi di risposta rapidi alle query.

    • Serie temporali: segmento di analisi dei log che si concentra sull'analisi di grandi volumi di dati semistrutturati generati da macchine. Almeno 24 ore di dati vengono archiviate su indici caldi e il resto rimane in una memoria a caldo.

    • Ricerca vettoriale: ricerca semantica sugli incorporamenti vettoriali che semplifica la gestione dei dati vettoriali. Potenzia le esperienze di ricerca aumentata di machine learning (ML) e le applicazioni di intelligenza artificiale generativa come chatbot, assistenti personali e rilevamento delle frodi.

    Per ulteriori informazioni, consulta Scelta di un tipo di raccolta.

  6. In Tipo di distribuzione, scegli l'impostazione di ridondanza per la tua raccolta. Per impostazione predefinita, ogni raccolta viene creata con ridondanza, il che significa che le unità di OpenSearch calcolo (OCU) di indicizzazione e ricerca hanno ciascuna le proprie repliche in standby in una zona di disponibilità diversa. Per scopi di sviluppo e test, puoi scegliere di disabilitare la ridondanza, in modo da ridurre a due il numero di OCU nella raccolta. Per ulteriori informazioni, consulta Come funziona.

  7. In Crittografia, scegli una AWS KMS chiave con cui crittografare i tuoi dati. OpenSearch Serverless ti avvisa se il nome della raccolta che hai inserito corrisponde a uno schema definito in una politica di crittografia. Puoi scegliere di mantenere tale corrispondenza o di sostituirla con impostazioni di crittografia specifiche. Per ulteriori informazioni, consulta Crittografia in Amazon OpenSearch Serverless.

  8. In Network access settings (Impostazioni di accesso alla rete), configura l'accesso alla rete per la raccolta.

    • Per Tipo di accesso, seleziona pubblico o privato. Quindi, specifica quali endpoint VPC Servizi AWS possono accedere alla raccolta.

    • Per Tipo di risorsa, seleziona se la raccolta sarà accessibile tramite il relativo OpenSearchendpoint (per effettuare chiamate API tramite curl, Postman e così via), tramite l'endpoint OpenSearch Dashboards (per utilizzare le visualizzazioni ed effettuare chiamate API tramite la console) o tramite entrambi.

      Nota

      Servizio AWS l'accesso privato si applica solo all'endpoint, non all' OpenSearchendpoint Dashboards. OpenSearch

    OpenSearch Serverless ti avvisa se il nome della raccolta che hai inserito corrisponde a uno schema definito in una politica di rete. Puoi scegliere di mantenere tale corrispondenza o di sostituirla con impostazioni di rete personalizzate. Per ulteriori informazioni, consulta Accesso alla rete per Amazon OpenSearch Serverless.

  9. (Facoltativo) Aggiungi uno o più tag alla raccolta. Per ulteriori informazioni, consulta la pagina Assegnazione di tag alle raccolte Amazon OpenSearch Serverless.

  10. Seleziona Next (Successivo).

  11. Configura le regole di accesso ai dati per la raccolta che definiscono chi può accedere ai dati all'interno della raccolta. Per ogni regola che crei, completa questi passaggi:

    • Scegli Add principals (Aggiungi principali) e seleziona uno o più ruoli IAM o utenti e gruppi SAML a cui fornire l'accesso ai dati.

    • In Grant permissions (Concedi autorizzazioni), seleziona le autorizzazioni per l'alias, il modello e l'indice da concedere ai principali associati. Per un elenco completo delle autorizzazioni e l'accesso che queste concedono, consulta la sezione Operazioni e autorizzazioni API supportate OpenSearch .

    OpenSearch Serverless ti avvisa se il nome della raccolta che hai inserito corrisponde a uno schema definito in una politica di accesso ai dati. Puoi scegliere di mantenere tale corrispondenza o di sostituirla con impostazioni di accesso ai dati specifiche. Per ulteriori informazioni, consulta la pagina Controllo dell'accesso ai dati per Amazon OpenSearch Serverless.

  12. Seleziona Next (Successivo).

  13. In Data access policy settings (Impostazioni della policy di accesso ai dati), scegli cosa fare con le regole appena create. È possibile utilizzarle per creare una nuova policy di accesso ai dati o aggiungerle a una policy esistente.

  14. Rivedi la configurazione della raccolta e scegli Submit (Invia).

Lo stato della raccolta cambia Creating quando OpenSearch Serverless crea la raccolta.

Creazione di una raccolta (CLI)

Prima di creare una raccolta utilizzando il AWS CLI, è necessario disporre di una politica di crittografia con un modello di risorse che corrisponda al nome previsto della raccolta. Ad esempio, se intendi dare un nome all'applicazione dei log della raccolta, potresti creare una policy di crittografia come questa:

aws opensearchserverless create-security-policy \ --name logs-policy \ --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AWSOwnedKey\":true}"

Se prevedi di utilizzare la policy per raccolte aggiuntive, puoi rendere la regola più ampia, come collection/logs* o collection/*.

Inoltre, è necessario configurare le impostazioni di rete per la raccolta sotto forma di una policy di rete. Utilizzando l'esempio precedente applicazione-log, è possibile creare la seguente policy di rete:

aws opensearchserverless create-security-policy \ --name logs-policy \ --type network --policy "[{\"Description\":\"Public access for logs collection\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/logs-application\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AllowFromPublic\":true}]"
Nota

È possibile creare policy di rete dopo aver creato una raccolta, tuttavia consigliamo di farlo prima.

Per creare una raccolta, invia una CreateCollectionrichiesta:

aws opensearchserverless create-collection --name "logs-application" --type SEARCH --description "A collection for storing log data"

Per type, specifica SEARCH o TIMESERIES. Per ulteriori informazioni, consulta Scelta di un tipo di raccolta.

Risposta di esempio

{ "createCollectionDetail": { "id": "07tjusf2h91cunochc", "name": "books", "description":"A collection for storing log data", "status": "CREATING", "type": "SEARCH", "kmsKeyArn": "auto", "arn": "arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc", "createdDate": 1665952577473 } }

Se non specifichi un tipo di raccolta nella richiesta, il valore predefinito sarà TIMESERIES. Se la tua raccolta è crittografata con una Chiave di proprietà di AWS, la kmsKeyArn è auto anziché un ARN.

Importante

Dopo aver creato una raccolta, non potrai accedervi a meno che non corrisponda a una policy di accesso ai dati. Per istruzioni sulla creazione di policy di accesso ai dati, consulta la sezione Controllo dell'accesso ai dati per Amazon OpenSearch Serverless.

Accesso ai OpenSearch pannelli di controllo

Dopo aver creato una raccolta con AWS Management Console, puoi accedere all'URL delle OpenSearch dashboard della raccolta. Puoi trovare l'URL delle dashboard scegliendo Raccolte nel riquadro di navigazione a sinistra e selezionando la raccolta per aprirne la pagina dei dettagli. L'URL assume il formato https://dashboards.us-east-1.aoss.amazonaws.com/_login/?collectionId=07tjusf2h91cunochc. Una volta che accedi all'URL, accederai automaticamente alle dashboard.

Se hai già l'URL delle OpenSearch dashboard disponibile ma non lo sei AWS Management Console, chiamando l'URL delle dashboard dal browser verrai reindirizzato alla console. Una volta inserite le AWS credenziali, accederai automaticamente a Dashboards. Per informazioni sull'accesso alle raccolte per SAML, consulta Accesso ai OpenSearch dashboard con SAML.

Il timeout della console OpenSearch Dashboards è di un'ora e non è configurabile.

Nota

Il 10 maggio 2023, OpenSearch ha introdotto un endpoint globale comune per Dashboards. OpenSearch Ora puoi accedere alle OpenSearch dashboard nel browser con un URL che assume il formato. https://dashboards.us-east-1.aoss.amazonaws.com/_login/?collectionId=07tjusf2h91cunochc Per garantire la compatibilità con le versioni precedenti, continueremo a supportare gli endpoint OpenSearch Dashboards specifici della raccolta esistenti con il formato. https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com/_dashboards

Visualizzazione delle raccolte

Puoi visualizzare le raccolte esistenti nella tua Account AWS scheda Raccolte della console di Amazon OpenSearch Service.

Per elencare le raccolte insieme ai relativi ID, invia una ListCollectionsrichiesta.

aws opensearchserverless list-collections

Risposta di esempio

{ "collectionSummaries":[ { "arn":"arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc", "id":"07tjusf2h91cunochc", "name":"my-collection", "status":"CREATING" } ] }

Per limitare i risultati della ricerca, utilizza i filtri della raccolta. Questa richiesta filtra la risposta alle raccolte nello stato ACTIVE:

aws opensearchserverless list-collections --collection-filters '{ "status": "ACTIVE" }'

Per ottenere informazioni più dettagliate su una o più raccolte, inclusi l' OpenSearch endpoint e l'endpoint OpenSearch Dashboards, invia una richiesta: BatchGetCollection

aws opensearchserverless batch-get-collection --ids ["07tjusf2h91cunochc", "1iu5usc4rame"]
Nota

Nella richiesta puoi includere --names o --ids, ma non entrambi.

Risposta di esempio

{ "collectionDetails":[ { "id": "07tjusf2h91cunochc", "name": "my-collection", "status": "ACTIVE", "type": "SEARCH", "description": "", "arn": "arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc", "kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "createdDate": 1667446262828, "lastModifiedDate": 1667446300769, "collectionEndpoint": "https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com", "dashboardEndpoint": "https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com/_dashboards" }, { "id": "178ukvtg3i82dvopdid", "name": "another-collection", "status": "ACTIVE", "type": "TIMESERIES", "description": "", "arn": "arn:aws:aoss:us-east-1:123456789012:collection/178ukvtg3i82dvopdid", "kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "createdDate": 1667446262828, "lastModifiedDate": 1667446300769, "collectionEndpoint": "https://178ukvtg3i82dvopdid.us-east-1.aoss.amazonaws.com", "dashboardEndpoint": "https://178ukvtg3i82dvopdid.us-east-1.aoss.amazonaws.com/_dashboards" } ], "collectionErrorDetails":[] }

Eliminazione di raccolte

Eliminando una raccolta vengono eliminati anche tutti i relativi dati e gli indici. Non è possibile recuperare le raccolte dopo averle eliminate.

Per eliminare una raccolta tramite la console
  1. Dal pannello Raccolte della console Amazon OpenSearch Service, seleziona la raccolta che desideri eliminare.

  2. Scegli Elimina e conferma l'eliminazione.

Per eliminare una raccolta utilizzando il AWS CLI, invia una DeleteCollectionrichiesta:

aws opensearchserverless delete-collection --id 07tjusf2h91cunochc

Risposta di esempio

{ "deleteCollectionDetail":{ "id":"07tjusf2h91cunochc", "name":"my-collection", "status":"DELETING" } }