Вакансии компании
Статьи компании

1
Vscale

21.12.2016

Бэкапы в Vscale: от Москвы до Петербурга в один клик

Новый функционал сервиса повышает безопасность хранения данных и помогает мгновенно мигрировать между существующими локациями.
Читать далее
13.10.2016

Увидело свет Vscale Community — сообщество об облачных технологиях на русском языке

Облачный хостинг для разработчиков Vscale представил социальный портал Vscale community, посвященный облачным технологиям и хостингу. Его авторами могут стать все, кто разбирается в предмете и способен объяснить специфические вещи простым языком. За опубликованные материалы будут выплачиваться гонорары. А самый популярный автор 2016 года получит в знак признания iPhone 7 Plus.
Читать далее
31.05.2016

Vscale ввел возможность оплачивать услуги с банковского счета клиента

Такая форма оплаты будет удобна веб-студиям, стартапам, интернет-магазинам.
Читать далее
26.05.2016

Vscale расширяет список доступных образов

Облачный хостинг для разработчиков Vscale теперь поддерживает работу с панелями управления Ajenti и Vesta. Новые возможности сервиса доступны на вновь создаваемых виртуальных серверах.
Читать далее
29.03.2016

В Vscale доступен еще один популярный дистрибутив Linux

Линейка операционных систем, поддерживаемых облачными серверами Vscale, продолжает расширятся. Очередным обновлением стала Fedora 23.
Читать далее

Экономьте с Vscale в феврале

Период действия акции *: С 1 по 29 февраля 2016 года
С 1 по 29 февраля 2016 года на старшие конфигурации Vscale действует иммуностимулирующая скидка 37,5%.
Читать далее

Получите 400 рублей на счет Vscale в честь Киберпонедельника!

Период действия акции *: 30.11.2015
Vscale предлагает оценить преимущества облачных серверов с быстрыми SSD-дисками и памятью DDR4. С промокодом CYBERMONDAY2015 вы не потратите на это ни копейки.
Читать далее

Vscale предлагает месяц бесплатного хостинга

Период действия акции *: c 01.09.2015 по 10.09.2015
Для этого нужно зарегистрироваться в сервисе и активировать промокод SCALET200. После этого на баланс учетной записи будет зачислен бонус в размере 200 рублей. Этой суммы хватит на месяц работы с облачным сервером простой конфигурации (1 ядро CPU/512 MБ/20ГБ/1ТБ трафика).
Читать далее

Vscale предлагает месяц бесплатного хостинга

Период действия акции *: c 01.09.2015 по 10.09.2015
Для этого нужно зарегистрироваться в сервисе и активировать промокод SCALET200. После этого на баланс учетной записи будет зачислен бонус в размере 200 рублей. Этой суммы хватит на месяц работы с облачным сервером простой конфигурации (1 ядро CPU/512 MБ/20ГБ/1ТБ трафика).
Читать далее

Работа с API Vscale

Рубрика: VDS (VPS)
Опубликовано: 30.10.2015.
Vscale оснащён простым и удобным API, который существенно упрощает взаимодействие разработчиков с облачной инфраструктурой. С его помощью можно выполнять те же действия, что и через панель управления: создавать и удалять серверы; изменять конфигурации машин и тарифные планы;отключать, получать информацию о платежах и списаниях со счёта и т.д. Ниже мы рассмотрим возможности и функции API Vscale более подробно. 

Vscale API расположен по адресу api.vscale.io/v1
С его помощью можно выполнять те же действия, что и через панель управления:

  • создавать и удалять серверы;
  • изменять конфигурацию сервера на более производительную и переходить на другой тарифный план;
  • отключать, включать и перезагружать серверы;
  • получать информацию о платежах и списаниях со счёта;
  • работать с тикет-системой (создавать новые тикеты, отправлять комментарии, закрывать тикеты).


