2013-02-21 1 views
2

Я пытаюсь использовать boto для создания конфигурации запуска для автоматического масштабирования, но я не знаю, как определить block_device_mappings.Как определить block_device_mappings при использовании boto.ec2.autoscale.launchconfig.LaunchConfiguration(),

Кодовые моментальных снимков, как это:

dev_sdf = boto.ec2.blockdevicemapping.EBSBlockDeviceType(snapshot_id = self.sna_data.id) 
bdm = boto.ec2.blockdevicemapping.BlockDeviceMapping() 
bdm['/dev/sdf'] = dev_sdf 

lc = launchconfig.LaunchConfiguration(connection = self.as_conn, 
             name = lc_name, 
             image_id = self.ami.id, 
             instance_type = self.instance_type, 
             key_name = AWS_KEY_NAME, 
             security_groups = self.security_groups, 
             spot_price = self.price, 
             block_device_mappings = [bdm]) 
self.as_conn.create_launch_configuration(lc) 

Но я получил:

boto.exception.BotoServerError: BotoServerError: 400 Bad Request 
<ErrorResponse xmlns="http://autoscaling.amazonaws.com/doc/2011-01-01/"> 
    <Error> 
    <Type>Sender</Type> 
    <Code>ValidationError</Code> 
    <Message>1 validation error detected: Value null at 'blockDeviceMappings.1.member.deviceName' failed to satisfy constraint: Member must not be null</Message> 
    </Error> 
    <RequestId>7289473c-7bc1-11e2-a07c-93de372a2cc0</RequestId> 
</ErrorResponse> 

Как я должен определить block_device_mappings?

ответ

1

Я не думаю, что код, который загружает отображения, может когда-либо работать.

Я создать запрос тянуть против кода Boto, который должен тянуть отображения устройств через правильно:

https://github.com/pasc/boto/tree/bdm_for_autoscaling_groups

+0

https://github.com/pasc/boto/commit/308259a4e73a4e7f46a575e1d3071d429bff85e8 –

 Смежные вопросы

  • Нет связанных вопросов^_^