在特定子网下创建虚拟服务器

时间:2016-01-11 14:04:07

标签: ruby api ibm-cloud-infrastructure

我正在使用softlayer的ruby API,我正在尝试在VLAN中的特定子网下创建一个虚拟服务器,我无法找到一种方法。 目前我正在使用以下json:

 creation_hash = {
    'complexType' => 'SoftLayer_Virtual_Guest',
    'hostname' => XXX,
    'domain' => XXXX
    'datacenter' => { 'name' => @datacenter },
    'startCpus' => sl_machine_type(@params['instance_type'])['cpu'],
    'maxMemory' => sl_machine_type(@params['instance_type'])['memory'],
    'hourlyBillingFlag' => true,
    'blockDeviceTemplateGroup' => { 'globalIdentifier' => @params['image_id'] },
    'localDiskFlag' => false,
    'dedicatedAccountHostOnlyFlag' => true,
    'primaryBackendNetworkComponent' => {
      'networkVlan' => {
        'id' => @private_vlan['id']
      }
    },
    'networkComponents' => [{ 'maxSpeed' => 1000 }],
    'privateNetworkOnlyFlag' => true
  }

因此,当我选择VLAN时,它会选择该VLAN下的随机子网。 我该如何指定子网?我没有在文档中找到这个选项。

1 个答案:

答案 0 :(得分:1)

不幸的是,无法指定应将服务器配置到哪个子网。

配置系统将从VLAN的主子网中选择一个IP。

措辞有点含糊in this article,但它声明IP是自动分配的。我将更新它,说明无法为主要IP请求特定的IP块。

在配置之后直接从辅助子网向服务器添加IP可能是一种可能的解决方法。如果需要自动化,可以使用安装后脚本或配置管理器(salt,chef等)完成此操作。它还允许您具体控制每个服务器使用哪些IP。