Взаимодействие осуществляется при помощи стандартных HTTP-запросов. Для обмена данными используется формат JSON.
В случае успешной обработки запроса API вернёт модель объекта в формате JSON. При возникновении ошибки вы получите её код и краткое описание (оно содержится в заголовке Vscale-Error-Message). 


Генерация токена



Чтобы начать работу с API, нужно сначала пройти полную процедуру регистрации (включая СМС-подтверждение) и пополнить баланс. Для идентификации пользователей используются токены. Чтобы получить токен, авторизуйтесь в панели управления и перейдите на страницу настроек
В меню в левой части страницы выберите пункт «Управление токенами».

Нажмите на кнопку «Создать токен». Откроется следующее окно:



Введите краткое описание токена в соответствующее поле. Обратите внимание на флажок «Тип токена». Токены для работы с API подразделяются на два типа:

  • полнофункциональные — могут использоваться со всеми типами запросов для выполнения всех возможных операций;
  • токены read-only — могут использоваться только в GET-запросах; количество выполняемых с ними операций ограничено (например, просмотреть список серверов или доступных конфигураций с таким токеном можно, а вот создать новый сервер — уже нет).


Задав нужные настройки, нажмите на кнопку «Сгенерировать токен». После этого новый токен будет добавлен в список. Его нужно будет передавать во всех запросах в заголовке X-Token.
Вы можете сгенерировать столько токенов, сколько вам нужно для работы. Срок действия токенов неограничен.

Создаём новый сервер



Вспомним порядок действий при создании нового сервера, описанный в предыдущей статье: сначала нужно дать серверу имя, затем выбрать конфигурацию и образ ОС и, наконец, настроить способ доступа. При создании сервера через API все необходимые характеристики сервера передаются в теле запроса. Вот список обязательных параметров: 

  • make_from — образ ОС, выбранный для установки на сервере: debian_8.1_64_001_master, centos_7.1_64_001_master, ubuntu_14.04_64_002_master (о том, как получить список доступных образов, подробнее читайте здесь);
  • rplan — имя конфигурации сервера; из предыдущей статьи вы уже знает е, что мы предлагаем 5 доступных конфигураций. Вот их имена (в порядке возрастания): small, medium,large, huge, monster. О том, как получить список конфигураций, можно подробнее прочитать в документации к API.
  • do_start: true — служебный параметр, указывающий, что сервер нужно запускать сразу же после установки;
  • name — имя сервера;
  • keys — идентификационный номер SSH-ключа, по которому будет осуществляться доступ на сервер (об управлении SSH-ключами подробнее см. здесь);
  • password — пароль (если требуется доступ по паролю);
  • locations — дата-центр, в котором будет размещён сервер (на сегодняшний день этот параметр может иметь только одно значение — spb).


Вот пример запроса на создание сервера:

$ curl -i -X POST 'https://api.vscale.io/v1/scalets' -d '{"make_from":"ubuntu_14.04_64_002_master","rplan":"medium","do_start":true,"name":"My First Server","keys":[92],"location":"spb0"}' -H 'X-Token:5c22a088f3b37c933e7480399f1e09258d6977bcd1eb2401de29e8001c9bedc36' 

Если запрос обработан правильно, то будет возвращён ответ, содержащий все переданные в запросе характеристики, а также ряд дополнительных служебных параметров:

{"name": "Icy-Mysterious", "deleted": null, "rplan": "medium", "made_from": "ubuntu_14.04_64_002_master", "status": "defined", "hostname": "cs14174.vscale.io", "created": "27.08.2015 10:03:07", "ctid": 12600, "private_address": {}, "location": "spb0", "keys": [{"name": "key", "id": 92}], "public_address": {}, "active": false, "locked": true} 

Статус текущих операций



