Utilizzo della CLI

Utilizzare l'interfaccia a riga di comando (CLI) palmctl per configurare e gestire le risorse nell'ambiente IBM® Hybrid Cloud Mesh ( Mesh ). Questo contenuto fornisce una panoramica sull'uso della CLI di Mesh, con alcuni esempi.

Prerequisiti

Per ulteriori informazioni, vedere Installazione della CLI.

Riepilogo

La CLI esegue azioni sulle risorse, utilizzando la sintassi del seguente comando:

palmctl <action> <resource> [<arguments>] [<flags>]

La guida sensibile al contesto della CLI mostra un elenco di azioni e comandi disponibili e un riepilogo dell'utilizzo del comando. Per visualizzare la guida di palmctl , utilizzare l'indicatore --help o -h :

palmctl --help

Per ottenere aiuto per un comando specifico, aggiungerlo all'indicatore -–help . Ad esempio:

palmctl config --help

Il formato di output palmctl è YAML per impostazione predefinita. Il processore YAML e JSON yq è un utile pacchetto open source per analizzare l'output di palmctl . Se preferisci il formato JSON, utilizza l'indicatore -F json per avere il formato JSON di output palmctl . In questo caso, il processore jq JSON è un utile pacchetto open source per analizzare l'output di palmctl JSON.

È possibile visualizzare un output più dettagliato utilizzando l'indicatore -v o --verbose per indicare il livello di dettaglio:

  • 0: Errore - visualizza solo gli errori. Questa è l'impostazione predefinita.
  • 1: Avvertenza - visualizza anche i messaggi di avvertenza.
  • 2: Informazioni - visualizza anche i messaggi informativi.
  • 3: Debug - visualizza anche i messaggi di debug.
  • 4: Trace - visualizza anche il tracciamento a basso livello delle richieste HTTP.

Ad esempio:

palmctl <action> <resource> --verbose 4

palmctl azioni

create
Crea la risorsa specificata e la configura in base a un file di input YAML.
install
Installa il software nell'ambiente di destinazione. Ad esempio, è possibile installare gli agenti Mesh in uno spazio dei nomi Kubernetes remoto, oppure installare un cluster a singolo nodo e gli agenti Mesh corrispondenti sulla propria macchina locale.
get
Ottenere i dettagli di una o più risorse.
update
Modifica la configurazione della risorsa specificata in base al file di immissione YAML. Questa è una sostituzione completa della risorsa, il che significa che i campi non specificati nel file di input verranno impostati su vuoto.
patch
Aggiorna i campi specificati nella risorsa specificata. I campi non aggiornati conserveranno il valore corrente.
delete
Elimina la risorsa specificata. Questo comando non mostrerà alcun output a meno che la verbosità non venga aumentata utilizzando l'indicatore -v <verbosity> .
bind
Associa le risorse correlate. Utilizzare bind per associare le autorizzazioni ai ruoli e i ruoli alle identità.
unbind
Disaccoppia le risorse precedentemente associate utilizzando il comando bind .
redeploy
Ridistribuisce una risorsa.

palmctl risorse

Utilizzare palmctl <action> -h per visualizzare le risorse che possono essere utilizzate con tale azione.

Esempi di utilizzo palmctl

I seguenti comandi sono esempi di utilizzi comuni di palmctl.

Negli esempi che richiedono l'input del file, viene utilizzato questo modello comune:

cat << EOM | palmctl <action> <resource> <arguments> <flags> -f -
name: some-name
description: some description
EOM

In questo pattern, le righe che seguono il comando iniziale (senza includere il EOMfinale) vengono inviate a palmctl come file di input. I dettagli sono i seguenti:

  • Al comando cat viene richiesto di leggere l'input dalle righe seguenti fino a quando non raggiunge EOM. È l'argomento << EOM che indica di eseguire questa operazione.
  • Il comando cat ripete l'input letto nell'output.
  • Il comando pipe | invia l'output del comando cat all'input del comando palmctl .
  • L'indicatore -f - indica a palmctl di leggere il relativo input come se fosse un file.

Creazione di una risorsa dell'applicazione

Registra la tua applicazione con Mesh:

cat << EOM | palmctl create application -f -
name: myapp
app_identity: app.my.domain.example
labels:                  # optional
  - app:my-app-label
EOM

Aggiornamento di una risorsa dell'applicazione

Sostituire completamente una risorsa dell'applicazione con nuovi valori di campo:

cat << EOM | palmctl create application -f -
name: myapp
app_identity: app.my.domain.example
labels:                  # optional
  - app:my-app-label
EOM

Aggiornamento di un campo in una risorsa dell'applicazione

cat << EOM | palmctl patch application --name myapp -f -
app_identity: app.my.domain.example
EOM

Richiama una risorsa dell'applicazione per nome

palmctl get application --name myapp

Richiamo di tutte le risorse dell'applicazione

palmctl get applications

Eliminazione di una risorsa dell'applicazione per nome

palmctl delete application --name myapp
Nota: se il comando ha esito positivo, non viene emesso alcun output.

Installazione di un agente Open Horizon

palmctl install openhorizon --name <agent_name> --namespace <agent_namespace> \
  --storage-class <storage_class> -d <install_package_location>

Assegnazione (bind) di un ruolo a un'identità (utente)

Fornire a un utente tutte le autorizzazioni contenute in un ruolo:

palmctl bind identity --name <user-email> --role-name ReadAll

Rimozione (annullamento del bind) di un ruolo da un'identità (utente)

Rimuovere le autorizzazioni di un ruolo da un utente:

palmctl unbind identity --name <user-email> --role-name ReadAll