Einführung
Die Bare Metal Cloud APIs bieten zusätzliche Flexibilität bei der Arbeit mit phoenixNAP BMC-Produkten. Mit den hierin enthaltenen APIs können Sie Ressourcen mithilfe von Tags organisieren, Systemprotokolle und API-Aktivitäten für Ihr BMC-Konto überwachen und private Netzwerke für Ihre BMC-Instanzen steuern.
In diesem Artikel machen Sie sich mit den folgenden Bare-Metal-Cloud-APIs vertraut:
- Server-Tag-Manager-API
- Audit-Log-API
- Multi-Private Back-End-Netzwerk-API
Server-Tag-Manager-API
Mit der Tag Manager-API können Benutzer Tags erstellen, um Server zu organisieren und zu gruppieren. Sie können die Ressourcen auch nach Tag-Namen oder einem Tag-Namen und -Wert filtern. Daher sind Tags Schlüssel-Wert-Paare, die die Bare-Metal-Cloud-Serververwaltung vereinfachen.
Die Tag Manager API verwendet diese HTTP-Anfrage:
https://api.phoenixnap.com/tag-manager/v1/tags
und die folgenden Methoden:
- POSTEN - Erstellen Sie ein neues Tag im Tag-Inventar.
- GET - Rufen Sie Informationen für Ihre Tags und das Tag-Inventar ab.
- PATCH - Ein Tag aus dem Inventar ändern/aktualisieren.
- LÖSCHEN - Ein Tag aus dem Inventar löschen.
Tag erstellen
Um ein Tag mithilfe der POST-Anforderung hinzuzufügen, muss der Tag-Text einen Tag-Namen und den Wert für isBillingTag
enthalten Eigenschaft (wahr oder falsch). Diese Eigenschaft gibt an, ob die Rechnung das Tag verwenden soll, um die Server mit wiederkehrenden Kosten anzuzeigen. Die Eigenschaft Tag-Beschreibung ist optional.
Zum Beispiel, um ExampleTag
zu erstellen verwenden Sie /tags
Endpunkt und:
Sobald Sie ein Tag erstellt haben, erhält es eine eindeutige ID. Sie können den Tag-Namen oder die ID für API-Anfragen verwenden.
Tags und Tag-Bestand anzeigen
Verwenden Sie das GET Anfrage und /tags
Endpunkt, um alle Tags anzuzeigen, die zu Ihrem BMC-Konto gehören. In unserem Fall haben wir das Tag Environment
und das ExampleTag
wir oben erstellt haben.
Die Ausgabe listet alle Tags im Inventar mit allen Eigenschaften und ihren aktuellen Werten auf.
Um ein bestimmtes Tag anzuzeigen und seine Eigenschaften verwenden Sie /tags/{tagId}
Endpunkt.
Tag ändern
Verwenden Sie den PATCH Methode mit /tags/{tagId}
Endpunkt, um die Werte eines Tags zu aktualisieren. Ändern Sie beispielsweise isBillingTag
von falsch zu wahr.
Wenn Sie das isBillingTag
patchen -Eigenschaft, ändert sich das Tag auf allen zugewiesenen Ressourcen .
Tag löschen
Um ein Tag vollständig aus Ihrem BMC-Konto zu entfernen, verwenden Sie LÖSCHEN -Methode mit /tags/{tagId}
Endpunkt.
Tag Serverressourcen zuweisen
Verwenden Sie das PUT -Methode und die /servers/{serverId}/tags
um einem BMC-Server ein Tag zuzuweisen. Der Tag-Text muss einen Tag-Namen enthalten, während der value
Eigenschaft kann leer gelassen werden. Wenn diese Eigenschaft jedoch ausgefüllt ist, können Sie mehrere Server haben, die dasselbe Tag mit einem anderen Wert verwenden .
Legen Sie beispielsweise die environment
fest Tag mit dem Wert prod
zu einem BMC-Server und verwenden Sie denselben Tag-Namen für einen anderen Server, jedoch mit dem Wert QA
. Daher können Sie einen Tag mehreren Servern zuweisen, aber einen anderen Wert verwenden .
Wenn Sie Tag-Details anfordern, zeigt der Tag-Text die Felder, die von dem Server gesammelt wurden, dem es zugewiesen ist. Wenn dasselbe Tag mehreren BMC-Servern mit unterschiedlichen Werten zugewiesen wird, zeigt das Tag diese Informationen ebenfalls an.
Wenn Sie eine Tag-Zuweisung von einer Ressource entfernen, aktualisiert das System die Tag-Details automatisch.
Die Zuweisung von Tags zu Servern erleichtert die Organisation der Ressourcennutzung wenn verschiedene Teams an mehreren Projekten arbeiten. Darüber hinaus erhalten Unternehmen eine übersichtliche Aufschlüsselung der Rechnungen für die Servernutzung für ihr BMC-Konto.
Server mithilfe von Tags filtern
Sie können BMC-Server filtern, indem Sie einen Tag-Namen und einen Tag-Wert verwenden, wenn einem Server Tags zugewiesen sind.
Verwenden Sie das GET Methode in diesem Format, um Serverressourcen zu filtern:
/servers/?tag=tagName.tagValue
Verwenden Sie mehrere Abfrageparameter, um die Filterung zu verfeinern:
/servers/?tag=tagName.tagValue&tagName2.tagValue2
Die Angabe des Tag-Werts ist optional, verwenden Sie also den Tag-Namen nur zum Filtern der Serverressourcen.
/servers/?tag=tagName
Zum Beispiel:
/servers/?tag=Environment
Das Abfrageergebnis zeigt alle Server, die den Filterparametern entsprechen.
Audit-Log-API
Mit der BMC-Audit-Log-API können Sie API-Aufrufe und -Aktivitäten in Ihrem Bare-Metal-Cloud-Konto überwachen. Das System zeichnet Benutzeraktionen auf, indem es automatisch Ereignisprotokolle für jede API-Aktion erstellt.
Mit dieser API können Sie die Audit-Log-Einträge lesen und das erforderliche Sicherheitsniveau aufrechterhalten. Die Audit Log API bietet Geschäftsinhabern die Transparenz, die sie benötigen, um operative Best Practices aufrechtzuerhalten.
Beispielsweise protokolliert das System, wenn eine Fehlermeldung oder Aktion wie das Ausschalten eines Servers, Neustarten, Gebührenänderungen, Löschen eines SSH-Schlüssels und ähnliches vorliegt.
Benutzer können Überwachungsprotokolle nur für ihre eigenen Konten anzeigen.
Ereignisprotokolle abrufen
Um API-Ereignisprotokolle abzurufen, verwenden Sie GET Methode und diese Anfrage:
https://api.phoenixnap.com/audit/v1/events
Verwenden Sie verschiedene Abfrageparameter, um das Filterergebnis anzupassen:
- Grenze. Weist die API an, die Antwortausgabe auf eine bestimmte Anzahl von Ereignissen zu beschränken. Der Endpunkt ist
/events?limit=value
. - Verb. Zeigt die Ergebnisse für die angegebenen Verbereignisse an. Um beispielsweise die POST-Ereignisse anzuzeigen, verwenden Sie die
/events?verb=POST
Endpunkt. - Benutzername. Zeigt das API-Ereignisprotokoll für den angegebenen Benutzernamen an. Der Endpunkt ist
/events?username=value
. - Bestellung. Legen Sie die Sortierreihenfolge des Ereignisprotokolls gemäß dem Zeitstempel in aufsteigender (ASC) oder absteigender (DESC) Reihenfolge fest. Der Standardwert ist DESC, wenn kein Wert angegeben ist. Der Endpunkt ist
/events?order=ASC_or_DESC
. - Datum. Filtert nach dem angegebenen Datumsbereich mit von und an . Der Endpunkt ist
/events?from=data&to=date
.
Multi-Private Back-End-Netzwerk-API
Die Multi-Private-Backend-Funktion bietet zusätzliche Kontrolle und Flexibilität bei der Verwendung privater Netzwerke mit BMC-Servern. Mit den Multi-Private-Backend-Netzwerk-APIs können Benutzer jetzt den privaten IP-Bereich beim Bereitstellen eines Servers anpassen.
Die HTTP-Anforderungs-URL lautet:
https://api.phoenixnap.com/networks/v1/private-networks
Die Netzwerk-API hat die folgenden Eigenschaften:
Eigenschaft | Eingabe | Beschreibung |
---|---|---|
ID | System | Eindeutige Netzwerkkennung, die vom System zugewiesen wird. |
Name | erforderlich | Der Netzwerkname muss für alle Netzwerke eines Kontos eindeutig sein. (Groß-/Kleinschreibung wird nicht beachtet) |
Beschreibung | optional | Netzwerkbeschreibung, wenn nicht definiert, wird sie auf Null gesetzt. |
Typ | system | Ein Feld, das für Backend-Netzwerke zurückgegeben wird, in diesem Fall PRIVATE. |
Standort | erforderlich | Netzwerkstandort. |
Standort-Standard | erforderlich | Boolescher Wert, der das Standardnetzwerk für ein Konto an einem Standort darstellt. |
CIDR | erforderlich | Subnetz des Netzwerks, aus dem Benutzer IP-Adressen zuweisen können. |
VLAN-ID | system | Client-VLAN-ID, die für Problemberichte bei Netzwerkproblemen verwendet wird. |
Server | system | Liste der dem betreffenden Netzwerk zugewiesenen Server. |
Diese API ermöglicht Benutzern Folgendes:
- Stellen Sie einen Server bereit und weisen Sie ihn einem bestimmten privaten Netzwerk zu . Wenn keine Netzwerkdetails angegeben sind, fügt das System dem Standardnetzwerk für den Standort einen Server hinzu und weist automatisch die erste verfügbare IP zu. Stellen Sie beispielsweise einen Server in mehreren privaten Netzwerken bereit und geben Sie für jeden Netzwerkeinstellungen an. Einem Server können bis zu 10 private IP-Adressen zugewiesen werden. Es ist nicht möglich, verschiedene Netzwerke zu kombinieren, und es wird nur ein Gateway unterstützt.
- Vorhandenen Server zu einem anderen privaten Netzwerk hinzufügen . Dies kann ein beliebiges Netzwerk für diesen Standort sein. Sie können auf die gleiche Weise wie beim Bereitstellen eines Servers auch mehrere Netzwerke zuweisen.
- Entfernen Sie einen vorhandenen Server aus einem privaten Netzwerk . Sie können einen Server aus jedem privaten Netzwerk entfernen, selbst wenn dies das einzige Netzwerk ist, mit dem der Server verbunden ist. Wenn Sie die Bereitstellung eines Servers aufheben, wird der Server aus allen zugehörigen privaten Netzwerken entfernt und die IP-Zuweisung freigegeben.
Nachfolgend finden Sie die Tabelle der standardmäßigen privaten Netzwerke für alle Standorte:
Standort | CIDR |
---|---|
Phoenix (PHX) | 10.0.0.0/24 |
Ashburn (ASH) | 10.1.0.0/24 |
Singapur (SGP) | 10.2.0.0/24 |
Niederlande (NLD) | 10.3.0.0/24 |
Chicago (CHI) | 10.4.0.0/24 |
Seattle (SEA) | 10.5.0.0/24 |
Private Netzwerk-API erstellen
Verwenden Sie den POST -Methode und /private-networks
Endpunkt zum Erstellen eines privaten Netzwerks.
Die Anfrage enthält die folgenden Felder:
- Name
- Standort
- locationDefault
- cidr
- Unterstützte Bereiche sind:
- 10.0.0.0 – 10.255.255.255
- 172.16.0.0 – 172.31.255.255
- 192.168.0.0. – 192.168.255.255
- Unterstützte Bereiche sind:
- Beschreibung (optional)
Zum Beispiel:
Private Netzwerkdetails abrufen
Verwenden Sie das GET -Methode und /private-networks
Endpunkt, um die Liste aller privaten Netzwerke abzurufen für alle Standorte des Kontos.
Um die Details eines bestimmten privaten Netzwerks abzurufen , verwenden Sie /private-networks/{network_id}
Endpunkt.
Das Ergebnis zeigt auch die einem privaten Netzwerk zugewiesenen Server mit Server-IDs und IPs.
Filtern Sie die Ergebnisse optional nach Standort mit diesem Endpunkt:
/private-networks?location=PHX
Ersetzen Sie PHX durch den gewünschten Ort.
Privates Netzwerk ändern
Verwenden Sie das PUT -Methode und die /private-networks/{network_id}
Endpunkt, um die Details eines privaten Netzwerks zu aktualisieren.
Die Felder, die Sie ändern können, sind:
- Name - entweder den gleichen Namen beibehalten oder einen neuen eindeutigen Namen angeben.
- locationDefault - Wenn ein Netzwerk beispielsweise kein Standardnetzwerk ist, setzen Sie den Wert auf true um dieses Netzwerk als Standard festzulegen. Pro Standort kann nur ein Netzwerk als Standard festgelegt werden.
- Beschreibung - optionales Feld.
Privates Netzwerk löschen
Um ein bekanntes privates Netzwerk zu entfernen, verwenden Sie LÖSCHEN -Methode und die /private-networks/{network_id}
Endpunkt.
Nachdem Sie ein Netzwerk gelöscht haben, können Sie keine früheren Informationen darüber abrufen.