opened image

API - Interakcja z Boot From ISO

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):

ParametrPrzykładowa wartośćObowiązkowy parametrOpis wartości
funcinstances.fleio.boot_from_isoTakFunkcja do użycia Boot from ISO
auth21fc199...c43f71NieToken sesji. Jest to jedna z opcji autoryzacji. Więcej informacji o innych opcjach znajduje się tutaj
outjsonTakTyp odpowiedzi, której oczekiwać
sokokTakPotwierdzenie operacji
elid5203773TakID instancji
select_boot_from_isoffa4a7c1-9e36-49a1-8770-acfb2878141fTakUUID obrazu, który planujemy użyć. Zaleca się użycie obrazu z typem dysku ISO
zonepubTakTyp 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):

ParametrWartość
funcinstances.fleio.boot_from_iso
auth21fc199...c43f71
outjson
sokok
elid5203773
select_boot_from_isoffa4a7c1-9e36-49a1-8770-acfb2878141f
zonepub

 

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:

UUIDNazwa obrazuNazwa OSObszar widoczności

35904b88-7c1f-47c6-911c-1198fbc6afeb

myImageSolarisown

696c4ee2-6d19-4281-b301-599c220cd4f3

booAlmaLinuxown

5b71c86b-c384-4e6f-9fd8-3f22d000c2ff

fooAlmaLinuxown

ffa4a7c1-9e36-49a1-8770-acfb2878141f

-[ISO] systemrescue-11.00-amd64pub

 

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):

ParametrPrzykładowa wartośćObowiązkowy parametrOpis wartości
funcinstances.fleio.unrescueTakFunkcja do wyjścia z trybu «Boot from ISO»
auth21fc199...c43f71NieToken sesji. Jest to jedna z opcji autoryzacji. Więcej informacji o innych opcjach znajduje się tutaj
outjsonTakTyp odpowiedzi, której oczekiwać
elid5203773TakID 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: