Skip to main content
Cloud Insights
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Cloud Insights API

Beitragende

Die Cloud Insights API ermöglicht NetApp Kunden und unabhängigen Software-Anbietern (ISVs) die Integration von Cloud Insights in andere Applikationen wie CMDB- oder andere Ticketsysteme.

Beachten Sie, dass Cloud Insights APIs entsprechend Ihrer aktuellen Ausgabe verfügbar sind:

API-Typ Basic Standard Premium

Erfassungseinheit

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Datenerfassung

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Meldungen

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Ressourcen

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Datenaufnahme

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Aufnahme Protokollieren

Aktivieren Sie das Kontrollkästchen

Aktivieren Sie das Kontrollkästchen

Darüber hinaus Ihr Cloud Insights "Funktionsgruppe Rolle" Bestimmt, auf welche APIs Sie zugreifen können. Benutzer- und Gastrollen haben weniger Berechtigungen als Administratorrolle. Wenn Sie z. B. in Überwachen und Optimieren eine Administratorrolle haben, die Rolle Benutzer jedoch in Reporting verwendet wird, können Sie alle API-Typen außer Data Warehouse verwalten.

Anforderungen für den API-Zugriff

  • Ein API-Zugriffstoken-Modell wird verwendet, um den Zugriff zu gewähren.

  • Das Management von API-Token wird von Cloud Insights-Benutzern mit der Administratorrolle durchgeführt.

API-Dokumentation (Swagger)

Die neuesten API-Informationen finden Sie, indem Sie sich bei Cloud Insights anmelden und zu Admin > API Acccess navigieren. Klicken Sie auf den Link API Documentation.

API-Typen

Die API-Dokumentation ist Swagger-basiert, die eine kurze Beschreibung und Verwendungsinformationen für die API, und ermöglicht es Ihnen, es in Ihrer Umgebung zu testen. Je nach Benutzerrolle und/oder Cloud Insights Edition können die für Sie verfügbaren API-Typen variieren.

Beispiel für API-Swagger

API-Zugriffs-Tokens

Bevor Sie die Cloud Insights-API verwenden, müssen Sie ein oder mehrere API-Zugriffstoken erstellen. Access Tokens werden für angegebene API-Typen verwendet und können Lese- und/oder Schreibberechtigungen gewähren. Sie können auch die Ablauffrist für jedes Access Token festlegen. Alle APIs unter den angegebenen Typen sind für das Access-Token gültig. Jedes Token ist ungültig für einen Benutzernamen oder ein Kennwort.

So erstellen Sie ein Access Token:

  • Klicken Sie auf Admin > API Access

  • Klicken Sie auf +API Access Token

    • Geben Sie Den Namen Des Tokens Ein

    • Wählen Sie API-Typen aus

    • Geben Sie die Berechtigungen an, die für diesen API-Zugriff gewährt wurden

    • Legen Sie Den Ablauf Des Tokens Fest

Hinweis Ihr Token kann nur während des Erstellungsvorgangs in die Zwischenablage kopiert und gespeichert werden. Token können nicht abgerufen werden, nachdem sie erstellt wurden. Daher wird dringend empfohlen, das Token zu kopieren und an einem sicheren Ort zu speichern. Sie werden aufgefordert, auf die Schaltfläche Copy API Access Token zu klicken, bevor Sie den Bildschirm zur Tokenerstellung schließen können.

Sie können Token deaktivieren, aktivieren und widerrufen. Deaktivierte Token können aktiviert werden.

Tokens gewähren aus Kundensicht allgemeinen Zugang zu APIs; Management des Zugriffs auf APIs im Umfang ihres eigenen Mandanten. Kundenadministratoren können diese Token ohne direkte Beteiligung von Cloud Insights Back-End-Mitarbeitern erteilen und widerrufen.

Die Anwendung erhält ein Zugriffstoken, nachdem ein Benutzer den Zugriff erfolgreich authentifiziert und autorisiert hat, und übergibt das Access Token dann als Berechtigung, wenn es die Ziel-API anruft. Das übergebene Token informiert die API, dass der Inhaber des Tokens berechtigt ist, auf die API zuzugreifen und bestimmte Aktionen durchzuführen, die vom Umfang festgelegt wurden, der während der Autorisierung gewährt wurde.

Der HTTP-Header, in dem das Access Token übergeben wird, ist X-CloudInsights-ApiKey:.

Verwenden Sie zum Abrufen von Lagerbeständen beispielsweise Folgendes:

 curl https://<tenant_host_name>/rest/v1/assets/storages -H 'X-CloudInsights-ApiKey:<API_Access_Token>'
Wobei _<API_Access_Token>_ das Token ist, das Sie bei der Erstellung des API-Zugriffs gespeichert haben.

