W tym artykule opisano, jak przeprowadzić operację Boot from ISO za pomocą API.
Użycie Boot from ISO
Aby uruchomić proces Boot From ISO dla instancji, wykonujemy zapytanie w następującym formacie:
URL:
https://api.zomro.com/
Metoda: POST
Treść zapytania (Form-data):
Parametr | Przykładowa wartość | Obowiązkowy parametr | Opis wartości |
func | instances.fleio.boot_from_iso | Tak | Funkcja do użycia Boot from ISO |
auth | 21fc199...c43f71 | Nie | Token sesji. Jest to jedna z opcji autoryzacji. Więcej informacji o innych opcjach znajduje się tutaj |
out | json | Tak | Typ odpowiedzi, której oczekiwać |
sok | ok | Tak | Potwierdzenie operacji |
elid | 5203773 | Tak | ID instancji |
select_boot_from_iso | ffa4a7c1-9e36-49a1-8770-acfb2878141f | Tak | UUID obrazu, który planujemy użyć. Zaleca się użycie obrazu z typem dysku ISO |
zone | pub | Tak | Typ strefy, w której znajduje się obraz. Dostępne parametry: «own», «pub». |
Przykład przejścia instancji w tryb Boot From ISO
Na przykład, użyjemy usługi:
i załadujemy następujący obraz:
URL:
https://api.zomro.com/
Metoda: POST
Treść zapytania (Form-data):
Parametr | Wartość |
func | instances.fleio.boot_from_iso |
auth | 21fc199...c43f71 |
out | json |
sok | ok |
elid | 5203773 |
select_boot_from_iso | ffa4a7c1-9e36-49a1-8770-acfb2878141f |
zone | pub |
Oto przykład zapytania, które można wykonać z konsoli:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.boot_from_iso"' \
--form 'auth="d22467cab40fedf7674da126"' \
--form 'out="json"' \
--form 'elid="5203773"' \
--form 'sok="ok"' \
--form 'select_boot_from_iso="ffa4a7c1-9e36-49a1-8770-acfb2878141f"' \
--form 'zone="pub"'
Po wykonaniu zapytania widzimy, że instancja przeszła w tryb «Boot from ISO». Potwierdzeniem tego jest wynik na zdjęciu:
Również, jeśli nie przekażemy parametru sok, zapytanie zostanie wykonane w trybie podglądu. Wykonując to zapytanie, można uzyskać dostępne obrazy do przejścia w tryb boot from iso z wybranego obrazu. Na przykład, wykonamy następujące zapytanie, ale bez przekazanego parametru «sok»:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.boot_from_iso"' \
--form 'auth="d22467cab40fedf7674da126"' \
--form 'out="json"' \
--form 'elid="5203773"'
Otrzymujemy następującą odpowiedź:
{
"doc": {
...
"slist": [
{
"$name": "zone",
"val": [
{
"$key": "own",
"$": "own"
},
{
"$key": "pub",
"$": "pub"
}
]
},
{
"$name": "select_boot_from_iso",
"val": [
{
"$depend": "own",
"$name": "myImage",
"$key": "35904b88-7c1f-47c6-911c-1198fbc6afeb",
"$": "Solaris "
},
{
"$depend": "own",
"$name": "boo",
"$key": "696c4ee2-6d19-4281-b301-599c220cd4f3",
"$": "AlmaLinux "
},
{
"$depend": "own",
"$name": "foo",
"$key": "5b71c86b-c384-4e6f-9fd8-3f22d000c2ff",
"$": "AlmaLinux "
},
{
"$depend": "pub",
"$key": "ffa4a7c1-9e36-49a1-8770-acfb2878141f",
"$": "[ISO] systemrescue-11.00-amd64"
}
]
}
],
}
}
Analizując tę strukturę odpowiedzi, interesujące nas dane znajdują się w następującej zagnieżdżeniu:
doc.slist.[]
Jak widać, mamy dostępne obrazy:
UUID | Nazwa obrazu | Nazwa OS | Obszar widoczności |
35904b88-7c1f-47c6-911c-1198fbc6afeb | myImage | Solaris | own |
696c4ee2-6d19-4281-b301-599c220cd4f3 | boo | AlmaLinux | own |
5b71c86b-c384-4e6f-9fd8-3f22d000c2ff | foo | AlmaLinux | own |
ffa4a7c1-9e36-49a1-8770-acfb2878141f | - | [ISO] systemrescue-11.00-amd64 | pub |
Obraz z modyfikatorem dostępu «pub» jest dostępny dla wszystkich użytkowników. Natomiast z «own» - dostępny tylko dla właściciela obrazu.
Wyjście z trybu «Boot From ISO»
Również, aby wyjść z trybu «Boot From ISO», wykonujemy następujące zapytanie API w następującym formacie:
URL:
https://api.zomro.com/
Metoda: POST
Treść zapytania (Form-data):
Parametr | Przykładowa wartość | Obowiązkowy parametr | Opis wartości |
func | instances.fleio.unrescue | Tak | Funkcja do wyjścia z trybu «Boot from ISO» |
auth | 21fc199...c43f71 | Nie | Token sesji. Jest to jedna z opcji autoryzacji. Więcej informacji o innych opcjach znajduje się tutaj |
out | json | Tak | Typ odpowiedzi, której oczekiwać |
elid | 5203773 | Tak | ID instancji |
Na przykład, wyłączymy tryb «Boot From ISO» dla instancji z ID 5203773.
Spróbujemy wykonać następujące zapytanie w konsoli:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.unrescue"' \
--form 'auth="0b31d69ab7b7b4839dfd6506"' \
--form 'out="json"' \
--form 'elid="5203773"'
Po wykonaniu zapytania widzimy, że usługa jest aktywna:
Również proponujemy zapoznać się z artykułami, które mogą być przydatne do interakcji z produktami Cloud VPS za pomocą API:
- API - Tworzenie usługi
- API - Uzyskiwanie informacji o dostępnych taryfach i ich parametrach
- API - Operacja Start & Stop
- API - Operacja Reboot
- API - Operacja Rebuild
- API - Operacja Delete
- API - Interakcja z Image
- API - Interakcja z Backup Schedule
- API - Interakcja z Rescue
- API - Interakcja z Backup
- API - Interakcja z Snapshots