Invapi API FAQ¶
Այս հոդվածում
Ակնթարթային սերվերի պատվիրման ալգորիթմ eq/order_instance-ով¶
-
Ստեղծեք client API key;
-
Ընտրեք սերվերի տեղադիրքը՝ NL/US/FI/DE/IS/TR/UK/ES/IT/PL/CH (Նիդեռլանդներ, ԱՄՆ, Ֆինլանդիա, Գերմանիա, Իսլանդիա, Թուրքիա, Միացյալ Թագավորություն, Իսպանիա, Իտալիա, Լեհաստան, Շվեյցարիա);
-
Օգտագործեք [presets/list](../apidocs/presets.md] հարցումը՝ տեղակայման համար նախատեսված preset ID-ն որոշելու համար:
Այս ID-ն հետագայում կօգտագործվի որպես
instance_idկամpreset: Օրինակ, եթե"id": 108, արժեքները կլինենinstance_id=108ևpreset=108; -
Օգտագործեք [os/list](../apidocs/os.md] հարցումը՝ ձեր տեղադրվող օպերացիոն համակարգի
os_id-ն կամos_name-ը որոշելու համար՝ օգտագործելով 3-րդ քայլում ստացված instance ID-ն կամ դրա փոխարինողը (alias): Օրինակ, Ubuntu 22.04-ի համար այս արժեքը պատասխանում կվերադարձվի որպես"id": 187և"alias": ubuntu: Դուք կարող եք նաև գտնել OS ID-ները և տեղեկություն՝ թե որ սերվերի տեսակների համար են դրանք հասանելի նշված սպասարկվող OS-ների ցանկում;Նշում
Եթե չեք ցանկանում օպերացիոն համակարգ տեղադրել տեղակայման ընթացքում, հետագայում նշեք
own_os=1: -
Օգտագործեք [software/list](../apidocs/software.md] հարցումը՝ այս instance-ի համար հասանելի ծրագրային ապահովումը նույնականացնելու և դրա ID-ն (
soft_idպարամետր) ստանալու համար: Օրինակ, WordPress CMS-ի դեպքում հարցման արդյունքում արժեքը կլինի"id": 20: Դուք կարող եք գտնել տեղադրվող ծրագրային ապահովման ցանկը և դրա տեղադրման պարամետրերը (ID, սերվերի տեսակ, պահանջվող RAM և սկավառակի տարածք, CPU միջուկների քանակ և այլն) աջակցվող ծրագրային ապահովման ցանկում;Նշում
Դուք կարող եք բաց թողնել ծրագրային ապահովման նախնական տեղադրումը տեղակայման ընթացքում, եթե ցանկանում եք դա անել ձեռքով հետագայում:
-
Օգտագործեք [traffic_plans/list](../apidocs/traffic_plans.md] հարցումը՝ ձեր սերվերի համար ցանցային տրաֆիկի պլանի ID-ն ստանալու համար: Օրինակ,
3Tb traffic (1Gbps) VMպլանի դեպքում կանչը կվերադարձնի"id": 25; -
Ստացեք
$HOSTKEY_TOKENսեսիայի թոքենը auth/login հարցման միջոցով; -
Պատվիրեք սերվերը՝ ներդրելով 2-7 քայլերում ստացված տվյալները [eq/order_instance](../apidocs/eq.md] հարցման մեջ: Դուք պետք է նշեք ձեր
rootգաղտնաբառը, սերվերի հաշվարկային ժամանակահատվածը՝deploy_period(ամսական, եռամսյակային, 6 ամսական կամ տարեկան), և արդոք ցանկանում եք ստանալ էլեկտրոնային փոստի ծանուցում տեղակայման ժամանակ՝deploy_notify-ի միջոցով (մենք խորհուրդ ենք տալիս սա սահմանել որպեսtrueլռելակարգով):
Լրացուցիչ պարամետրերը կարող են նշվել որպես հավելյալ, ինչպես նկատի է eq/order_instance կանչը:
Ստորև ներկայացված է WordPress (id=20) և Debian 11 (id=108) օգտագործմայց սերվերի պատվիրման օրինակը:
POST հարցման օրինակ՝ Ակնթարթային սերվերի պատվիրում, cURL
curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=order_instance" \
--data "token=eeee51003b1d81d2eca65660735c0531" \
--data "deploy_period=monthly" \
--data "deploy_notify=true" \
--data "preset=108" \
--data "location_name=NL" \
--data "os_id=180" \
--data "soft_id=20" \
--data "traffic_plan=25" \
--data "root_pass=mdLus8Ng" \
Դրական պատասխանի օրինակ
Invapi-ն կընտրի/կստեղծի համապատասխան սերվերը նշված տեղակայում և կկանցուցի տեղակայումը: Նախքան որևէ տեղադրում, կկատարվի ստուգում՝ թե արդյոք վարկային հաշվեկշռում են բավարար միջոցներ (եթե automatic payments from credit balance միացված է), կամ կհայտարարի հաշիվ (invoice): Եթե տեղակայումը հաջող է, նոր սերվերը կկապվի հաճախորդի հաշվին: Հաճախորդը կստանա էլեկտրոնային փոստով ծանուցում՝ հարցման դեպքում: Բոլոր վճարված լիցենզիաները կավելացվեն որպես պատվերի հավելումներ:
Նշում
Եթե առկա է անհամատեղելիություն ընտրված օպերացիոն համակարգի և տեղադրվող ծրագրային ապահովման միջև, դուք կստանաք հետևյալ պես հաղորդագրություն.
{
"result": -1,
"error": "reinstall: extra software Odoo (#49) is not compatible with Ubuntu 22.04"
}
Դուք պետք է ընտրեք այլ օպերացիոն համակարգ (նշեք այլ os_id պարամետր):
Զգուշացում
Դուք կարող եք սկսել օգտագதுցել սերվերը, երբ ստանաք էլեկտրոնային փոստի ծանուցում, որ տեղակայման (deployment) ավարտվել է, կամ երբ Active կարգավիճակի և My Servers բաժնում հայտնվի Invapi վահանակում: Եթե սերվերի տեղակայման ընթացքում ձախողում տեղի ունենա, էլեկտրոնային փոստին կուղարկվի ծանուցում: Տեղակայումը կարող է տևել 20 րոպե կամ ավելի:
Դուք կարող եք վերահսկել տեղադրման ընթացքն ու դրա կարգավիճակը asynchronous actions միջոցով:
Տեղադրումը հաջողությամբ կավարտվի, երբ ստանաք հետևյալ պես ասինխրոն գործողության հաղորդագրություն.
Սերվերի վերատեղադրումը (Reinstall) eq/order_instance-ի միջոցով¶
Սերվերի վերատեղադրումը կատարվում է նման, ինչպես պատվիրելիս. այն տարբերվում է միայն eq/order_instance հարցման մեջ լրացուցիչ id պարամետր փոխանցելով՝ վերատեղրվող սերվերի ID-ն (Invapi-ից), և preset պարամետրը չօգտագործելով: Վերատեղրման ժամանակ դուք կարող եք ընտրել այլ օպերացիոն համակարգ և նախնական տեղադրված ծրագրային ապահովում, կամ իրականացնել «մաքուր» վերատեղրում՝ սահմանելով own_os=1 պարամետրը (այդ դեպքում պետք է սահմանեք os_id = 0):
Զգուշացում
location_name պարամետրը պարտադիր է նույնիսկ վերատեղրման ժամանակ: Դուք պետք է նշեք սերվերի ընթացիկ տեղադիրքը (օրինակ՝ NL կամ US), հակառակ դեպքում API-ն կարող է վերադարձնել OS համատեղելիության սխալ:
POST հարցում վերատեղրման համար, cURL
curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=order_instance" \
--data "token=$HOSTKEY_TOKEN" \
--data "hostname={Hostname}" \
--data "os_id={OS ID}" \
--data "soft_id={Software ID}" \
--data "root_pass={root password}" \
--data "ssh_key={public SSH key}" \
--data "post_install_script=" \
--data "own_os=" \
--data "root_size=100" \
--data "location_name={Server location with specified ID}" \
--data "id={Invapi Server ID}" // ID-ի առկայությունը նշանակում է սերվերի վերատեղրման գործընթաց:
Զգուշացում
Եթե վերատեղրման հարցման ժամանակ ստանաք հաղորդագրություն, որ այդ ID-ով սերվեր չի գտնվել, թարմացրեք ձեր սեսիայի թոքենին կապված սերվերների ցանկը՝ կանձելով eq/update_servers:
Նշում
Եթե առկա է անհամատեղելիություն ընտրված օպերացիոն համակարգի և տեղադրվող ծրագրային ապահովման միջև, դուք կստանաք հետևյալ պես հաղորդագրություն.
{
"result": -1,
"error": "reinstall: extra software Odoo (#49) is not compatible with Ubuntu 22.04"
}
Դուք պետք է ընտրեք այլ օպերացիոն համակարգ (նշեք այլ os_id պարամետր):
Զգուշացում
Դուք չեք կարող սկսել նոր վերատեղադրում, եթե նախորդ գործընթացը դեռևս չի ավարտվել: Հակառակ դեպքում կստանաք զգուշացում.
Օրինակ, ենթադրենք մենք ուզում ենք վերատեղրել նախորդ օրինակի սերվերը Rocky Linux 9 (id=205) և Grafana (id=18) տարբերակով: Հարցումը կլինի հետևյալն.
POST հարցման օրինակ վերատեղրման համար, cURL
Դրական պատասխանի օրինակ վերատեղրման համար
Զգուշացում
Այս մեթոդով վերատեղրելիս հաջող ավարտի դեպքում էլեկտրոնային փոստով ծանուցում չի ուղարկվում: Դուք պետք է հիշեք և պահպանեք նոր root գաղտնաբառը (կամ օգտագործեք սերվերի առկա գաղտնաբառը), իսկ տեղադրված ծրագրային ապահովման մուտքի տվյալները կարող եք գտնել Marketplace փաստաթղթերում կամ անմիջապես սերվերի քարտում՝ Invapi վահանակում:
Օգտագործելով այս ասինխրոն բանալին ( callback դաշտը), մենք կարող ենք հետևել վերատեղրման գործընթացին asynchronous actions միջոցով: