

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
<a name="cookbooks-101-opsworks-opsworks-stack-config-search"></a>

**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](https://repost.aws/) o tramite Premium [AWS Support](https://aws.amazon.com/support).

**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](http://docs.chef.io/chef_search.html) per eseguire query per gli attributi di interesse. Se conosci il server Chef, scoprirai che Chef search funziona in modo leggermente diverso con OpsWorks Stacks. Poiché OpsWorks Stacks utilizza chef-client in modalità locale, Chef search dipende da una versione locale del server Chef chiamata chef-zero, in modo che la ricerca operi sui dati archiviati localmente nell'oggetto nodo dell'istanza anziché su un server remoto.

[In pratica, limitare la ricerca ai dati archiviati localmente di solito non ha importanza perché l'oggetto node su un' OpsWorks istanza Stacks include gli attributi di configurazione e distribuzione dello stack.](workingcookbook-json.md) 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 Chef server su OpsWorks istanze Stacks senza modifiche. Per ulteriori informazioni, consulta [Utilizzo della ricerca di Chef](workingcookbook-chef11-10.md#workingcookbook-chef11-10-search).

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.

**Topics**
+ [Utilizzo della ricerca su uno stack Linux](cookbooks-101-opsworks-opsworks-stack-config-search-linux.md)
+ [Utilizzo della ricerca su uno stack Windows](cookbooks-101-opsworks-opsworks-stack-config-search-windows.md)