으로 지정되면 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.
.
안녕하세요. 어떻게 해결할 수 있습니까?