Beispiele für die API, die Sie verwenden möchten, finden Sie auf den Seiten der Schwagger.

API-Typ

Die Cloud Insights-API ist kategoribasiert und enthält derzeit die folgenden Typen:

  • DER ASSET-Typ enthält Asset-, Abfrage- und Such-APIs.

    • Assets: Listen Sie Objekte der obersten Ebene auf und rufen Sie ein bestimmtes Objekt oder eine Objekthierarchie ab.

    • Abfrage: Abrufen und Verwalten von Cloud Insights-Abfragen.

    • Import: Importieren Sie Anmerkungen oder Anwendungen und weisen Sie sie Objekten zu

    • Suche: Suchen Sie ein bestimmtes Objekt, ohne die eindeutige ID oder den vollständigen Namen des Objekts zu kennen.

  • DER DATENERFASSUNGSTYP dient zum Abrufen und Verwalten von Datensammlern.

  • Mit DEM AUFNAHMERUNGSTYP können Aufnahmedaten und benutzerdefinierte Metriken abgerufen und gemanagt werden, beispielsweise von Telegraf-Agenten

  • MITHILFE DER PROTOKOLLAUFNAHME werden Protokolldaten abgerufen und gemanagt

Weitere Typen und/oder APIs können im Laufe der Zeit verfügbar sein. Die neuesten API-Informationen finden Sie im "API-Swagger-Dokumentation".

Beachten Sie, dass die API-Typen, auf die ein Benutzer Zugriff hat, auch vom abhängen "Benutzerrolle" Sie werden in allen Cloud Insights Funktionen eingesetzt (Monitoring, Workload-Sicherheit, Berichterstellung).

Inventurtraversal

In diesem Abschnitt wird beschrieben, wie eine Hierarchie von Cloud Insights-Objekten durchlaufen wird.

Objekte Der Obersten Ebene

Einzelne Objekte werden in Anfragen durch eine eindeutige URL (in JSON als „selbst“ bezeichnet) identifiziert und erfordern Kenntnisse über Objekttyp und interne ID Für einige der Objekte der obersten Ebene (Hosts, Storage usw.) bietet DIE REST API Zugriff auf die vollständige Sammlung.

Das allgemeine Format einer API-URL lautet:

 https://<tenant>/rest/v1/<type>/<object>
Um beispielsweise alle Speicher von einem Mandanten mit dem Namen _mysite.c01.cloudinsights.netapp.com_ abzurufen, lautet die Anfrage-URL:
https://mysite.c01.cloudinsights.netapp.com/rest/v1/assets/storages

Kinder und verwandte Objekte

Objekte auf oberster Ebene, wie z. B. Speicherung, können für andere Kinder und verwandte Objekte verwendet werden. Zum Beispiel, um alle Datenträger für einen bestimmten Speicher abzurufen, verketten Sie die Speicher-URL „selbst“ mit „/Disks“, zum Beispiel:

https://<tenant>/rest/v1/assets/storages/4537/disks

Erweitert

Viele API-Befehle unterstützen den Parameter Expand, der zusätzliche Details zum Objekt oder URLs für verwandte Objekte enthält.

Der gemeinsame Expand-Parameter ist Expands. Die Antwort enthält eine Liste aller verfügbaren spezifischen Expands für das Objekt.

Beispiel: Wenn Sie Folgendes anfordern:

 https://<tenant>/rest/v1/assets/storages/2782?expand=_expands
Die API gibt alle verfügbaren Expands für das Objekt wie folgt zurück:

Expands Beispiel

Jede Erweiterung enthält Daten, eine URL oder beides. Der Parameter Expand unterstützt mehrere und verschachtelte Attribute, z. B.:

 https://<tenant>/rest/v1/assets/storages/2782?expand=performance,storageResources.storage
Mit Expand lassen sich zahlreiche verwandte Daten in einer einzigen Lösung integrieren. NetApp rät Ihnen, nicht zu viele Informationen gleichzeitig anzufordern. Dies kann zu einer Verschlechterung der Performance führen.

Um dies zu entmutigen, können Anfragen nach Beständen der obersten Ebene nicht erweitert werden. Beispielsweise können Sie keine Expand-Daten für alle Speicherobjekte gleichzeitig anfordern. Die Clients müssen die Liste der Objekte abrufen und dann spezifische Objekte auswählen, die erweitert werden sollen.

Performance-Daten

Performancedaten werden über viele Geräte als separate Proben erfasst. Jede Stunde (Standard) Cloud Insights aggregiert und fasst Performance-Muster zusammen.

Die API ermöglicht den Zugriff auf sowohl die Proben als auch auf die zusammengefassten Daten. Bei einem Objekt mit Performance-Daten ist eine Performance-Zusammenfassung als Expand=Performance verfügbar. Die Zeitreihen für den Leistungsverlauf sind über die verschachtelte_Expand=Performance.history_ verfügbar.

Beispiele für Performance-Datenobjekte:

  • Storage Performance

  • StoragePoolPerformance

  • PortPerformance

  • DiskPerformance

Eine Leistungsmetric hat eine Beschreibung und einen Typ und enthält eine Sammlung von Leistungsübersichten. Beispiel: Latenz, Datenverkehr und Rate.

Eine Leistungsübersicht enthält eine Beschreibung, Einheit, Beispielstartzeit, Probenendzeit und eine Sammlung von zusammengefassten Werten (Strom, min, max, avg usw.), die aus einem einzelnen Leistungszähler über einen Zeitbereich (1 Stunde, 24 Stunden, 3 Tage usw.) berechnet werden.

Beispiel für eine API-Performance

Das resultierende Wörterbuch für Leistungsdaten enthält die folgenden Schlüssel:

  • „Selbst“ ist die eindeutige URL des Objekts

  • „History“ ist die Liste der Paare von Zeitstempel und Karte von Zählerwerten

  • Jeder andere Wörterbuchschlüssel („diskThrughput“ usw.) ist der Name einer Leistungsmetrik.

Jeder Performance-Datenobjekttyp verfügt über einen eigenen Satz von Performance-Kennzahlen. Das Performance-Objekt der virtuellen Maschine unterstützt beispielsweise „diskThrughput“ als Leistungskennzahl. Jede unterstützte Leistungsmetrik ist eine bestimmte „performanceCategory“, die im metrischen Wörterbuch dargestellt wird. Cloud Insights unterstützt verschiedene Performance-Kennzahlen, die später in diesem Dokument aufgeführt sind. Jedes Wörterbuch der Leistungsmetrik hat auch das Feld „Beschreibung“, das eine vom Menschen lesbare Beschreibung dieser Leistungsmetrik und eine Reihe von Zähleinträgen mit Leistungszusammenfassung ist.

Der Zähler der Leistungsübersicht ist die Zusammenfassung der Leistungsindikatoren. Er zeigt typische aggregierte Werte wie Min., Max. Und Avg für einen Zähler sowie den neuesten beobachteten Wert, den Zeitbereich für zusammengefasste Daten, den Einheitstyp für Zähler und die Schwellenwerte für Daten. Nur Schwellenwerte sind optional; die restlichen Attribute müssen angegeben werden.

Leistungsübersichten stehen für diese Zählertypen zur Verfügung:

  • Lesen – Zusammenfassung für Lesevorgänge

  • Write – Zusammenfassung für Schreibvorgänge

  • Gesamt: Zusammenfassung für alle Operationen. Es kann höher sein als die einfache Summe von Lesen und Schreiben; es kann auch andere Operationen.

  • Total Max – Zusammenfassung für alle Operationen. Dies ist der maximale Gesamtwert im angegebenen Zeitbereich.

Kennzahlen Für Die Objekt-Performance

Die API kann detaillierte Metriken für Objekte in Ihrer Umgebung zurückgeben, z. B.:

  • Storage-Performance-Kennzahlen wie IOPS (Anzahl der ein-/Ausgabe-Anfragen pro Sekunde), Latenz oder Durchsatz.

  • Kennzahlen zur Switch-Performance, z. B. Datenverkehrsnutzung, BB Credit Zero Daten oder Port-Fehler.

Siehe "API-Swagger-Dokumentation" Weitere Informationen zu Metriken für die einzelnen Objekttypen.

Performance-Verlaufsdaten

Verlaufsdaten werden in Leistungsdaten als Liste der Zeitstempel- und Zählermaps-Paare präsentiert.

Verlaufszähler werden basierend auf dem Objektnamen der Performance-Metrik benannt. Das Performance-Objekt der virtuellen Maschine unterstützt beispielsweise „diskThrughput“, so dass die Geschichtskarte Schlüssel mit den Namen „diskThrughput.read“, „diskThrughput.write“ und „diskThrughput.total“ enthält.

Hinweis Zeitstempel befindet sich im UNIX-Zeitformat.

Dies ist ein Beispiel für einen Performance-Daten-JSON für eine Festplatte:

Festplatten-Performance-JSON

Objekte mit Kapazitätsattributen

Objekte mit Kapazitätsattributen verwenden grundlegende Datentypen und das kapazitätItem zur Darstellung.

KapazitätArtikel

KapazitätItem ist eine einzige logische Einheit der Kapazität. Er hat „Wert“ und „highThreshold“ in Einheiten, die durch sein übergeordnetes Objekt definiert sind. Zudem unterstützt es eine optionale Übersichtskarte, in der die Konstruktion des Kapazitätswerts erläutert wird. So wäre beispielsweise die Gesamtkapazität eines 100 TB StoragePool ein KapazitätItem mit einem Wert von 100. Die Aufschlüsselung kann 60 TB für „Daten“ und 40 TB für „Snapshots“ zugewiesen zeigen.

