0

으로 지정되면 AWS CloudFormation에서 이상한 문제가 발생합니다.AWS CloudFormation : VolumeAttachment가

우리는 일부 기계의 배치를 자동화하기 위해 CloudFormation을 사용하고 있습니다. CloudFormation yml은 스택 외부에서 생성 된 영구 EBS 볼륨이 포함 된 배포를 설명하며 스택과 함께 제거하거나 다시 만들려하지 않습니다 (응용 프로그램 상태가 많이 포함됨).

관련 CloudFormation의 YML 조각은 다음과 같습니다

DataVolumeAttachment01: Type: AWS::EC2::VolumeAttachment Properties: Device: "/dev/xvdm" InstanceId: !Ref EC2Instance01 VolumeId: !Ref DataVolumeId EC2Instance01: Type: "AWS::EC2::Instance" Properties: ImageId: "ami-6f587e1c" KeyName: !Ref "KeyName" InstanceType: !Ref "InstanceType" BlockDeviceMappings: # Root device - DeviceName: "/dev/sda1" Ebs: VolumeType: "gp2" DeleteOnTermination: "true" VolumeSize: 20

그래서, 루트 장치가/동안 (스택이 업데이트 될 때마다이 같은 볼륨이 삭제되고 userData로 재 관리됩니다) "과도"입니다 dev/xvdm에는 영구 데이터가 있어야합니다. 이러한 장치는 사용자 데이터의 끝에 마운트되고 fstab에 추가됩니다.

AWS own documentation 다음, 나는 VM 내부에서 이러한 볼륨을 마운트 해제하는 스크립트를 생성, 그리고 심지어는 EC2 인스턴스에서 같은 볼륨을 deattaching 시도, 뭔가 같은 :

${SSH_CMD} "cd /home/application && application stop && sudo umount /data && echo data volume unmounted" echo "detaching data volume" VOLID=$(aws ec2 describe-volumes --filters Name=tag-key,Values="Name" Name=tag-value,Values=persistent-volume --query 'Volumes[*].{ID:VolumeId}' --output text) aws ec2 detach-volume --volume-id "${VOLID}"

내가 언 마운트를 확인하고 분리가 성공합니다.

템플릿과 매개 변수로 새 스택을 만드는 데 성공했습니다. 나는이 오류와 함께

aws cloudformation update-stack --capabilities CAPABILITY_IAM --stack-name $STACK_NAME --template-body file://single_ec2_instance.yml --parameters file://$AWS_PARAMETERS_FILE

업데이트가 실패를 출시 아직

그리고 : 나는 그런 자원 내에서 아무것도 변화하고 있지 않다하더라도

Update to resource type AWS::EC2::VolumeAttachment is not supported.

.

안녕하세요. 어떻게 해결할 수 있습니까?

답변

0

것은 문제가 아닌 것으로 보입니다.

CloudFormation은 소모 된 t2 cpu 크레딧 (m3 또는 m4를 사용하기 위해 정확한 유형의 인스턴스 유형을 변경하려고 시도했습니다) 또는 EC2/CloudFormation에 대한 나쁜 날이 있습니다. 아일랜드. 오늘날 동일한 정확한 설정으로 모든 업데이트가 완료되었습니다.