2016-10-13 7 views
1

마스터 노드에 대해 원하는 개수의 자동 크기 조정을 1로 사용하고 있습니다. 인스턴스가 종료되면 고 가용성을 유지하기 위해 이전에 종료 된 인스턴스의 동일한 EBS 볼륨을 새로 생성 된 인스턴스와 연결해야합니다.EC2의 사용자 데이터에 CLI 명령을 전달하여 EBS 볼륨을 자동으로 연결하고 탑재 할 수 있습니까?

제공되는 CLI가 내 AMI에 구성되어 있지만 사용자 데이터에서 다음을 시도했지만 작동하지 않았습니다.

#!/bin/bash 
EC2_INSTANCE_ID=$(ec2metadata --instance-id) 
aws ec2 attach-volume --volume-id vol-777099d8 --instance-id $EC2_INSTANCE_ID --device /dev/sdk 


#!/bin/bash 
echo "aws ec2 attach-volume --volume-id vol-777099d8 --instance-id $(ec2metadata --instance-id) --device /dev/sdk" > /tmp/xyz.sh 
sudo chmod 755 /tmp/xyz.sh 
sudo sh /tmp/xyz.sh 2>> 


#!/bin/bash 
var='ec2 attach-volume --volume-id vol-777099d8 --instance-id $(ec2metadata --instance-id) --device /dev/sdk' 
aws "$var" 


aws ec2 attach-volume --volume-id vol-777099d8 --instance-id $(ec2metadata --instance-id) --device /dev/sdk 

감사합니다.

답변

0

EBS 볼륨을 한 번에 하나의 인스턴스에만 연결할 수 있기 때문에 아마 작동하지 않았을 수 있습니다. 작동하지 않는 경우 CLI 명령에 대한 응답으로 오류 메시지가 표시되어 작동하지 않는 이유를 이해하는 데 도움이되므로 인스턴스의 로그를 확인하십시오.

이 작업을 수행하려고하면 빨간색 플래그가 전송되기 때문에 아키텍처를 조금 재검토해야한다고 생각합니다. 첫째, HA 아키텍처가 단일 인스턴스를 실행하지 않아야합니다. 인스턴스가 확장되거나 축소 될 때 좋은 아키텍처가 HA로 유지됩니다. 둘 이상의 인스턴스에서 사용할 수 있어야하는 데이터가있는 경우 S3 또는 EFS를 사용하여 EBS 볼륨이 아닌 해당 데이터를 저장해야합니다.