Šajā rakstā ir aprakstīts, kā veikt Rescue operāciju, izmantojot API.
Rescue izmantošana
Lai sāktu Rescue procesu instancei, veicam pieprasījumu šādā formātā:
URL:
https://api.zomro.com/
Metode: POST
Pieprasījuma ķermenis (Form-data):
Parametrs | Vērtības piemērs | Obligāts parametrs | Vērtības apraksts |
func | instances.fleio.rescue | Jā | Funkcija Boot from ISO izmantošanai |
auth | 21fc199...c43f71 | Nē | Sesijas tokens. Tas ir viens no autorizācijas veidiem. Vairāk par citiem veidiem aprakstīts šeit |
out | json | Jā | Atbildes tips, kuru sagaidīt |
sok | ok | Jā | Operācijas apstiprinājums |
elid | 5203773 | Jā | Instance ID |
select_boot | f8f2573f-56c4-44c5-8469-84eee4aa64e7 | Jā | Attēla UUID, kuru plānojam izmantot |
password | MyPassword1 | Nē | Piekļuves parole serverim Rescue režīmā. Ieteicams uzstādīt, lai būtu piekļuve serverim |
zone | pub | Jā | Zonas tips, kur atrodas attēls. Pieejamie parametri: «own», «pub». |
Piemērs Instance pārejai uz Boot From ISO režīmu
Piemēram, izmantojam pakalpojumu:
un ielādējam šādu attēlu:
URL:
https://api.zomro.com/
Metode: POST
Pieprasījuma ķermenis (Form-data):
Parametrs | Vērtība |
func | instances.fleio.rescue |
auth | 21fc199...c43f71 |
out | json |
sok | ok |
elid | 5203773 |
select_boot_from_iso | f8f2573f-56c4-44c5-8469-84eee4aa64e7 |
zone | pub |
password | MyPassword1 |
Šeit ir pieprasījuma piemērs, kuru var izpildīt no konsoles:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.rescue"' \
--form 'auth="43137b5f35a6ba4ee01f4a4e"' \
--form 'out="json"' \
--form 'elid="5203773"' \
--form 'sok="ok"' \
--form 'select_boot="f8f2573f-56c4-44c5-8469-84eee4aa64e7"' \
--form 'password="MyPassword1"' \
--form 'zone="pub"'
Pēc pieprasījuma izpildes redzam, ka instance ir pārgājusi uz «Rescue» režīmu. To apstiprina rezultāts fotoattēlā:
Tāpat, ja netiek nodots parametrs sok, pieprasījums tiks izpildīts priekšskatījuma režīmā. Izpildot šo pieprasījumu, var iegūt pieejamos attēlus, lai pārietu uz rescue no izvēlētā attēla. Piemēram, izpildīsim šādu pieprasījumu, bet bez nodotā parametra «sok»:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.rescue"' \
--form 'auth="43137b5f35a6ba4ee01f4a4e"' \
--form 'out="json"' \
--form 'elid="5203773"'
Saņemam šādu atbildi:
{
"doc": {
...
"slist": [
{
"$name": "zone",
"val": [
{
"$key": "pub",
"$": "pub"
},
{
"$key": "own",
"$": "own"
}
]
},
{
"$name": "select_boot",
"val": [
{
"$depend": "pub",
"$key": "f8f2573f-56c4-44c5-8469-84eee4aa64e7",
"$": "Ubuntu 22.04"
},
{
"$depend": "pub",
"$key": "0bf4deb2-855c-4863-8518-6006d804adbb",
"$": "Debian 10"
},
{
"$depend": "pub",
"$key": "18d0ee2e-4d57-4f40-9b56-03c1773b5831",
"$": "AlmaLinux 8"
},
{
"$depend": "pub",
"$key": "1d9dda4c-34b0-4304-a90a-8f3018722fa2",
"$": "Rocky-Linux-8"
},
{
"$depend": "pub",
"$key": "2af0af94-0e6e-4ef3-8837-d41fdbfa3564",
"$": "Windows Server 2016"
},
{
"$depend": "pub",
"$key": "3010ae60-0185-4021-98da-f50013147ebd",
"$": "Debian 11"
},
{
"$depend": "pub",
"$key": "479c96f1-ccc6-47a2-952c-c9e3bbdc8d07",
"$": "Ubuntu 20.04"
},
{
"$depend": "pub",
"$key": "5da4ad83-45f6-4c0e-9a7e-7a7c18b2be6c",
"$": "AlmaLinux 9"
},
{
"$depend": "pub",
"$key": "7d7911e3-7178-4f36-a308-d841db5fe654",
"$": "CentOS Stream 9"
},
{
"$depend": "pub",
"$key": "92fabac2-69cc-46ad-8439-c377e0c90632",
"$": "Ubuntu 23.04"
},
{
"$depend": "pub",
"$key": "93878ba5-6b9e-4924-a4be-34edb623f808",
"$": "Debian 12"
},
{
"$depend": "pub",
"$key": "a8b7bcb3-6698-4264-b413-f2b866a46a70",
"$": "Rocky-Linux-9"
},
{
"$depend": "pub",
"$key": "b10434c0-d839-428f-a919-cac733fd6552",
"$": "Windows Server 2019"
},
{
"$depend": "pub",
"$key": "bda2467e-e192-4e4e-becc-cda2e71b9767",
"$": "Windows Server 2022"
},
{
"$depend": "own",
"$name": "foo",
"$key": "a9e7c223-5f11-4546-a298-6af546bebde6",
"$": "Centos 9 x64"
},
]
}
],
}
}
Analizējot šo atbildes struktūru, iegūtie interesējošie dati atrodas šādā ligzdojumā:
doc.slist.[]
Kā redzam, mums ir pieejami attēli:
UUID | Attēla nosaukums | OS nosaukums | Redzamības zona |
f8f2573f-56c4-44c5-8469-84eee4aa64e7 |
- |
Ubuntu 22.04 |
pub |
0bf4deb2-855c-4863-8518-6006d804adbb |
- |
Debian 10 |
pub |
18d0ee2e-4d57-4f40-9b56-03c1773b5831 |
- |
AlmaLinux 8 |
pub |
1d9dda4c-34b0-4304-a90a-8f3018722fa2 |
- |
Rocky-Linux-8 |
pub |
2af0af94-0e6e-4ef3-8837-d41fdbfa3564 |
- |
Windows Server 2016 |
pub |
3010ae60-0185-4021-98da-f50013147ebd |
- |
Debian 11 |
pub |
479c96f1-ccc6-47a2-952c-c9e3bbdc8d07 |
- |
Ubuntu 20.04 |
pub |
5da4ad83-45f6-4c0e-9a7e-7a7c18b2be6c |
- |
AlmaLinux 9 |
pub |
7d7911e3-7178-4f36-a308-d841db5fe654 |
- |
CentOS Stream 9 |
pub |
92fabac2-69cc-46ad-8439-c377e0c90632 |
- |
Ubuntu 23.04 |
pub |
93878ba5-6b9e-4924-a4be-34edb623f808 |
- |
Debian 12 |
pub |
a8b7bcb3-6698-4264-b413-f2b866a46a70 |
- |
Rocky-Linux-9 |
pub |
b10434c0-d839-428f-a919-cac733fd6552 |
- |
Windows Server 2019 |
pub |
bda2467e-e192-4e4e-becc-cda2e71b9767 |
- |
Windows Server 2022 |
pub |
a9e7c223-5f11-4546-a298-6af546bebde6 | foo | Centos 9 x64 | own |
Attēls ar piekļuves modifikatoru «pub» ir pieejams visiem lietotājiem. Savukārt «own» - pieejams tikai attēla īpašniekam.
Tāpat, lai izietu no «Rescue» režīma, veicam šādu API pieprasījumu šādā formātā:
URL:
https://api.zomro.com/
Metode: POST
Pieprasījuma ķermenis (Form-data):
Parametrs | Vērtības piemērs | Obligāts parametrs | Vērtības apraksts |
func | instances.fleio.unrescue | Jā | Funkcija, lai izietu no «Rescue» režīma |
auth | 21fc199...c43f71 | Nē | Sesijas tokens. Tas ir viens no autorizācijas veidiem. Vairāk par citiem veidiem aprakstīts šeit |
out | json | Jā | Atbildes tips, kuru sagaidīt |
elid | 5203773 | Jā | Instance ID |
Kā atslēgt «Rescue» režīmu
Piemēram, atslēgsim «Rescue» režīmu instancei ar ID 5203773.
Mēģināsim izpildīt šādu pieprasījumu konsolē:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.unrescue"' \
--form 'auth="0b31d69ab7b7b4839dfd6506"' \
--form 'out="json"' \
--form 'elid="5203773"'
Pēc pieprasījuma izpildes redzam, ka pakalpojums ir aktīvs:
Tāpat piedāvājam izpētīt rakstus, kas var būt noderīgi mijiedarbībai ar Cloud VPS produktiem, izmantojot API:
- API - Pakalpojuma izveide
- API - Informācijas iegūšana par pieejamajiem tarifiem un to parametriem
- API - Operācija Start & Stop
- API - Operācija Reboot
- API - Operācija Rebuild
- API - Operācija Delete
- API - Mijiedarbība ar Image
- API - Mijiedarbība ar Backup Schedule
- API - Mijiedarbība ar Backup
- API - Mijiedarbība ar Snapshots
- API - Mijiedarbība ar Boot From ISO