softlayer api: Как заказать публичные вторичные IP-адреса при заказе?
У меня есть заказ виртуальной машины с 8 вторичными IP-адресами. используя api, как я могу извлечь 8 вторичный IP-адрес.
Ответ, предоставленный на самой SO , содержит ваш ответ:
Заказ виртуального гостя со вторым общедоступным адресом Ip
Ниже приведен пример в REST для заказа виртуального гостя со вторичным IP-адресом и двумя первыми вопросами в форме.
Примечание. Не забудьте изменить [имя пользователя] , [apikey] , цены и другие идентификаторы с вашими собственными данными
https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Product_Order/verifyOrder Method: POST Body JSON: { "parameters":[ { "complexType": "SoftLayer_Container_Product_Order_Virtual_Guest", "packageId": 46, "location": "AMSTERDAM", "quantity": 1, "prices":[ {"id":14640}, {"id":11644}, {"id":9205}, {"id":22272}, {"id":52231}, {"id":21}, {"id":2202}, {"id":13945}, {"id":55}, {"id":57}, {"id":58}, {"id":420}, {"id":418}, {"id":22} ], "virtualGuests":[ { "hostname": "test", "domain": "example.com" } ], "itemCategoryQuestionAnswers":[ { "answer": "2", "categoryId": 14, "questionId": 14 }, { "answer": "4", "categoryId": 14, "questionId": 15 } ] } ] }
Примечание. Пожалуйста, обратитесь к этому Вопросу за более подробным ответом.
Вы можете получить список, необходимый с помощью метода Network_Subnet :: getIpAddresses . Попробуйте выполнить следующий запрос REST:
https://$username:$apiKey@api.softlayer.com/rest/v3.1/SoftLayer_Network_Subnet/$subnetId/getIpAddresses?objectMask=mask[ipAddress, note, id, subnetId]
В приведенном выше коде используется objectMasks для отображения только того, что показывает вам портал, так как в этом случае ваше 8 или любое количество Ip-адресов в определенной подсети не забудьте изменить первые $ username : $ apikey значения для действительных учетных данных, а также $ subnetId .
ОБНОВЛЕНИЕ : вы можете выполнить поиск в идентификаторе подсети VSI с помощью:
SoftLayer_Virtual_Guest :: GetObject
https://$username:$apiKey@api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/$virtualGuestId/getObject?objectMask=mask[accountId,fullyQualifiedDomainName,primaryIpAddress,hostname,domain,frontendNetworkComponents[guestId,primaryIpAddress,subnets[id]]]
Не забудьте изменить $ virtualGuestId для вашего значения идентификатора VSI.
Для получения дополнительной информации см. Ниже:
Маски объектов
Получить пропускную способность подсети