ECS: So verwenden Sie den API-Befehl curl

Summary: Verwendung des cURL-Befehls (Application Programming Interface) mit GET- und PUT-Beispielen.

Αυτό το άρθρο ισχύει για Αυτό το άρθρο δεν ισχύει για Αυτό το άρθρο δεν συνδέεται με κάποιο συγκεκριμένο προϊόν. Δεν προσδιορίζονται όλες οι εκδόσεις προϊόντων σε αυτό το άρθρο.

Instructions

In diesem Wissensdatenbank-Artikel wird gezeigt, wie Sie curl-Befehle für die ECS-API-Nutzung verwenden.

In den Benutzerhandbüchern wie dem ECS-Administrationshandbuch oder dem Datenzugriffshandbuch finden Sie Beispiele für die API-Nutzung mit curl-Befehlen.

Hier wird gezeigt, wie Sie den Befehl curl für GET und PUT auf einer API verwenden. In diesem Beispiel die LDAPS-Zertifikat-API pro KB ECS: Anleitung zum Einrichten und Akzeptieren aller Zertifikate über LDAPS auf ECS.


Curl-Beispiel – Beispiel für LDAPS-Zertifikat-API:
Die LDAPS-Zertifikat-API verwendet die Management-IP und erlaubt keinen emcmonitor-Zugriff, sondern stattdessen den Root-Nutzer. Dies ist ein Beispiel für die ECS-API-Nutzung. Die LDAPS-Zertifikat-API befindet sich im "/vdc/truststore". Ihre API kann eine andere sein und sich an einem anderen Speicherort befinden.

Um die ECS-Einstellungen in Bezug auf die LDAPS-Zertifikateinstellungen zu prüfen, ermitteln Sie zunächst eine Node-Management-IP. Wenn für das UI-Management eine Netzwerktrennung vorhanden ist, wird das Symbol "getrackinfo -n" hat "mgmt"-Werte. Verwenden Sie die öffentliche .mgmt-IP-Adresse der Nodes, die Replikation und die Trennung des Datennetzwerks sind für diese Schritte nicht erforderlich:

# getrackinfo -n
Named networks
==============
Node ID       Network          Ip Address        Netmask            Gateway            VLAN               Interface
1            repl              10.xxx.xxx.11     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
1            mgmt              10.xxx.xxx.21     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
1            data              10.xxx.xxx.31     255.255.254.0      xxx.xxx.xxx.xxx    15                 public
2            repl              10.xxx.xxx.12     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
2            mgmt              10.xxx.xxx.22     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
2            data              10.xxx.xxx.32     255.255.254.0      xxx.xxx.xxx.xxx    15                 public
3            repl              10.xxx.xxx.13     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
3            mgmt              10.xxx.xxx.23     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
3            data              10.xxx.xxx.33     255.255.254.0      xxx.xxx.xxx.xxx    15                 public
4            repl              10.xxx.xxx.14     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
4            mgmt              10.xxx.xxx.24     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
4            data              10.xxx.xxx.34     255.255.254.0      xxx.xxx.xxx.xxx    15                 public

Wenn auf dem VDC keine Netzwerktrennung von public.mgmt vorhanden ist, verwenden Sie stattdessen die öffentliche IP-Adresse des Node. Beachten Sie, dass die Netzwerktrennungsadresse public.mgmt Vorrang hat, falls festgelegt.

# getrackinfo
Node private      Node              Public                                  BMC
Ip Address        Id       Status   Mac                 Ip Address          Mac                 Ip Address          Node Name
===============   ======   ======   =================   =================   =================   =================   =========
192.1XX.2XX.1     1        MA       a4:bf:xx:xx:xx:74   10.xx.xx.1          a4:bf:xx:xx:xx      192.1XX.2XX.101     provo-red
192.1XX.2XX.2     2        SA       a4:bf:xx:xx:xx:c8   10.xx.xx.2          a4:bf:xx:xx:xx      192.1XX.2XX.102     sandy-red
192.1XX.2XX.3     3        SA       a4:bf:xx:xx:xx:e0   10.xx.xx.3          a4:bf:xx:xx:xx      192.1XX.2XX.103     orem-red
192.1XX.2XX.4     4        SA       a4:bf:xx:xx:xx:56   10.xx.xx.4          a4:bf:xx:xx:xx      192.168.219.104     ogden-red

Verwenden Sie die erworbene Management-IP-Adresse, um das Root-Nutzertoken zu erhalten. Das Root-Nutzerkennwort ist erforderlich:

# curl -s -k -v -u root https://<NodeManagementIP>:4443/login 2>&1

Beispiel:

# curl -s -k -v -u root https://10.xxx.xxx.21:4443/login 2>&1
Enter host password for user 'root':
......

< HTTP/1.1 200 OK
< Date: Thu, 14 Jan 2021 13:51:24 GMT
< Content-Type: application/xml
< Content-Length: 93
< Connection: keep-alive
< X-SDS-AUTH-TOKEN: BAAcdWhGbnVRVjd1WlpmR0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAgAC0A8=
< X-SDS-AUTH-USERNAME: root
< X-SDS-AUTH-MAX-AGE: 28800
<
* Connection #0 to host 10.xxx.xxx.21 left intact
root

Wenn die Ausgabe nicht "HTTP/1.1 200 OK" ist, überprüfen Sie das Kennwort und die IP-Adresse und überprüfen Sie, ob eine Trennung vom UI-Managementnetzwerk über den Befehl "getrackinfo -n“. Erstellen Sie mit dem Root-Nutzertoken eine Tokenvariable. In einer neuen CLI-Sitzung muss ein gültiges Token aktualisiert werden:

# export TOKEN='X-SDS-AUTH-TOKEN: BAAcdWhGbnVRVjd1WlpmR0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAgAC0A8='

Um den Wert des Tokens zu testen, können Sie einen curl-Befehl ausführen:

# curl -k -X GET -H "$TOKEN"  https://10.xxx.xxx.21:4443/object/capacity  | xmllint --format -        
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                               Dload  Upload   Total   Spent    Left  Speed
100   176  100   176    0     0    249      0 --:--:-- --:--:-- --:--:--   250

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cluster_capacity>
  <totalFree_gb>100657</totalFree_gb>
  <totalProvisioned_gb>447005</totalProvisioned_gb>
</cluster_capacity>

Der Zweck der obigen Schritte besteht darin, das Root-Nutzertoken zu verwenden, um Curl-Zugriff auf den ECS-UI-Truststore zu erhalten. Weitere Informationen zum Hinzufügen eines nutzerdefinierten LDAP-Zertifikats finden Sie im ECS-Administratorhandbuch. In diesem Beispiel für die ECS-API-Nutzung befindet sich die LDAPS-Zertifikat-API im "/vdc/truststore". Ihre API befindet sich möglicherweise an einem anderen Speicherort.

 

Beispiel für Curl GET:

Rufen Sie die Truststore-Einstellungen mit einem curl GET-Befehl ab:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://<NodeManagementIP>:4443/vdc/truststore/settings

Beispiel:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore/settings
{"accept_all_certificates":false}


Im obigen Beispiel ist der Truststore "accept_all_certificates" auf false festgelegt ist. Das bedeutet, dass nur hochgeladene LDAPS-Zertifikate, die mit einem AD/LDAP-Serverzertifikat übereinstimmen, von ECS als vertrauenswürdig eingestuft werden können. Ein Benutzer möchte dies je nach Bedarf auf true oder false setzen. Um die LDAPS-Verbindung zu testen, können Sie sie auf "true" festlegen und die Nutzeranmeldung testen.

Erstellen Sie eine JSON-Datei, um die Truststore-Einstellungen mit einem curl-Befehl mit einer JSON-Payload zu ändern:

# sudo vi truststoresettings.json
# sudo cat truststoresettings.json
{"accept_all_certificates": "true"}


Das json.tool-Modul auf Python kann ein JSON-Dateiformat validieren. Wenn ein Fehler auftritt, ist die Datei möglicherweise keine JSON-Datei. In diesem Beispiel tritt kein Fehler auf und die Datei wird als formatierte JSON-Datei ausgegeben:

# python -m json.tool truststoresettings.json
{
    "accept_all_certificates": "true"
}

 

Beispiel für Curl PUT:

Führen Sie einen curl-Befehl mit einer JSON-Datei als Payload mit einem curl PUT-Befehl aus:

# curl -s -k -X PUT -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://:4443/vdc/truststore/settings -d @truststoresettings.json

Um zu überprüfen, ob er aktualisiert wurde, führen Sie den curl GET-Befehl aus:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore/settings
{"accept_all_certificates":true}

Επηρεαζόμενα προϊόντα

ECS

Προϊόντα

ECS Appliance
Ιδιότητες άρθρου
Article Number: 000194272
Article Type: How To
Τελευταία τροποποίηση: 04 Νοε 2025
Version:  4
Βρείτε απαντήσεις στις ερωτήσεις σας από άλλους χρήστες της Dell
Υπηρεσίες υποστήριξης
Ελέγξτε αν η συσκευή σας καλύπτεται από τις Υπηρεσίες υποστήριξης.