Configurare gli account e le connessioni del tenant
La configurazione di StorageGRID per accettare connessioni da applicazioni client richiede la creazione di uno o più account tenant e la configurazione delle connessioni.
Creare e configurare account tenant S3
È necessario un account tenant S3 prima che i client API S3 possano memorizzare e recuperare oggetti su StorageGRID. Ogni account tenant dispone di un proprio ID account, di gruppi e utenti, nonché di container e oggetti.
Gli account del tenant S3 vengono creati da un amministratore del grid StorageGRID utilizzando l'API Gestione griglia o Gestione griglia. Quando si crea un account tenant S3, l'amministratore della griglia specifica le seguenti informazioni:
-
Nome visualizzato per il tenant (l'ID account del tenant viene assegnato automaticamente e non può essere modificato).
-
Se l'account tenant è autorizzato a utilizzare i servizi della piattaforma. Se è consentito l'utilizzo dei servizi della piattaforma, la griglia deve essere configurata per supportarne l'utilizzo.
-
Facoltativamente, una quota di storage per l'account tenant, ovvero il numero massimo di gigabyte, terabyte o petabyte disponibili per gli oggetti del tenant. La quota di storage di un tenant rappresenta una quantità logica (dimensione dell'oggetto), non una quantità fisica (dimensione sul disco).
-
Se la federazione delle identità è attivata per il sistema StorageGRID, il gruppo federato dispone dell'autorizzazione di accesso root per configurare l'account tenant.
-
Se l'SSO (Single Sign-on) non è in uso per il sistema StorageGRID, se l'account tenant utilizzerà la propria origine di identità o condividerà l'origine di identità della griglia e la password iniziale per l'utente root locale del tenant.
Una volta creato un account tenant S3, gli utenti tenant possono accedere a tenant Manager per eseguire attività come le seguenti:
-
Impostare la federazione delle identità (a meno che l'origine delle identità non sia condivisa con la griglia) e creare gruppi e utenti locali
-
Gestire le chiavi di accesso S3
-
Crea e gestisci i bucket S3, inclusi i bucket che hanno attivato il blocco oggetti S3
-
Utilizzo dei servizi della piattaforma (se abilitati)
-
Monitorare l'utilizzo dello storage
Gli utenti del tenant S3 possono creare e gestire i bucket S3 con Tenant Manager, ma devono disporre di chiavi di accesso S3 e utilizzare l'API REST S3 per acquisire e gestire gli oggetti. |
Come configurare le connessioni client
Un amministratore di grid effettua scelte di configurazione che influiscono sul modo in cui i client S3 si connettono a StorageGRID per memorizzare e recuperare i dati. Le informazioni specifiche necessarie per effettuare una connessione dipendono dalla configurazione scelta.
Le applicazioni client possono memorizzare o recuperare oggetti connettendosi a una delle seguenti opzioni:
-
Il servizio Load Balancer sui nodi Admin o Gateway o, facoltativamente, l'indirizzo IP virtuale di un gruppo ad alta disponibilità (ha) di nodi Admin o nodi Gateway
-
Il servizio CLB sui nodi gateway o, facoltativamente, l'indirizzo IP virtuale di un gruppo ad alta disponibilità di nodi gateway
Il servizio CLB è obsoleto. I client configurati prima della release StorageGRID 11.3 possono continuare a utilizzare il servizio CLB sui nodi gateway. Tutte le altre applicazioni client che dipendono da StorageGRID per fornire il bilanciamento del carico devono connettersi utilizzando il servizio bilanciamento del carico. -
Nodi di storage, con o senza bilanciamento del carico esterno
Durante la configurazione di StorageGRID, un amministratore della griglia può utilizzare il gestore della griglia o l'API di gestione della griglia per eseguire le seguenti operazioni, tutte facoltative:
-
Configurare gli endpoint per il servizio Load Balancer.
È necessario configurare gli endpoint per utilizzare il servizio Load Balancer. Il servizio Load Balancer sui nodi di amministrazione o gateway distribuisce le connessioni di rete in entrata dalle applicazioni client ai nodi di storage. Quando si crea un endpoint di bilanciamento del carico, l'amministratore di StorageGRID specifica un numero di porta, se l'endpoint accetta connessioni HTTP o HTTPS, il tipo di client (S3 o Swift) che utilizzerà l'endpoint e il certificato da utilizzare per le connessioni HTTPS (se applicabile).
-
Configurare reti client non attendibili.
Se un amministratore di StorageGRID configura una rete client di un nodo come non attendibile, il nodo accetta solo connessioni in entrata sulla rete client su porte esplicitamente configurate come endpoint del bilanciamento del carico.
-
Configurare i gruppi ad alta disponibilità.
Se un amministratore crea un gruppo ha, le interfacce di rete di più nodi Admin o nodi Gateway vengono inserite in una configurazione di backup attivo. Le connessioni client vengono effettuate utilizzando l'indirizzo IP virtuale del gruppo ha.
Per ulteriori informazioni su ciascuna opzione, consultare le istruzioni per l'amministrazione di StorageGRID.
Riepilogo: Indirizzi IP e porte per le connessioni client
Le applicazioni client si connettono a StorageGRID utilizzando l'indirizzo IP di un nodo Grid e il numero di porta di un servizio su tale nodo. Se sono configurati gruppi ad alta disponibilità (ha), le applicazioni client possono connettersi utilizzando l'indirizzo IP virtuale del gruppo ha.
Informazioni necessarie per stabilire connessioni client
La tabella riassume i diversi modi in cui i client possono connettersi a StorageGRID e gli indirizzi IP e le porte utilizzati per ciascun tipo di connessione. Per ulteriori informazioni, contattare l'amministratore di StorageGRID oppure consultare le istruzioni per l'amministrazione di StorageGRID per una descrizione di come trovare queste informazioni in Gestione griglia.
Dove viene stabilita la connessione | Servizio a cui si connette il client | Indirizzo IP | Porta |
---|---|---|---|
Gruppo HA |
Bilanciamento del carico |
Indirizzo IP virtuale di un gruppo ha |
|
Gruppo HA |
CLB Nota: il servizio CLB è obsoleto. |
Indirizzo IP virtuale di un gruppo ha |
Porte S3 predefinite:
|
Nodo Admin |
Bilanciamento del carico |
Indirizzo IP del nodo di amministrazione |
|
Nodo gateway |
Bilanciamento del carico |
Indirizzo IP del nodo gateway |
|
Nodo gateway |
CLB Nota: il servizio CLB è obsoleto. |
Indirizzo IP del nodo gateway Nota: per impostazione predefinita, le porte HTTP per CLB e LDR non sono attivate. |
Porte S3 predefinite:
|
Nodo di storage |
LDR |
Indirizzo IP del nodo di storage |
Porte S3 predefinite:
|
Esempio
Per connettere un client S3 all'endpoint Load Balancer di un gruppo ha di nodi gateway, utilizzare un URL strutturato come mostrato di seguito:
-
https://VIP-of-HA-group:_LB-endpoint-port_
Ad esempio, se l'indirizzo IP virtuale del gruppo ha è 192.0.2.5 e il numero di porta di un endpoint di bilanciamento del carico S3 è 10443, un client S3 potrebbe utilizzare il seguente URL per connettersi a StorageGRID:
È possibile configurare un nome DNS per l'indirizzo IP utilizzato dai client per la connessione a StorageGRID. Contattare l'amministratore di rete locale.
Decidere di utilizzare connessioni HTTPS o HTTP
Quando le connessioni client vengono eseguite utilizzando un endpoint Load Balancer, le connessioni devono essere effettuate utilizzando il protocollo (HTTP o HTTPS) specificato per tale endpoint. Per utilizzare HTTP per le connessioni client ai nodi di storage o al servizio CLB sui nodi gateway, è necessario abilitarne l'utilizzo.
Per impostazione predefinita, quando le applicazioni client si connettono ai nodi di storage o al servizio CLB sui nodi gateway, devono utilizzare HTTPS crittografato per tutte le connessioni. In alternativa, è possibile attivare connessioni HTTP meno sicure selezionando l'opzione Enable HTTP Connection grid (attiva connessione HTTP) in Grid Manager. Ad esempio, un'applicazione client potrebbe utilizzare il protocollo HTTP quando si verifica la connessione a un nodo di storage in un ambiente non di produzione.
Prestare attenzione quando si attiva HTTP per una griglia di produzione, poiché le richieste verranno inviate senza crittografia. |
Il servizio CLB è obsoleto. |
Se l'opzione Enable HTTP Connection (attiva connessione HTTP) è selezionata, i client devono utilizzare porte diverse per HTTP rispetto a quelle utilizzate per HTTPS. Consultare le istruzioni per l'amministrazione di StorageGRID.
Nomi di dominio degli endpoint per le richieste S3
Prima di poter utilizzare i nomi di dominio S3 per le richieste dei client, un amministratore di StorageGRID deve configurare il sistema in modo che accetti le connessioni che utilizzano i nomi di dominio S3 nelle richieste in stile percorso S3 e in quelle in stile host virtuale S3.
Per consentire l'utilizzo delle richieste di stile in hosting virtuale S3, un amministratore di grid deve eseguire le seguenti attività:
-
Utilizzare Grid Manager per aggiungere i nomi di dominio degli endpoint S3 al sistema StorageGRID.
-
Assicurarsi che il certificato utilizzato dal client per le connessioni HTTPS a StorageGRID sia firmato per tutti i nomi di dominio richiesti dal client.
Ad esempio, se l'endpoint è
s3.company.com
, L'amministratore della griglia deve assicurarsi che il certificato utilizzato per le connessioni HTTPS includas3.company.com
Endpoint e SAN (Subject alternative Name) con caratteri jolly dell'endpoint:*.s3.company.com
. -
Configurare il server DNS utilizzato dal client per includere i record DNS che corrispondono ai nomi di dominio degli endpoint, inclusi i record con caratteri jolly richiesti.
Se il client si connette utilizzando il servizio Load Balancer, il certificato configurato dall'amministratore della griglia è il certificato per l'endpoint del bilanciamento del carico utilizzato dal client.
Ogni endpoint di bilanciamento del carico dispone di un proprio certificato e ciascun endpoint può essere configurato in modo da riconoscere nomi di dominio degli endpoint diversi. |
Se il client si connette ai nodi di storage o al servizio CLB sui nodi gateway, il certificato configurato dall'amministratore della griglia è il singolo certificato server personalizzato utilizzato per la griglia.
Il servizio CLB è obsoleto. |
Per ulteriori informazioni, consultare le istruzioni per l'amministrazione di StorageGRID.
Una volta completate queste fasi, è possibile utilizzare richieste virtuali in stile host (ad esempio, bucket.s3.company.com
).
Verificare la configurazione dell'API REST S3
È possibile utilizzare l'interfaccia della riga di comando di Amazon Web Services (AWS CLI) per verificare la connessione al sistema e la possibilità di leggere e scrivere oggetti nel sistema.
-
È stata scaricata e installata la CLI AWS dal sito "aws.amazon.com/cli".
-
Hai creato un account tenant S3 nel sistema StorageGRID.
-
Configurare le impostazioni dei servizi Web Amazon per utilizzare l'account creato nel sistema StorageGRID:
-
Accedere alla modalità di configurazione:
aws configure
-
Inserire l'ID della chiave di accesso AWS per l'account creato.
-
Immettere la chiave di accesso segreta AWS per l'account creato.
-
Immettere la regione predefinita da utilizzare, ad esempio US-East-1.
-
Immettere il formato di output predefinito da utilizzare oppure premere Invio per selezionare JSON.
-
-
Creare un bucket.
aws s3api --endpoint-url https://10.96.101.17:10443 --no-verify-ssl create-bucket --bucket testbucket
Se il bucket viene creato correttamente, viene restituita la posizione del bucket, come mostrato nell'esempio seguente:
"Location": "/testbucket"
-
Caricare un oggetto.
aws s3api --endpoint-url https://10.96.101.17:10443 --no-verify-ssl put-object --bucket testbucket --key s3.pdf --body C:\s3-test\upload\s3.pdf
Se l'oggetto viene caricato correttamente, viene restituito un ETAG che rappresenta un hash dei dati dell'oggetto.
-
Elencare i contenuti del bucket per verificare che l'oggetto sia stato caricato.
aws s3api --endpoint-url https://10.96.101.17:10443 --no-verify-ssl list-objects --bucket testbucket
-
Eliminare l'oggetto.
aws s3api --endpoint-url https://10.96.101.17:10443 --no-verify-ssl delete-object --bucket testbucket --key s3.pdf
-
Eliminare il bucket.
aws s3api --endpoint-url https://10.96.101.17:10443 --no-verify-ssl delete-bucket --bucket testbucket