Utilizzo di Cmdlets
In questa sezione viene descritto come utilizzare i moduli OCI per i cmdlet PowerShell.
I moduli OCI per i cmdlet PowerShell si basano su Oracle Cloud Infrastructure SDK for .NET. Questi cmdlet effettuano chiamate alle API REST di Oracle Cloud Infrastructure con i valori dei parametri del cmdlet passati.
I parametri Cmdlet sono denominati corrispondenti ai rispettivi parametri API REST elencati nel riferimento API.
Le API REST OCI utilizzano richieste e risposte HTTPS. Per ulteriori informazioni, vedere Informazioni sull'interfaccia API.
Ricerca automatica cmdlet
I Cmdlet OCI vengono denominati utilizzando un pattern di coppia verb -noun, in cui verb è l'operazione eseguita sulla risorsa denotata da noun, che in genere include il nome del servizio seguito dal nome della risorsa in tale servizio.
Ad esempio, il comando seguente restituisce tutti i cmdlet disponibili per l'utilizzo con una risorsa di istanza di computazione nel servizio di computazione, che fa parte del modulo PowerShell di base OCI:
PS /> Get-Command -Module OCI.PSModules.Core -Noun "*ComputeInstance*"
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Get-OCIComputeInstance 0.1.0 OCI.PSModules.Core
Cmdlet Get-OCIComputeInstanceConsoleConnection 0.1.0 OCI.PSModules.Core
Cmdlet Get-OCIComputeInstanceConsoleConnectionsList 0.1.0 OCI.PSModules.Core
Cmdlet Get-OCIComputeInstanceDevicesList 0.1.0 OCI.PSModules.Core
Cmdlet Get-OCIComputeInstancesList 0.1.0 OCI.PSModules.Core
Cmdlet Invoke-OCIComputeInstanceAction 0.1.0 OCI.PSModules.Core
Cmdlet Move-OCIComputeInstanceCompartment 0.1.0 OCI.PSModules.Core
Cmdlet New-OCIComputeInstance 0.1.0 OCI.PSModules.Core
Cmdlet New-OCIComputeInstanceConsoleConnection 0.1.0 OCI.PSModules.Core
Cmdlet Remove-OCIComputeInstanceConsoleConnection 0.1.0 OCI.PSModules.Core
Cmdlet Update-OCIComputeInstance 0.1.0 OCI.PSModules.Core
Il comando Get-Command standard può essere utilizzato per trovare i cmdlet presenti in qualsiasi modulo.
Cmdlet di esempio
Questo esempio mostra come richiamare un semplice cmdlet OCI che richiama l'operazione GetNamespace
del servizio di storage degli oggetti OCI. Questa operazione restituisce il nome dello spazio di nomi dello storage degli oggetti per l'utente che effettua la richiesta.
Prima di provare questo esempio, installare e importare il servizio ObjectStorage. Per maggiori informazioni, vedere Installazione.
PS /> Get-OCIObjectStorageNamespace
us-phx-test-namespace
Guida di Cmdlet
Per ottenere informazioni sulla Guida per un cmdlet, utilizzare il cmdlet Get-Help, passando il nome del cmdlet come parametro.
Per informazioni più dettagliate sulla Guida, utilizzare il parametro
-Full
.Get-OCIObjectStorageNamespace
:PS /> Get-Help Get-OCIObjectStorageNamespace
NAME
Get-OCIObjectStorageNamespace
SYNOPSIS
Invokes ObjectStorage service - GetNamespace operation.
SYNTAX
Get-OCIObjectStorageNamespace [-OpcClientRequestId <String>] [-CompartmentId <String>] [-ConfigFile <String>] [-Endpoint <String>] [-NoRetry
<SwitchParameter>] [-Profile <String>] [-Region <String>] [-FullResponse <SwitchParameter>] [-TimeOutInMillis <Int32>] [<CommonParameters>]
DESCRIPTION
Each Oracle Cloud Infrastructure tenant is assigned one unique and uneditable Object Storage namespace. The namespace is a system-generated string
assigned during account creation. For some older tenancies, the namespace string may be the tenancy name in all lower-case letters. You cannot edit a
namespace. GetNamespace returns the name of the Object Storage namespace for the user making the request. If an optional compartmentId query parameter
is provided, GetNamespace returns the namespace name of the corresponding tenancy, provided the user has access to it.
RELATED LINKS
APIReference https://docs.cloud.oracle.com/en-us/iaas/api/
REMARKS
To see the examples, type: "Get-Help Get-OCIObjectStorageNamespace -Examples"
For more information, type: "Get-Help Get-OCIObjectStorageNamespace -Detailed"
For technical information, type: "Get-Help Get-OCIObjectStorageNamespace -Full"
For online help, type: "Get-Help Get-OCIObjectStorageNamespace -Online
Parametri comuni
Questa sezione descrive i parametri opzionali del cmdlet globale comuni a tutti i cmdlet presenti in qualsiasi modulo del servizio PowerShell OCI.
ConfigFile
Il percorso del file di configurazione che fornisce le credenziali per Oracle Cloud.
Endpoint
Indica l'endpoint del servizio da utilizzare per le chiamate API OCI, incluso qualsiasi percorso di versione API richiesto. Ad esempio, https://audit.us-ashburn-1.oraclecloud.com
FullResponse
Per impostazione predefinita, i Cmdlet OCI restituiscono il corpo della risposta dell'operazione API REST. L'inclusione del parametro switch FullResponse
indica che il cmdlet deve eseguire l'output della risposta completa restituita dall'operazione API con wrapping nel tipo .NET associato (un oggetto contenente intestazioni di risposta API oltre a un corpo di risposta facoltativo).
NoRetry
Parametro switch per disabilitare la logica dei nuovi tentativi predefinita per le chiamate ai servizi.
Per impostazione predefinita, i moduli OCI per PowerShell ripetono le chiamate API non riuscite che restituiscono i codici di stato 400, 401, 404, 409, 429 e 500. I nuovi tentativi utilizzano un algoritmo di backoff esponenziale con un massimo di 5 tentativi in un arco di tempo massimo di 10 minuti. Includere questo parametro switch nel richiamo del cmdlet per disabilitare la logica dei nuovi tentativi predefinita.
Profilo
Specifica il profilo da caricare dal file di configurazione. Questo parametro prevede che nel file di configurazione esista un nome di profilo con distinzione tra maiuscole e minuscole.
Region
Specifica l'ID area dell'area in cui effettuare le chiamate. Ad esempio: us-phoenix-1
o ap-singapore-1
.
TimeOutInMillis
Specifica il tempo di attesa massimo in millisecondi per il completamento della richiesta API. Il valore predefinito è 100.000 millisecondi (100 secondi).
AuthType
Definisce il tipo di autenticazione da utilizzare per l'esecuzione di richieste API. Per impostazione predefinita, viene utilizzata la chiave API nel file di configurazione. I valori validi sono ApiKey
o InstancePrincipal
.
Input e Output Cmdlet
In questa sezione viene descritto come i Cmdlet OCI elaborano l'input e l'output.
Input Cmdlet
I Cmdlet OCI attualmente accettano input dai parametri della riga di comando o tramite pipeline in base ai nomi delle proprietà. Per visualizzare un esempio di passaggio degli input tramite la pipeline in base al nome della proprietà, fare riferimento a questo esempio.
Output Cmdlet
Per impostazione predefinita, i Cmdlet OCI restituiscono solo il corpo della risposta API incapsulato in un tipo .NET associato. Per i casi d'uso che richiedono agli utenti di ispezionare la risposta API completa, incluse le intestazioni di risposta, utilizzare il parametro dello switch FullResponse
nel richiamo del cmdlet.
Nell'esempio seguente, l'operazione GetConfiguration
nel servizio di audit OCI restituisce una risorsa Configuration
nel corpo della risposta.
Per eseguire l'esempio seguente, importare
OCI.PSModules.Audit
.PS /> Get-OCIAuditConfiguration -CompartmentId $env:CompartmentId | gm
TypeName: Oci.AuditService.Models.Configuration
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
RetentionPeriodDays Property System.Nullable[int] RetentionPeriodDays {get;set;}
Nell'output di esempio precedente, il richiamo predefinito restituisce solo l'oggetto .NET che incapsula il corpo della risposta API.
Per ottenere un oggetto di output che include la risposta API completa, includere il parametro -FullResponse
nel richiamo del cmdlet. Ad esempio:
PS /> Get-OCIAuditConfiguration -CompartmentId $env:CompartmentId -FullResponse | gm
TypeName: Oci.AuditService.Responses.GetConfigurationResponse
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Configuration Property Oci.AuditService.Models.Configuration Configuration {get;set;}
Chiamate asincrone
Per le API Oracle Cloud che restituiscono una risposta richiesta di lavoro asincrona, con opc-work-request-id
nell'intestazione della risposta e nessun corpo della risposta, i Cmdlet PowerShell OCI restituiscono un oggetto Oci.PSModules.Common.Cmdlets.WorkRequest
contenente la proprietà OpcWorkRequestId
.
Ad esempio:
TypeName: Oci.PSModules.Common.Cmdlets.WorkRequest
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
OpcWorkRequestId Property string OpcWorkRequestId {get;set;}
Gestione errori
Se si verifica un errore durante l'esecuzione di un Cmdlet OCI, il cmdlet genera un errore di terminazione con un record di errore contenente l'eccezione e un messaggio di errore relativo alla causa di base.