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à.
Ottenimento dei valori degli attributi con la ricerca di Chef
Importante
Il AWS OpsWorks Stacks servizio ha raggiunto la fine del ciclo di vita il 26 maggio 2024 ed è stato disattivato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il Supporto AWS Team su AWS re:post
Nota
Questo approccio è disponibile per gli stack Windows e gli stack Linux Chef 11.10.
Ottenere i valori degli attributi di configurazione e distribuzione dello stack direttamente dall'oggetto nodo può essere complicato e non è una procedura utilizzabile con gli stack Windows. Un approccio alternativo consiste nell'utilizzare la ricerca di Chef
In pratica, limitare la ricerca ai dati archiviati localmente di solito non ha importanza perché l'oggetto node su un' AWS OpsWorks istanza Stacks include gli attributi di configurazione e distribuzione dello stack. Contengono la maggior parte se non tutti i dati che le ricette ottengono in genere dal server Chef e utilizzano gli stessi nomi, quindi di solito è possibile utilizzare il codice di ricerca scritto per il server Chef su AWS OpsWorks istanze Stacks senza modifiche. Per ulteriori informazioni, consulta Utilizzo della ricerca di Chef.
Di seguito viene mostrata la struttura di base di una query di ricerca:
result
= search(:search_index
, "key
:pattern
")
-
L'indice di ricerca specifica gli attributi a cui si applica la query e determina il tipo di oggetto restituito.
-
La chiave specifica il nome dell'attributo.
-
Il modello specifica i valori dell'attributo che intendi recuperare.
Puoi eseguire query per valori di attributi specifici oppure utilizzare i caratteri jolly per eseguire query per un'ampia gamma di valori.
-
Il risultato è un elenco di oggetti che soddisfano la query. Ciascuno di questi è una tabella hash contenente più attributi correlati.
Ad esempio, se utilizzi l'indice di ricerca
node
, la query restituisce un elenco di oggetti istanza, uno per ogni istanza che soddisfa la query. Ogni oggetto è una tabella hash che contiene un set di attributi che definiscono la configurazione dell'istanza, ad esempio il nome host e l'indirizzo IP.
Ad esempio, la query seguente utilizza l'indice di ricerca node
, ovvero un indice Chef standard che si applica alle istanze dello stack (o nodi, nella terminologia Chef). Questo consente di cercare le istanze con nome host myhost
.
result = search(:node, "hostname:myhost")
La ricerca restituisce un elenco di oggetti istanza il cui nome host è myhost
. Il sistema operativo della prima istanza, ad esempio, sarà rappresentato da result[0][:os]
. Se la query restituisce più oggetti, puoi enumerarli per recuperare le informazioni richieste.
I dettagli relativi a come utilizzare la ricerca in una ricetta variano a seconda che tu stia utilizzando uno stack Linux o Windows. I seguenti argomenti forniscono esempi in merito a entrambi i tipi di stack.