OpenSearch: Automatizzare con la CLI
Avvia OpenSearch, recupera le sue credenziali e modifica la sua configurazione in modo programmato con la Stackhero CLI
👋 Benvenuti nella documentazione di Stackhero!
Stackhero offre una soluzione OpenSearch cloud pronta all'uso che fornisce numerosi vantaggi, tra cui:
- Prestazioni ottimali e sicurezza robusta grazie a una VM privata e dedicata.
- Nome di dominio personalizzabile protetto con supporto di crittografia HTTPS.
- OpenSearch Dashboards integrati per una visualizzazione dei dati senza interruzioni.
Risparmiate tempo e semplificatevi la vita: bastano 5 minuti per provare la soluzione OpenSearch cloud hosting di Stackhero!
Questa guida mostra come creare un servizio OpenSearch, leggere le sue credenziali e aggiornare la sua configurazione interamente dalla riga di comando, senza alcun clic sul dashboard. È l'ideale per script, pipeline CI e agenti AI.
Per tutte le operazioni utilizzeremo la Stackhero CLI. Se non l'ha già fatto, può installarla con:
curl -fsSL https://www.stackhero.io/install.sh | sh
1. Autenticazione
Il modo più semplice per iniziare è effettuare il login tramite browser. Quando esegue il comando di login, la CLI apre una pagina web dove può approvare l'accesso. Nessuna password o codice 2FA viene inserito direttamente nella CLI.
stackhero login
Dopo l'accesso, le sue credenziali vengono memorizzate localmente e saranno utilizzate automaticamente dai successivi comandi CLI.
Per ambienti completamente automatizzati come script o pipeline CI, può preferire un token di accesso non interattivo. Può crearne uno dal suo dashboard (Account > Access tokens), quindi esportarlo come variabile d'ambiente. La CLI, così come qualsiasi script eseguito, lo rileverà automaticamente.
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
2. Trovare il service store di OpenSearch
Successivamente, vorrà elencare i service store OpenSearch disponibili per il suo account. La CLI accetta direttamente il nome dello store (opensearch), quindi non è necessario cercare o copiare alcun ID.
# Elenca i service store OpenSearch (aggiunga --organization se ne gestisce più di uno)
stackhero services-store-list --name="opensearch"
Può fare riferimento al nome dello store opensearch nei comandi successivi, oppure scegliere un ID specifico svs-xxxxxx dall'elenco se preferisce.
3. Scegliere una dimensione dell'istanza e una regione
# Elenca le dimensioni delle istanze per il suo service store (utilizzi la colonna NAME per --instance)
stackhero instances-store-list --service-store=opensearch
# Elenca le regioni disponibili (nomi come "europe")
stackhero regions-list
4. Creare il servizio
Ecco uno script di esempio che crea uno stack, aggiunge il suo servizio OpenSearch, attende che venga avviato, recupera la configurazione (incluse le credenziali generate) e applica una nuova configurazione.
#!/bin/bash
set -e
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
serviceStore="opensearch" # Il nome del service store OpenSearch (vedi step 2)
instance="..." # Una dimensione dell'istanza dallo step 3
region="europe" # Un nome di regione dallo step 3
# Crea uno stack per il suo servizio (usa l'organizzazione predefinita; aggiunga --organization se necessario)
stackId=$(stackhero --format=script stack-create \
--name="My OpenSearch stack")
echo "Stack creato: ${stackId}"
# Aggiunge OpenSearch allo stack (i nomi vengono risolti automaticamente)
serviceId=$(stackhero --format=script service-add \
--stack="My OpenSearch stack" \
--service-store="${serviceStore}" \
--instance="${instance}" \
--region="${region}")
echo "Servizio aggiunto: opensearch"
# Attende che il servizio sia completamente operativo (può richiedere alcuni minuti)
stackhero service-wait-for --service="opensearch"
# Recupera la configurazione del servizio, incluse le credenziali generate
stackhero service-configuration-get --service="opensearch" --format=json
5. Recuperare le credenziali
Il comando service-configuration-get restituisce la configurazione completa del servizio, incluse password generate automaticamente e dettagli di connessione. L'output è in formato JSON, facilitando l'utilizzo in script e automazioni.
stackhero service-configuration-get --service=svc-xxxxxx --format=json
6. Modificare la configurazione
Può consultare uno schema di configurazione di esempio e poi applicare le sue impostazioni personalizzate. Quando aggiorna la configurazione, il servizio potrebbe riavviarsi per applicare le modifiche.
# Visualizza lo schema di configurazione e un esempio per il suo servizio
stackhero service-configuration-example --service=svc-xxxxxx
# Applica una configurazione personalizzata (il servizio si riavvia se necessario)
stackhero service-configuration-set \
--service=svc-xxxxxx \
--configuration='{ "...": "..." }'
# Attende che la nuova configurazione venga applicata
stackhero service-wait-for --service=svc-xxxxxx
Ecco fatto. Ha ora visto l'intero ciclo di vita: avviare un servizio, recuperare le sue credenziali e riconfigurarlo, tutto in modo scriptabile e automatizzato. Per approfondire, consulti la documentazione completa della CLI, che copre anche l'autenticazione non interattiva tramite STACKHERO_TOKEN illustrata qui.