Команда отправки AWS SSM для отсоединения хранилища EBS?

#amazon-web-services #amazon-ebs #detach #aws-ssm

Вопрос:

Я пытался отсоединить хранилище EBS от экземпляра Windows EC2 с помощью команды отправки SSM с целевым фильтром с именем EC2. Пример:

 aws ssm send-command --targets "Key=tag:Name,Values=MYWINDOWSServer" --document-name "AWS-RunShellScript" --parameter "commands = aws ec2 detach-volume --volume-id vol-00000xxxae64a1bd"
 

Имя тега уникально, поэтому оно должно выполняться только на 1 сервере в этой учетной записи.
Результат, который я получаю, сбивает с толку, и я не могу заставить это работать. Может ли кто-нибудь указать мне правильное направление?
Заранее спасибо.

Выход:

 {
    "Command": {
        "CommandId": "934abae5-d28e-49f8-a5a8-a9a9f64c62cc",
        "DocumentName": "AWS-RunShellScript",
        "DocumentVersion": "$DEFAULT",
        "Comment": "",
        "ExpiresAfter": "2021-05-25T13:24:12.765000-04:00",
        "Parameters": {
            "commands": [
                "aws ec2 detach-volume --volume-id vol-00000xxxae64a1bd"
            ]
        },
        "InstanceIds": [],
        "Targets": [
            {
                "Key": "tag:Name",
                "Values": [
                    "MYWINDOWSServer"
                ]
            }
        ],
        "RequestedDateTime": "2021-05-25T10:24:12.765000-04:00",
        "Status": "Pending",
        "StatusDetails": "Pending",
        "OutputS3BucketName": "",
        "OutputS3KeyPrefix": "",
        "MaxConcurrency": "50",
        "MaxErrors": "0",
        "TargetCount": 0,
        "CompletedCount": 0,
        "ErrorCount": 0,
        "DeliveryTimedOutCount": 0,
        "ServiceRole": "",
        "NotificationConfig": {
            "NotificationArn": "",
            "NotificationEvents": [],
            "NotificationType": ""
        },
        "CloudWatchOutputConfig": {
            "CloudWatchLogGroupName": "",
            "CloudWatchOutputEnabled": false
        },
        "TimeoutSeconds": 3600
    }
}
 

Ответ №1:

Это результат выполнения команды ssm, которую вы выполнили. Как только вы запустите команду SSM, ее статус изменится на ожидание, а как только команда будет завершена, ее статус изменится на успех/сбой/истекло время ожидания в зависимости от результата.

«Статус»: «В ожидании»

Аналогично, вывод, который вы видите, — это все аргументы, которые возвращаются при выполнении команды SSM. Поскольку это в командной строке, это немного чересчур.

Я бы посоветовал вам поискать это в консоли SSM в истории команд запуска. Найдите идентификатор команды: 934abae5-d28e-49f8-a5a8-a9a9f64c62cc

Вы узнаете, была ли она завершена или не удалась.