Présentation
Les API Bare Metal Cloud offrent une flexibilité supplémentaire lors de l'utilisation des produits phoenixNAP BMC. Avec les API présentées ici, vous pouvez organiser les ressources à l'aide de balises, surveiller les journaux système et les activités de l'API pour votre compte BMC, et contrôler les réseaux privés pour vos instances BMC.
Dans cet article, vous vous familiariserez avec les API Bare Metal Cloud suivantes :
- API du gestionnaire de balises du serveur
- API de journal d'audit
- API de réseau backend multi-privé
API du gestionnaire de balises du serveur
L'API Tag Manager permet aux utilisateurs de créer des balises pour organiser et regrouper les serveurs. Vous pouvez également filtrer les ressources par noms de balises ou par nom et valeur de balise. Par conséquent, les balises sont des paires clé-valeur qui simplifient la gestion du serveur Bare Metal Cloud.
L'API Tag Manager utilise cette requête HTTP :
https://api.phoenixnap.com/tag-manager/v1/tags
et les méthodes suivantes :
- PUBLIER - Créez une nouvelle balise dans l'inventaire des balises.
- OBTENIR - Récupérez les informations de vos balises et de l'inventaire des balises.
- PATCH - Modifier/mettre à jour une balise depuis l'inventaire.
- SUPPRIMER - Supprimer une balise de l'inventaire.
Créer une balise
Pour ajouter une balise à l'aide de la requête POST, le corps de la balise doit contenir un nom de balise et la valeur de isBillingTag
propriété (vrai ou faux). Cette propriété indique si la facture doit utiliser la balise pour afficher les serveurs avec des coûts récurrents. La propriété de description de la balise est facultative.
Par exemple, pour créer ExampleTag
, utilisez les /tags
point de terminaison et :
Une fois que vous avez créé une balise, elle obtient un identifiant unique. Vous pouvez utiliser le nom ou l'ID de la balise pour les demandes d'API.
Afficher les balises et l'inventaire des balises
Utilisez le GET request et les /tags
point de terminaison pour afficher toutes les balises qui appartiennent à votre compte BMC. Dans notre cas, nous avons la balise Environment
et le ExampleTag
nous avons créé ci-dessus.
La sortie répertorie toutes les balises de l'inventaire avec toutes les propriétés et leurs valeurs actuelles.
Pour afficher une balise spécifique et ses propriétés, utilisez le /tags/{tagId}
point de terminaison.
Modifier une balise
Utilisez le PATCH méthode avec le /tags/{tagId}
endpoint pour mettre à jour les valeurs d'une balise. Par exemple, modifiez le isBillingTag
du faux au vrai.
Si vous corrigez le isBillingTag
propriété, la balise change sur toutes les ressources attribuées .
Supprimer une balise
Pour supprimer complètement une balise de votre compte BMC, utilisez la touche SUPPRIMER méthode avec le /tags/{tagId}
point de terminaison.
Attribuer une balise aux ressources du serveur
Utilisez le PUT méthode et les /servers/{serverId}/tags
pour attribuer une balise à un serveur BMC. Le corps de la balise doit contenir un nom de balise, tandis que la value
propriété peut être laissée vide. Cependant, si cette propriété est renseignée, plusieurs serveurs peuvent utiliser la même balise avec une valeur différente .
Par exemple, définissez l'environment
tag avec la valeur prod
à un serveur BMC et utiliser le même nom de balise pour un autre serveur mais avec la valeur QA
. Par conséquent, vous pouvez attribuer une balise à plusieurs serveurs mais utiliser une valeur différente .
Lorsque vous demandez des détails sur la balise, le corps de la balise affiche les champs collectés à partir du serveur auquel elle est attribuée. Lorsque la même balise est attribuée à plusieurs serveurs BMC avec des valeurs différentes, la balise affiche également ces informations.
Si vous supprimez une attribution de balise d'une ressource, le système met automatiquement à jour les détails de la balise.
L'attribution de balises aux serveurs facilite l'organisation de l'utilisation des ressources lorsque différentes équipes travaillent sur plusieurs projets. De plus, les entreprises obtiennent une ventilation claire des factures pour l'utilisation du serveur pour leur compte BMC.
Filtrer les serveurs à l'aide de balises
Vous pouvez filtrer les serveurs BMC en utilisant un nom de balise et une valeur de balise si un serveur a des balises attribuées.
Utilisez le GET méthode dans ce format pour filtrer les ressources du serveur :
/servers/?tag=tagName.tagValue
Utilisez plusieurs paramètres de requête pour affiner le filtrage :
/servers/?tag=tagName.tagValue&tagName2.tagValue2
La spécification de la valeur de la balise est facultative, utilisez donc le nom de la balise pour filtrer uniquement les ressources du serveur.
/servers/?tag=tagName
Par exemple :
/servers/?tag=Environment
Le résultat de la requête affiche tous les serveurs qui correspondent aux paramètres de filtrage.
API de journal d'audit
L'API BMC Audit Log vous permet de surveiller les appels et les activités de l'API sur votre compte Bare Metal Cloud. Le système enregistre les actions des utilisateurs en créant automatiquement des journaux d'événements pour chaque action d'API.
Avec cette API, vous pouvez lire les entrées du journal d'audit et maintenir le niveau de sécurité requis. L'API Audit Log offre aux propriétaires d'entreprise la transparence dont ils ont besoin pour maintenir les meilleures pratiques opérationnelles.
Par exemple, le système se connecte lorsqu'il y a un message d'erreur ou une action telle que la mise hors tension d'un serveur, le redémarrage, les modifications de facturation, la suppression d'une clé SSH, etc.
Les utilisateurs ne peuvent voir les journaux d'audit que pour leurs propres comptes.
Récupérer les journaux d'événements
Pour récupérer les journaux d'événements de l'API, utilisez le GET méthode et cette requête :
https://api.phoenixnap.com/audit/v1/events
Utilisez différents paramètres de requête pour personnaliser le résultat du filtre :
- Limite. Ordonne à l'API de limiter la sortie de réponse à un nombre spécifié d'événements. Le point final est
/events?limit=value
. - Verbe. Affiche les résultats pour les événements de verbe spécifiés. Par exemple, pour voir les événements POST, utilisez le
/events?verb=POST
point de terminaison. - Nom d'utilisateur. Affiche le journal des événements de l'API pour le nom d'utilisateur spécifié. Le point final est
/events?username=value
. - Commander. Définissez l'ordre de tri du journal d'audit des événements en fonction de l'horodatage dans l'ordre croissant (ASC) ou décroissant (DESC). La valeur par défaut est DESC si aucune valeur n'est spécifiée. Le point final est
/events?order=ASC_or_DESC
. - Date. Filtre selon la plage de dates spécifiée à l'aide de de et à . Le point final est
/events?from=data&to=date
.
API de réseau backend multi-privé
La fonctionnalité de backend multi-privé offre un contrôle et une flexibilité supplémentaires lors de l'utilisation de réseaux privés avec des serveurs BMC. Grâce aux API de mise en réseau backend multi-privées, les utilisateurs peuvent désormais personnaliser l'espace IP privé lors de la mise en service d'un serveur.
L'URL de la requête HTTP est :
https://api.phoenixnap.com/networks/v1/private-networks
L'API réseau possède les propriétés suivantes :
Propriété | Entrée | Description |
---|---|---|
ID | système | Identifiant de réseau unique attribué par le système. |
Nom | obligatoire | Le nom du réseau doit être unique pour tous les réseaux d'un compte. (insensible à la casse) |
Description | facultatif | Description du réseau, si elle n'est pas définie, elle sera annulée. |
Type | système | Un champ renvoyé pour les réseaux principaux, dans ce cas PRIVATE. |
Emplacement | obligatoire | Emplacement du réseau. |
Emplacement par défaut | requis | Booléen représentant le réseau par défaut pour un compte dans un emplacement. |
CIDR | requis | Sous-réseau du réseau à partir duquel les utilisateurs peuvent attribuer des adresses IP. |
ID VLAN | système | ID de VLAN client utilisé pour signaler les problèmes en cas de problèmes de réseau. |
Serveurs | système | Liste des serveurs affectés au réseau en question. |
Cette API permet aux utilisateurs de :
- Provisionnez un serveur et attribuez-le à un réseau privé spécifique . Si aucun détail de réseau n'est spécifié, le système ajoute un serveur au réseau par défaut pour l'emplacement et attribue automatiquement la première adresse IP disponible. Par exemple, provisionnez un serveur dans plusieurs réseaux privés et spécifiez les paramètres réseau pour chacun. Un serveur peut se voir attribuer jusqu'à 10 adresses IP privées. Il n'est pas possible de combiner différents réseaux et une seule passerelle est prise en charge.
- Ajouter un serveur existant à un autre réseau privé . Il peut s'agir de n'importe quel réseau pour cet emplacement. Vous pouvez également attribuer plusieurs réseaux de la même manière que lorsque vous provisionnez un serveur.
- Supprimer un serveur existant d'un réseau privé . Vous pouvez supprimer un serveur de n'importe quel réseau privé, même s'il s'agit du seul réseau auquel le serveur est connecté. Lorsque vous déprovisionnez un serveur, le serveur est supprimé de tous les réseaux privés associés et l'allocation IP est libérée.
Vous trouverez ci-dessous le tableau des réseaux privés par défaut pour tous les emplacements :
Emplacement | CIDR |
---|---|
Phénix (PHX) | 10.0.0.0/24 |
Ashburn (ASH) | 10.1.0.0/24 |
Singapour (SGP) | 10.2.0.0/24 |
Pays-Bas (NLD) | 10.3.0.0/24 |
Chicago (CHI) | 10.4.0.0/24 |
Seattle (SEA) | 10.5.0.0/24 |
Créer une API de réseau privé
Utilisez le POST et la méthode /private-networks
point de terminaison pour créer un réseau privé.
La requête contient les champs suivants :
- nom
- lieu
- locationDefault
- cidr
- Les plages prises en charge sont :
- 10.0.0.0 – 10.255.255.255
- 172.16.0.0 – 172.31.255.255
- 192.168.0.0. – 192.168.255.255
- Les plages prises en charge sont :
- description (facultatif)
Par exemple :
Récupérer les détails du réseau privé
Utilisez le GET et la méthode /private-networks
endpoint pour récupérer la liste de tous les réseaux privés pour tous les établissements appartenant au compte.
Pour obtenir les détails d'un réseau privé spécifique , utilisez le /private-networks/{network_id}
point de terminaison.
Le résultat affiche également les serveurs affectés à un réseau privé avec les ID et IP des serveurs.
Facultativement, filtrez les résultats par emplacement avec ce point de terminaison :
/private-networks?location=PHX
Remplacez PHX par l'emplacement souhaité.
Modifier le réseau privé
Utilisez le PUT et le /private-networks/{network_id}
endpoint pour mettre à jour les détails d'un réseau privé.
Les champs que vous pouvez modifier sont :
- nom - laissez le même nom ou spécifiez un nouveau nom unique.
- locationDefault - par exemple, si un réseau n'est pas par défaut, définissez la valeur sur true pour définir ce réseau par défaut. Un seul réseau peut être défini par défaut par emplacement.
- description - champ facultatif.
Supprimer le réseau privé
Pour supprimer un réseau privé connu, utilisez la commande SUPPRIMER méthode et le /private-networks/{network_id}
point final.
Une fois que vous avez supprimé un réseau, vous ne pouvez pas récupérer les informations précédentes sur celui-ci.