Ошибка экземпляров запуска EC2: недопустимое значение («зашифровано») для элемента param списка: BlockDeviceMappings списка типов - PullRequest
0 голосов
/ 13 ноября 2018

В соответствии с документацией по интерфейсу командной строки AWS я могу указать, что том должен быть зашифрован, и соответственно указать идентификатор ключа KMS.Я не могу заставить его работать, хотя ... что я делаю здесь не так?

aws ec2 run-instances --block-device-mappings '[ {"DeviceName": "/dev/sda1", "Ebs": { "DeleteOnTermination": true, "VolumeSize": 10, "VolumeType": "gp2" }}, {"DeviceName": "/dev/sdb1", "Ebs": { "DeleteOnTermination": false, "VolumeSize": 20, "VolumeType": "gp2", "Encrypted": true, "KmsKeyId": "f80d1a0e-9295-4ca7-8f27-2ce79fec9838" }} ]' --image-id $BASE_AMI --count 1 --instance-type $INSTANCE_TYPE --security-group-ids $SEC_GROUPS --subnet-id $SUBNET --key-name "$KEY_PAIR" 

Довольно напечатанный JSON для отображений блочных устройств ниже для удобства:

[
  {
    "DeviceName": "/dev/sda1",
    "Ebs": {
      "DeleteOnTermination": true,
      "VolumeSize": 10,
      "VolumeType": "gp2"
    }
  },
  {
    "DeviceName": "/dev/sdb1",
    "Ebs": {
      "DeleteOnTermination": false,
      "VolumeSize": 20,
      "VolumeType": "gp2",
      "Encrypted": true,
      "KmsKeyId": "f80d1a0e-9295-4ca7-8f27-2ce79fec9838"
    }
  }
]

Когда я запускаю вышеуказанную команду, я получаю сообщение об ошибке, которое вы видите в строке темы.Если я поменяю местами порядок значений Encrypted и KmsKeyId, вместо этого он пожалуется на KmsKeyId.

FWIW, я установил AWS CLI через apt в Ubuntu 14.04.

john@dev3:/home/john$ aws --version
aws-cli/1.2.9 Python/3.4.3 Linux/3.13.0-161-generic

1 Ответ

0 голосов
/ 13 ноября 2018

Похоже, что самый последний выпуск awscli - 1.16.x, поэтому я бы обновил awscli и повторно протестировал. Возможно, это было исправлено (или не поддерживалось в версии 1.2.x, которую вы используете).

В целом, я не думаю, что вы можете безопасно использовать apt-get для установки последней версии awscli на Ubuntu. Я бы удалил его и следовал инструкциям awscli для Linux , чтобы использовать pip или прилагаемый установщик.

...