ამ სტატიაში აღწერილია, როგორ განახორციელოთ Rescue ოპერაცია API-ის გამოყენებით.
Rescue-ის გამოყენება
იმისათვის, რომ instance-ისთვის Rescue პროცესი დაიწყოთ, შეასრულეთ შემდეგი ფორმატის მოთხოვნა:
URL:
https://api.zomro.com/
მეთოდი: POST
მოთხოვნის სხეული (Form-data):
პარამეტრი | მნიშვნელობის მაგალითი | სავალდებულო პარამეტრი | მნიშვნელობის აღწერა |
func | instances.fleio.rescue | დიახ | ფუნქცია Boot from ISO-ის გამოყენებისთვის |
auth | 21fc199...c43f71 | არა | სესიის ტოკენი. ეს არის ავტორიზაციის ერთ-ერთი ვარიანტი. მეტი ინფორმაცია სხვა ვარიანტების შესახებ შეგიძლიათ იხილოთ აქ |
out | json | დიახ | მოსალოდნელი პასუხის ტიპი |
sok | ok | დიახ | ოპერაციის დადასტურება |
elid | 5203773 | დიახ | instance-ის ID |
select_boot | f8f2573f-56c4-44c5-8469-84eee4aa64e7 | დიახ | გამოსახულების UUID, რომელიც გვსურს გამოვიყენოთ |
password | MyPassword1 | არა | სერვერზე წვდომის პაროლი Rescue რეჟიმში. რეკომენდებულია მისი დაყენება, რათა გქონდეთ წვდომა სერვერზე |
zone | pub | დიახ | ზონის ტიპი, სადაც გამოსახულება მდებარეობს. ხელმისაწვდომი პარამეტრები: «own», «pub». |
Instance-ის Boot From ISO რეჟიმში გადასვლის მაგალითი
მაგალითისთვის, გამოვიყენოთ სერვისი:
და ჩავტვირთოთ შემდეგი გამოსახულება:
URL:
https://api.zomro.com/
მეთოდი: POST
მოთხოვნის სხეული (Form-data):
პარამეტრი | მნიშვნელობა |
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 |
აქ არის მოთხოვნის მაგალითი, რომელიც შეგიძლიათ შეასრულოთ კონსოლიდან:
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"'
მოთხოვნის შესრულების შემდეგ, ვხედავთ, რომ instance გადავიდა «Rescue» რეჟიმში. ამის დადასტურება არის შედეგი ფოტოზე:
ასევე, თუ არ გადავცემთ პარამეტრს sok, მოთხოვნა შესრულდება წინასწარი დათვალიერების რეჟიმში. ამ მოთხოვნის შესრულებისას, შეგვიძლია მივიღოთ ხელმისაწვდომი გამოსახულებები, რათა გადავიდეთ rescue რეჟიმში არჩეული გამოსახულებიდან. მაგალითად, შევასრულოთ შემდეგი მოთხოვნა, მაგრამ პარამეტრის «sok» გარეშე:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.rescue"' \
--form 'auth="43137b5f35a6ba4ee01f4a4e"' \
--form 'out="json"' \
--form 'elid="5203773"'
ვიღებთ შემდეგ პასუხს:
{
"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"
},
]
}
],
}
}
ამ პასუხის სტრუქტურის ანალიზის შემდეგ, მიღებული საინტერესო მონაცემები შემდეგი ჩაშენების დონეზეა:
doc.slist.[]
როგორც ვხედავთ, ჩვენთვის ხელმისაწვდომია გამოსახულებები:
UUID | Image-ის სახელი | OS-ის სახელი | ხილვადობის ზონა |
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 |
Image მოდიფიკატორით «pub» ხელმისაწვდომია ყველა მომხმარებლისთვის. ხოლო «own» - ხელმისაწვდომია მხოლოდ გამოსახულების მფლობელისთვის.
ასევე, Rescue რეჟიმიდან გამოსვლისთვის შეასრულეთ შემდეგი API მოთხოვნა, შემდეგი ფორმატის:
URL:
https://api.zomro.com/
მეთოდი: POST
მოთხოვნის სხეული (Form-data):
პარამეტრი | მნიშვნელობის მაგალითი | სავალდებულო პარამეტრი | მნიშვნელობის აღწერა |
func | instances.fleio.unrescue | დიახ | ფუნქცია Rescue რეჟიმიდან გამოსვლისთვის |
auth | 21fc199...c43f71 | არა | სესიის ტოკენი. ეს არის ავტორიზაციის ერთ-ერთი ვარიანტი. მეტი ინფორმაცია სხვა ვარიანტების შესახებ შეგიძლიათ იხილოთ აქ |
out | json | დიახ | მოსალოდნელი პასუხის ტიპი |
elid | 5203773 | დიახ | instance-ის ID |
როგორ გამოვრთოთ Rescue რეჟიმი
მაგალითისთვის, გამოვრთოთ Rescue რეჟიმი Instance-ისთვის ID 5203773.
ვცადოთ შემდეგი მოთხოვნის შესრულება კონსოლიდან:
curl --location 'https://api.zomro.com/' \
--form 'func="instances.fleio.unrescue"' \
--form 'auth="0b31d69ab7b7b4839dfd6506"' \
--form 'out="json"' \
--form 'elid="5203773"'
მოთხოვნის შესრულების შემდეგ, ვხედავთ, რომ სერვისი აქტიურია:
ასევე გთავაზობთ შეისწავლოთ სტატიები, რომლებიც შეიძლება სასარგებლო იყოს API-ის გამოყენებით Cloud VPS პროდუქტებთან ურთიერთობისთვის:
- API - სერვისის შექმნა
- API - ხელმისაწვდომი ტარიფების და მათი პარამეტრების შესახებ ინფორმაციის მიღება
- API - ოპერაცია Start & Stop
- API - ოპერაცია Reboot
- API - ოპერაცია Rebuild
- API - ოპერაცია Delete
- API - Image-თან ურთიერთობა
- API - Backup Schedule-თან ურთიერთობა
- API - Backup-თან ურთიერთობა
- API - Snapshots-თან ურთიერთობა
- API - Boot From ISO-თან ურთიერთობა