Ещё раз просмотрите пример ответа в предыдущем разделе и обратите внимание на поле status. По логике вещей при успешном создании сервера должен быть возвращён статус created, но в приведённом примере соответствующий параметр имеет другое значение — defined. Создавая серверы через графический интерфейс, изменение статусов можно наблюдать в режиме реального времени. В API такой возможности нет, и статусы объектов изменяются не моментально.
Просмотреть информацию о статусе всех текущих операций можно, выполнив GET-запрос на адрес api.vscale.io/v1/tasks:

$ curl -i https://api.vscale.io/v1/tasks [{"location": "spb0", "d_insert": "2015-08-28 12:37:48", "id": "3a447f17-3577-4c16-b26c-27bd52faa7c1", "done": false, "scalet": 12835, "error": false, "d_start": "2015-08-28 09:37:48", "method": "scalet_create", "d_end": null} 

Из приведённого примера ответа видно, что в текущий момент выполняется операция создания сервера ("method": "scalet_create"), что она ещё не завершена ("done": false) и что при её выполнении не обнаружено никаких ошибок ("error": false).

Операции с серверами



Апгрейд конфигурации



C помощью API всегда можно перейти с текущей конфигурации на более производительную. Изменение конфигурации в меньшую сторону (даунгрейд) невозможно.
При создании нашего тестового сервера мы выбрали конфигурацию medium. Изменим её на large:

$ curl 'https://api.vscale.io/v1/scalets/12600/upgrade'-X POST -d '{"rplan":"large"}' -H 'X-Token: 5c22a088f3b37c933e7480399f1e09258d6977bcd1eb2401de29e8001c9bedc36' 

В случае успешного выполнения запроса будет возвращён ответ с информацией о сервере:

{"private_address": {}, "name": "New-Eyelid", "hostname": "cs12600.vscale.io", "public_address": {"address": "95.213.195.101", "netmask": "255.255.255.0", "gateway": "95.213.195.1"}, "keys": [{"id": 72, "name": "key"}], "made_from": "ubuntu_14.04_64_002_master", "created": "27.08.2015 14:28:51", "ctid": 12600, "status": "updated", "active": true, "locked": false, "deleted": null, "rplan": "medium", "location": "spb0"} 

Перезагрузка сервера



Перезагрузка сервера выполняется с помощью PATCH-запроса. Пример:

$ curl -i -X PATCH https://api.vscale.io/v1/scalets/12600/restart -d '{"id": "12600"}' -H 'X-Token: 5c22a088f3b37c933e7480399f1e09258d6977bcd1eb2401de29e8001c9bedc36' 

В ответе будут перечислены параметры перезагруженного сервера.

Выключение и включение сервера



Выключение и включение сервера также осуществляются с помощью PATCH-запросов:

# выключение сервера

$ curl -i -X PATCH https://api.vsсale.io/v1/scalets/12600/stop -d '{"id": "12600"}' -H 'X-Token: 5c22a088f3b37c933e7480399f1e09258d6977bcd1eb2401de29e8001c9bedc36 

#включение сервера 

$ curl -i -X PATCH https://api.vsсale.io/v1/scalets/12600/start -d '{"id": "12600"}' -H 'X-Token: 5c22a088f3b37c933e7480399f1e09258d6977bcd1eb2401de29e8001c9bedc36' 

Удаление сервера



Чтобы удалить сервер, нужно выполнить DELETE-запрос:

$ curl -i -X DELETE https://api.vscale.io/v1/scalets/12600 -H 'X-Token: 5c22a088f3b37c933e7480399f1e09258d6977bcd1eb2401de29e8001c9bedc36' 

В ответе будут возвращены параметры удалённого сервера.


В этой статье мы раскрыли лишь небольшую часть возможностей API Vscale. Подробнее обо всех функциях вы можете узнать из официальной документации.
Все статьи компании
Читальный зал

Добавить комментарий

Комментарии могут оставлять только авторизованные пользователи.
Авторизоваться   Зарегистрироваться

Новые вакансии появятся в ближайшее время!


Наверх
Сообщить об ошибке
Описание ошибки: