ECS: Jak korzystać z polecenia API curl

Summary: Jak używać polecenia curl interfejsu programowania aplikacji (API) z przykładami GET i PUT.

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

Instructions

W tym artykule wiedzy pokazano, jak używać poleceń curl do korzystania z interfejsu API ECS.

W podręcznikach użytkownika, takich jak Podręcznik administracyjny ECS lub Podręcznik dostępu do danych, znajdują się przykłady użycia interfejsu API z poleceniami curl.

Zostanie wyświetlony sposób użycia polecenia curl do GET i PUT w interfejsie API. W tym przykładzie interfejs API certyfikatów LDAPS na bazę wiedzy ECS: Jak skonfigurować i zaakceptować wszystkie certyfikaty za pośrednictwem LDAPS w ECS.


Przykład curl — przykład
interfejsu API certyfikatu LDAPSInterfejs API certyfikatów LDAPS używa adresu IP zarządzania i nie zezwala na dostęp do emcmonitor, ale zamiast tego do użytkownika root. Jest to przykład użycia interfejsu API ECS, interfejs API certyfikatu LDAPS znajduje się w "/vdc/truststore". Twój interfejs API może być inny i znajdować się w innej lokalizacji.

Aby sprawdzić ustawienia ECS dotyczące ustawień certyfikatu LDAPS, najpierw uzyskaj adres IP zarządzania węzłami do użycia. Jeśli istnieje separacja sieci dla zarządzania interfejsem użytkownika, "getrackinfo -n" ma wartości "mgmt". Użyj adresu IP węzłów public.mgmt, replikacji i separacji sieci danych nie są wymagane w przypadku tych kroków:

# 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

Jeśli w centrum VDC nie ma separacji sieci public.mgmt, zamiast tego użyj publicznego adresu IP węzła. Należy pamiętać, że adres separacji sieci public.mgmt ma pierwszeństwo, jeśli jest ustawiony.

# 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

Użyj uzyskanego adresu IP zarządzania, aby uzyskać token użytkownika root (wymagane jest hasło użytkownika root):

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

Przykład:

# 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

Jeśli dane wyjściowe nie są "HTTP/1.1 200 OK", sprawdź hasło i adres IP, sprawdź, czy istnieje separacja sieci zarządzania interfejsem użytkownika z polecenia "getrackinfo -n”. Za pomocą tokenu użytkownika głównego utwórz zmienną tokenu, prawidłowy token musi zostać zaktualizowany, jeśli w nowej sesji interfejsu wiersza polecenia:

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

Aby sprawdzić wartość tokena, można uruchomić polecenie curl:

# 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>

Celem powyższych kroków jest użycie tokenu użytkownika głównego w celu uzyskania dostępu curl do magazynu zaufanych interfejsu użytkownika ECS. Więcej informacji na temat dodawania niestandardowego certyfikatu LDAP można znaleźć w podręczniku administratora ECS. W tym przykładzie użycia interfejsu API ECS interfejs API certyfikatu LDAPS znajduje się w "/vdc/truststore". Twój interfejs API może znajdować się w innej lokalizacji.

 

Przykład curl GET:

Pobierz ustawienia truststore za pomocą polecenia curl GET:

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

Przykład:

# 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}


W powyższym przykładzie truststore "accept_all_certificates" jest ustawiona na wartość false. Oznacza to, że tylko przesłane certyfikaty LDAPS zgodne z certyfikatem serwera AD/LDAP mogą być zaufane przez ECS. Użytkownik może chcieć, aby to ustawienie było prawdziwe lub fałszywe w zależności od potrzeb. Aby przetestować połączenie LDAPS, należy ustawić wartość true i przetestować login użytkownika.

Utwórz plik json, aby zmienić ustawienia magazynu zaufania za pomocą polecenia curl z ładunkiem json:

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


Moduł json.tool w języku Python może zweryfikować format pliku json. Jeśli wystąpi błąd, plik ten może nie być plikiem json. W tym przykładzie nie ma błędu i wyświetlany jest plik, więc jest to sformatowany plik json:

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

 

Przykład curl PUT:

Uruchom polecenie curl PUT z plikiem json jako ładunkiem:

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

Aby sprawdzić, czy aktualizacja została przeprowadzona, uruchom polecenie curl GET:

# 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
Υπηρεσίες υποστήριξης
Ελέγξτε αν η συσκευή σας καλύπτεται από τις Υπηρεσίες υποστήριξης.