Hinweis

„HighThreshold“ stellt systemdefinierte Schwellenwerte für die entsprechenden Metriken dar, mit denen ein Kunde Alarme oder visuelle Hinweise auf Werte generieren kann, die außerhalb des zulässigen konfigurierten Messebereiches liegen.

Die folgende Anzeige zeigt die Kapazität von StoragePools mit mehreren Kapazitätszählern:

Beispiel Für Die Speicherpool-Kapazität

Suchen von Objekten mit Suchen

Die Such-API ist ein einfacher Einstiegspunkt zum System. Der einzige Eingabeparameter für die API ist eine freie Zeichenfolge, und der resultierende JSON enthält eine kategorisierte Liste der Ergebnisse. Typen sind verschiedene Asset-Typen aus dem Inventar, z. B. Speicher, Hosts, Datenspeicher usw. Jeder Typ würde eine Liste von Objekten des Typs enthalten, die den Suchkriterien entsprechen.

Cloud Insights ist eine erweiterbare (offene) Lösung, die die Integration in Orchestrierungs-, Business-Management-, Änderungs- und Ticketsysteme anderer Anbieter sowie in individuelle CMDB-Integrationen ermöglicht.

Die RESTful API von Cloud Insight ist ein primärer Integrationspunkt für eine einfache und effektive Datenverschiebung und ermöglicht Anwendern nahtlosen Zugriff auf ihre Daten.

Deaktivieren oder Deaktivieren eines API-Tokens

Um ein API-Token vorübergehend zu deaktivieren, klicken Sie auf der API-Token-Listenseite auf das Menü „drei Punkte“ für die API und wählen Sie Disable. Sie können das Token jederzeit über dasselbe Menü wieder aktivieren und Enable auswählen.

Um ein API-Token dauerhaft zu entfernen, wählen Sie im Menü die Option „Widerruf“. Sie können ein entzogen Token nicht erneut aktivieren; Sie müssen ein neues Token erstellen.

Deaktivieren oder widerrufen und API-Token

Token für abgelaufenen API-Zugriff werden gedreht

Die Token für den API-Zugriff haben ein Ablaufdatum. Wenn ein API-Zugriffstoken abläuft, müssen Benutzer ein neues Token generieren (vom Typ Datenaufnahme mit Lese-/Schreibberechtigungen) und Telegraf neu konfigurieren, um das neu generierte Token anstelle des abgelaufenen Tokens zu verwenden. In den folgenden Schritten wird die Vorgehensweise beschrieben.

Kubernetes

Beachten Sie, dass diese Befehle den Standard-Namespace „netapp-Monitoring“ verwenden. Wenn Sie Ihren eigenen Namespace festgelegt haben, ersetzen Sie diesen Namespace in diesen und allen nachfolgenden Befehlen und Dateien.

Hinweis: Wenn Sie die neueste Installation von NetApp Kubernetes Monitoring Operator und ein erneuerbares API-Zugriffstoken verwenden, werden auslaufende Tokens automatisch durch neue/aktualisierte API-Zugriffs-Tokens ersetzt. Die unten aufgeführten manuellen Schritte müssen nicht ausgeführt werden.

  • Bearbeiten Sie den NetApp Kubernetes Monitoring Operator.

     kubectl -n netapp-monitoring edit agent agent-monitoring-netapp
    * Ändern Sie den Wert _spec.output-sink.API-key_ und ersetzen Sie das alte API-Token durch das neue API-Token.
    spec:
    …
      output-sink:
      - api-key:<NEW_API_TOKEN>

RHEL/CentOS und Debian/Ubuntu

  • Bearbeiten Sie die Telegraf-Konfigurationsdateien und ersetzen Sie alle Instanzen des alten API-Tokens durch das neue API-Token.

     sudo sed -i.bkup ‘s/<OLD_API_TOKEN>/<NEW_API_TOKEN>/g’ /etc/telegraf/telegraf.d/*.conf
    * Telegraf Neu Starten.
    sudo systemctl restart telegraf

Windows

  • Ersetzen Sie für jede Telegraf-Konfigurationsdatei in C:\Programme\telegraf\telegraf.d alle Instanzen des alten API-Tokens durch das neue API-Token.

    cp <plugin>.conf <plugin>.conf.bkup
    (Get-Content <plugin>.conf).Replace(‘<OLD_API_TOKEN>’, ‘<NEW_API_TOKEN>’) | Set-Content <plugin>.conf
  • Telegraf Neu Starten.

    Stop-Service telegraf
    Start-Service telegraf