ECS: Så här använder du API-curl-kommandot

Riepilogo: Så här använder du curl-kommandot Application Programming Interface (API) med GET- och PUT-exempel.

Questo articolo si applica a Questo articolo non si applica a Questo articolo non è legato a un prodotto specifico. Non tutte le versioni del prodotto sono identificate in questo articolo.

Istruzioni

Den här kunskapsartikeln visar hur du använder curl-kommandon för ECS API-användning.

I användarhandböcker som ECS-administrationsguiden eller dataåtkomstguiden finns det exempel på API-användning med curl-kommandon.

Här visas hur du använder curl kommandot för att GET och PUT på ett API. I det här exemplet är LDAPS-certifikat-API:et per KB ECS: Konfigurera och acceptera alla certifikat via LDAPS på ECS.


Curl-exempel – Exempel på LDAPS-certifikat-API:
API:et för LDAPS-certifikat använder IP-adressen för hantering och tillåter inte emcmonitor-åtkomst, utan rotanvändaren i stället. Det här är ett exempel på ECS API-användning, LDAPS-certifikat-API:et finns i "/vdc/truststore". Ditt API kan vara annorlunda och på en annan plats.

Om du vill undersöka ECS-inställningarna för LDAPS-certifikatinställningarna måste du först skaffa en IP-adress för nodhantering som du kan använda. Om det finns nätverksseparation för användargränssnittshanteringen, "getrackinfo -n" har "mgmt"-värden. Använd noderna public.mgmt IP-adress, replikering och datanätverksseparation krävs inte för följande steg:

# 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

Om det inte finns någon separation för nätverket public.mgmt på VDC använder du nodens offentliga IP-adress i stället. Observera att public.mgmt-nätverksseparationsadressen har företräde om den har angetts.

# 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

Använd den IP-adress för hantering som hämtats för att hämta rotanvändartoken, rotanvändarlösenord krävs:

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

Exempel:

# 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

Om utdata inte är "HTTP/1.1 200 OK", kontrollera lösenordet och IP-adressen, kontrollera om det finns nätverksseparation för UI-hantering från kommandot "getrackinfo -n”. Med rotanvändartoken skapar du en tokenvariabel, en giltig token måste uppdateras om i en ny CLI-session:

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

Om du vill testa token is-värdet kan du köra ett curl-kommando:

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

Syftet med stegen ovan är att använda rotanvändartoken för att få curl-åtkomst till ECS-gränssnittets förtroendearkiv. Mer information om hur du lägger till anpassat LDAP-certifikat finns i ECS-administratörshandboken. I det här exemplet på ECS API-användning finns LDAPS-certifikat-API:t i "/vdc/truststore". Ditt API kan finnas på en annan plats.

 

Curl GET-exempel:

Hämta truststore-inställningarna med ett curl GET-kommando:

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

Exempel:

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


I exemplet ovan är truststore "accept_all_certificates" är inställt på false. Det innebär att endast uppladdade LDAPS-certifikat som matchar ett AD/LDAP-servercertifikat får vara betrodda av ECS. En användare kanske vill ha den här uppsättningen till sant eller falskt beroende på deras behov. Om du vill testa LDAPS-anslutningen kan du validera den genom att ställa in den på true och testa användarens inloggning.

Skapa en json-fil för att ändra truststore-inställningarna med ett curl-kommando med en json-nyttolast:

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


Modulen json.tool på python kan verifiera ett json-filformat. Om det uppstår ett fel kanske filen inte är en json-fil. I det här exemplet finns det inget fel och matar ut filen, så det är en formaterad json-fil:

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

 

Curl PUT-exempel:

Kör ett curl-kommando med en json-fil som nyttolast med ett curl PUT-kommando:

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

Kontrollera att den är uppdaterad genom att köra curl GET-kommandot:

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

Prodotti interessati

ECS

Prodotti

ECS Appliance
Proprietà dell'articolo
Numero articolo: 000194272
Tipo di articolo: How To
Ultima modifica: 04 nov 2025
Versione:  4
Trova risposta alle tue domande dagli altri utenti Dell
Support Services
Verifica che il dispositivo sia coperto dai Servizi di supporto.