Introduzione
Le API Bare Metal Cloud offrono ulteriore flessibilità quando si lavora con i prodotti phoenixNAP BMC. Con le API qui riportate, puoi organizzare le risorse utilizzando i tag, monitorare i log di sistema e le attività API per il tuo account BMC e controllare le reti private per le tue istanze BMC.
In questo articolo acquisirai familiarità con le seguenti API Bare Metal Cloud:
- API Server Tag Manager
- API del registro di controllo
- API di rete backend multi-privata

API Server Tag Manager
L'API Tag Manager consente agli utenti di creare tag per organizzare e raggruppare i server. Puoi anche filtrare le risorse in base ai nomi dei tag o al nome e al valore di un tag. Pertanto, i tag sono coppie chiave-valore che semplificano la gestione del server Bare Metal Cloud.
L'API Tag Manager utilizza questa richiesta HTTP:
https://api.phoenixnap.com/tag-manager/v1/tags
e i seguenti metodi:
- POST - Crea un nuovo tag nell'inventario dei tag.
- OTTIENI - Recupera le informazioni per i tuoi tag e l'inventario dei tag.
- PATCH - Modifica/aggiorna un tag dall'inventario.
- ELIMINA - Elimina un tag dall'inventario.
Crea tag
Per aggiungere un tag utilizzando la richiesta POST è necessario che il corpo del tag contenga un nome di tag e il valore per isBillingTag
proprietà (vero o falso). Questa proprietà indica se la fattura deve utilizzare il tag per visualizzare i server con costi ricorrenti. La proprietà della descrizione del tag è facoltativa.
Ad esempio, per creare ExampleTag
, usa il /tags
punto finale e:

Una volta creato un tag, ottiene un ID univoco. Puoi utilizzare il nome del tag o l'ID per le richieste API.
Visualizza tag e inventario tag
Usa OTTIENI richiesta e il /tags
endpoint per visualizzare tutti i tag che appartengono al tuo account BMC. Nel nostro caso, abbiamo il tag Environment
e il ExampleTag
abbiamo creato sopra.

L'output elenca tutti i tag nell'inventario con tutte le proprietà e i loro valori correnti.
Per visualizzare un tag specifico e le sue proprietà, utilizza il /tags/{tagId}
punto finale.
Modifica un tag
Usa il PATCH metodo con il /tags/{tagId}
endpoint per aggiornare i valori di un tag. Ad esempio, modifica il isBillingTag
da falso a vero.

Se applichi la patch a isBillingTag
proprietà, il tag cambia su tutte le risorse assegnate .
Elimina un tag
Per rimuovere completamente un tag dal tuo account BMC, utilizza DELETE metodo con il /tags/{tagId}
punto finale.
Assegna tag alle risorse del server
Usa il PUT metodo e /servers/{serverId}/tags
per assegnare un tag a un server BMC. Il corpo del tag deve contenere un nome di tag, mentre il value
la proprietà può essere lasciata vuota. Tuttavia, se questa proprietà è popolata, puoi avere più server che utilizzano lo stesso tag con un valore diverso .

Ad esempio, imposta l'environment
tag con il valore prod
a un server BMC e utilizzare lo stesso nome tag per un altro server ma con il valore QA
. Pertanto, puoi assegnare un tag a più server ma utilizzare un valore diverso .
Quando richiedi i dettagli del tag, il corpo del tag mostra i campi raccolti dal server a cui è assegnato. Quando lo stesso tag viene assegnato a più server BMC con valori diversi, il tag mostra anche tali informazioni.

Se rimuovi un'assegnazione di tag da una risorsa, il sistema aggiorna automaticamente i dettagli del tag.
L'assegnazione di tag ai server facilita l'organizzazione dell'utilizzo delle risorse quando diversi team lavorano su più progetti. Inoltre, le aziende ottengono una chiara suddivisione delle fatture per l'utilizzo del server per il proprio account BMC.
Filtra i server utilizzando i tag
Puoi filtrare i server BMC utilizzando un nome e un valore di tag se a un server sono stati assegnati dei tag.
Usa OTTIENI metodo in questo formato per filtrare le risorse del server:
/servers/?tag=tagName.tagValue
Utilizza più parametri di query per perfezionare il filtro:
/servers/?tag=tagName.tagValue&tagName2.tagValue2
La specifica del valore del tag è facoltativa, quindi usa il nome del tag per filtrare solo le risorse del server.
/servers/?tag=tagName
Ad esempio:
/servers/?tag=Environment
Il risultato della query mostra tutti i server che corrispondono ai parametri di filtro.
API del registro di controllo
L'API del registro di controllo BMC ti consente di monitorare le chiamate e le attività API sul tuo account Bare Metal Cloud. Il sistema registra le azioni dell'utente creando automaticamente registri eventi per ciascuna azione API.
Con questa API, puoi leggere le voci del registro di controllo e mantenere il livello di sicurezza richiesto. L'API Audit Log offre agli imprenditori la trasparenza di cui hanno bisogno per mantenere le migliori pratiche operative.
Ad esempio, il sistema registra quando viene visualizzato un messaggio di errore o un'azione come lo spegnimento di un server, il riavvio, le modifiche alla fatturazione, l'eliminazione di una chiave SSH e simili.

Gli utenti possono visualizzare i log di controllo solo per i propri account.
Recupera registri eventi
Per recuperare i registri eventi dell'API, utilizza GET metodo e questa richiesta:
https://api.phoenixnap.com/audit/v1/events
Utilizza parametri di query diversi per personalizzare il risultato del filtro:
- Limite. Indica all'API di limitare l'output della risposta a un numero specificato di eventi. Il punto finale è
/events?limit=value
. - Verbo. Mostra i risultati per gli eventi del verbo specificato. Ad esempio, per visualizzare gli eventi POST, utilizzare il file
/events?verb=POST
punto finale. - Nome utente. Visualizza il registro eventi API per il nome utente specificato. Il punto finale è
/events?username=value
. - Ordine. Impostare l'ordinamento del registro di controllo degli eventi in base al timestamp in ordine crescente (ASC) o decrescente (DESC). L'impostazione predefinita è DESC se non viene specificato alcun valore. Il punto finale è
/events?order=ASC_or_DESC
. - Data. Filtra in base all'intervallo di date specificato utilizzando da e a . Il punto finale è
/events?from=data&to=date
.
API di rete backend multi-privata
La funzione di backend multi-privato fornisce maggiore controllo e flessibilità quando si utilizzano reti private con server BMC. Con le API di rete back-end multiprivate, gli utenti possono ora personalizzare lo spazio IP privato durante il provisioning di un server.
L'URL della richiesta HTTP è:
https://api.phoenixnap.com/networks/v1/private-networks
L'API di rete ha le seguenti proprietà:
Proprietà | Input | Descrizione |
---|---|---|
ID | sistema | Identificatore di rete univoco assegnato dal sistema. |
Nome | richiesto | Il nome della rete deve essere univoco per tutte le reti di un account. (senza distinzione tra maiuscole e minuscole) |
Descrizione | opzionale | Descrizione della rete, se non definita verrà annullata. |
Tipo | sistema | Un campo restituito per le reti di back-end, in questo caso PRIVATE. |
Posizione | richiesto | Posizione di rete. |
Posizione predefinita | richiesto | Booleano che rappresenta la rete predefinita per un account in una posizione. |
CIDR | richiesto | Sottorete di rete da cui gli utenti possono assegnare indirizzi IP. |
ID VLAN | sistema | ID VLAN client utilizzato per segnalare problemi in caso di problemi di rete. |
Server | sistema | Elenco dei server assegnati alla rete in questione. |
Questa API consente agli utenti di:
- Fornire un server e assegnarlo a una rete privata specifica . Se non vengono specificati i dettagli di rete, il sistema aggiunge un server alla rete predefinita per la posizione e assegna automaticamente il primo IP disponibile. Ad esempio, eseguire il provisioning di un server all'interno di più reti private e specificare le impostazioni di rete per ciascuna. A un server possono essere assegnati fino a 10 indirizzi IP privati. Non è possibile combinare reti diverse ed è supportato un solo gateway.

- Aggiungi un server esistente a un'altra rete privata . Può essere qualsiasi rete per quella posizione. Puoi anche assegnare più reti nello stesso modo in cui esegui il provisioning di un server.
- Rimuovi un server esistente da una rete privata . È possibile rimuovere un server da qualsiasi rete privata, anche quando questa è l'unica rete a cui è connesso il server. Quando esegui il deprovisioning di un server, il server viene rimosso da tutte le reti private associate e l'allocazione IP viene liberata.
Di seguito è riportata la tabella delle reti private predefinite per tutte le località:
Posizione | CIDR |
---|---|
Phoenix (PHX) | 10.0.0.0/24 |
Ashburn (ASH) | 10.1.0.0/24 |
Singapore (SGP) | 10.2.0.0/24 |
Paesi Bassi (NLD) | 10.3.0.0/24 |
Chicago (CHI) | 10.4.0.0/24 |
Seattle (SEA) | 10.5.0.0/24 |
Crea API di rete privata
Usa il POST metodo e il /private-networks
endpoint per creare una rete privata.
La richiesta contiene i seguenti campi:
- nome
- posizione
- posizionePredefinito
- cidro
- Gli intervalli supportati sono:
- 10.0.0.0 – 10.255.255.255
- 172.16.0.0 – 172.31.255.255
- 192.168.0.0. – 192.168.255.255
- Gli intervalli supportati sono:
- descrizione (facoltativo)
Ad esempio:

Recupera i dettagli della rete privata
Usa OTTIENI metodo e il /private-networks
endpoint per recuperare l'elenco di tutte le reti private per tutte le sedi di proprietà dell'account.
Per ottenere i dettagli di una rete privata specifica , utilizza il /private-networks/{network_id}
punto finale.

Il risultato mostra anche i server assegnati a una rete privata con ID server e IP.

Facoltativamente, filtra i risultati in base alla posizione con questo endpoint:
/private-networks?location=PHX
Sostituisci PHX con la posizione desiderata.
Modifica rete privata
Usa il PUT metodo e il /private-networks/{network_id}
endpoint per aggiornare i dettagli di una rete privata.
I campi che puoi modificare sono:
- nome - lasciare lo stesso nome o specificare un nuovo nome univoco.
- posizionePredefinito - ad esempio, se una rete non è predefinita, imposta il valore su true per rendere quella rete predefinita. Solo una rete può essere predefinita per posizione.
- descrizione - campo facoltativo.
Elimina rete privata
Per rimuovere una rete privata nota, utilizza ELIMINA metodo e il /private-networks/{network_id}
punto finale.
Una volta eliminata una rete, non è possibile recuperare alcuna informazione precedente su di essa.