opened image

API - Sąveika su Rescue

Šiame straipsnyje aprašyta, kaip atlikti Rescue operaciją naudojant API.

 

Rescue naudojimas

Norėdami pradėti Rescue procesą instance, atliekame užklausą tokio formato:

 

URL: 

https://api.zomro.com/

Metodas: POST

Užklausos kūnas (Form-data):

ParametrasPavyzdysPrivalomas parametrasReikšmės aprašymas
funcinstances.fleio.rescueTaipFunkcija, skirta naudoti Boot from ISO
auth21fc199...c43f71NeSesijos žetonas. Tai vienas iš autorizacijos būdų. Daugiau apie kitus būdus aprašyta čia
outjsonTaipAtsakymo tipas, kurio tikėtis
sokokTaipOperacijos patvirtinimas
elid5203773TaipInstance ID
select_bootf8f2573f-56c4-44c5-8469-84eee4aa64e7TaipUUID vaizdo, kurį planuojame naudoti
passwordMyPassword1NePrieigos prie serverio slaptažodis Rescue režime. Rekomenduojama nustatyti, kad turėtumėte prieigą prie serverio    
zonepubTaipZonos tipas, kur yra vaizdas. Galimi parametrai: «own», «pub».

 

Pavyzdys, kaip instance pereina į Boot From ISO režimą

Pavyzdžiui, naudojame paslaugą:

ir įkeliame šį vaizdą:
 

 

URL: 

https://api.zomro.com/

 

Metodas: POST

Užklausos kūnas (Form-data):

ParametrasReikšmė
funcinstances.fleio.rescue
auth21fc199...c43f71
outjson
sokok
elid5203773
select_boot_from_isof8f2573f-56c4-44c5-8469-84eee4aa64e7
zonepub
passwordMyPassword1

 

Štai pavyzdys užklausos, kurią galima atlikti iš konsolės:

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"'

 

Po užklausos atlikimo matome, kad instance perėjo į «Rescue» režimą. Tai patvirtina rezultatas nuotraukoje:

 

 

Taip pat, jei nepateikti parametro sok, bus atlikta užklausa peržiūros režimu. Atlikus šią užklausą, galima gauti prieinamus image, skirtus pereiti į rescue iš pasirinkto image. Pavyzdžiui, atliksime šią užklausą be parametro «sok»:

 

curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.rescue"' \
--form 'auth="43137b5f35a6ba4ee01f4a4e"' \
--form 'out="json"' \
--form 'elid="5203773"' 


Gausime šį atsakymą:

 

{
    "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"
                    },
                ]
            }
        ],
    
    }
}

 

Išanalizavus šią atsakymo struktūrą, gauti dominančius duomenis galima šioje hierarchijoje:

 

doc.slist.[]

 

Kaip matome, mums prieinami šie vaizdai:

UUIDVaizdo pavadinimasOS pavadinimasMatomumo sritis

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-6af546bebde6fooCentos 9 x64own

 

Image su prieigos modifikatoriumi «pub» yra prieinamas visiems vartotojams. Tačiau su «own» - prieinamas tik vaizdo savininkui.
  

Taip pat, norėdami išeiti iš «Rescue» režimo, atliekame šią API užklausą tokio formato:

 

URL: 

https://api.zomro.com/

Metodas: POST

Užklausos kūnas (Form-data):

ParametrasPavyzdysPrivalomas parametrasReikšmės aprašymas
funcinstances.fleio.unrescueTaipFunkcija, skirta išeiti iš «Rescue» režimo
auth21fc199...c43f71NeSesijos žetonas. Tai vienas iš autorizacijos būdų. Daugiau apie kitus būdus aprašyta čia
outjsonTaipAtsakymo tipas, kurio tikėtis
elid5203773TaipInstance ID

 

Kaip išjungti «Rescue» režimą

 

Pavyzdžiui, išjungsime «Rescue» režimą instance su ID 5203773.

Pabandykime atlikti šią užklausą konsolėje:

curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.unrescue"' \
--form 'auth="0b31d69ab7b7b4839dfd6506"' \
--form 'out="json"' \
--form 'elid="5203773"'

Po užklausos atlikimo matome, kad paslauga aktyvi:

​​​​​​​

 

Taip pat siūlome susipažinti su straipsniais, kurie gali būti naudingi sąveikai su Cloud VPS produktais naudojant API: