opened image

API - Mijiedarbība ar Boot From ISO

Šajā rakstā ir aprakstīts, kā veikt operāciju Boot from ISO, izmantojot API.

 

Boot from ISO izmantošana

 

Lai sāktu Boot From ISO procesu instancei, veicam pieprasījumu šādā formātā:

 

URL: 

https://api.zomro.com/

Metode: POST

Pieprasījuma ķermenis (Form-data):

ParametrsVērtības piemērsObligāts parametrsVērtības apraksts
funcinstances.fleio.boot_from_isoFunkcija Boot from ISO izmantošanai
auth21fc199...c43f71Sesijas tokens. Tas ir viens no autorizācijas veidiem. Vairāk par citiem veidiem aprakstīts šeit
outjsonAtbildes tips, kuru sagaidīt
sokokOperācijas apstiprinājums
elid5203773Instance ID
select_boot_from_isoffa4a7c1-9e36-49a1-8770-acfb2878141fAttēla UUID, kuru plānojam izmantot. Ieteicams izmantot attēlu ar ISO diska tipu
zonepubZonas 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):

ParametrsVērtība
funcinstances.fleio.boot_from_iso
auth21fc199...c43f71
outjson
sokok
elid5203773
select_boot_from_isoffa4a7c1-9e36-49a1-8770-acfb2878141f
zonepub

 

Šeit ir pieprasījuma piemērs, kuru var izpildīt no konsoles:

 

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

 

Pēc pieprasījuma izpildes redzam, ka instance ir pārgājusi uz «Boot from ISO» 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 boot from iso 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.boot_from_iso"' \
--form 'auth="d22467cab40fedf7674da126"' \
--form 'out="json"' \
--form 'elid="5203773"' 


Saņemam šādu atbildi:

 

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

 

Analizējot šo atbildes struktūru, iegūtie interesējošie dati atrodas šādā ligzdojumā:

 

doc.slist.[]

 

Kā redzam, mums ir pieejami attēli:

UUIDAttēla nosaukumsOS nosaukumsPiekļuves zona

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

 

Attēls ar piekļuves modifikatoru «pub» ir pieejams visiem lietotājiem. Savukārt ar «own» - pieejams tikai attēla īpašniekam.

 

Iziet no «Boot From ISO» režīma


  

Tāpat, lai izietu no «Boot From ISO» režīma, veicam šādu API pieprasījumu šādā formātā:

 

URL: 

https://api.zomro.com/

Metode: POST

Pieprasījuma ķermenis (Form-data):

ParametrsVērtības piemērsObligāts parametrsVērtības apraksts
funcinstances.fleio.unrescueFunkcija, lai izietu no «Boot from ISO» režīma
auth21fc199...c43f71Sesijas tokens. Tas ir viens no autorizācijas veidiem. Vairāk par citiem veidiem aprakstīts šeit
outjsonAtbildes tips, kuru sagaidīt
elid5203773Instance ID

 

Piemēram, atslēgsim «Boot From ISO» režīmu instancei ar ID 5203773.

Izpildīsim šā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: