AWS – AMI 리전 복사

AWS 에서 생성하여 운영중인 EC2 를 AMI(Amazon 머신 이미지) 를 생성하여 다른 Region 으로 복사 할 수 있다.

즉 서버 이동이 리전을 이동하여 생성할 수 있기 때문에 많이 쓰이지는 않겠지만…

 

사용된 OS 는 CentOS 7 이고 AMI 복사 및 인스턴스 시작은 문제 없이 진행이 되었다.

리전간 복사한 AMI를 이용하여 인스턴스를 시작할 경우 SSH로 로그인을 할수 없는 경우가 발생 하였다.

2018-06-18_120712

발생한 사유는 selinux 의 fcontext 가 리전간 복제 후 인스턴스를 시작할때 풀려버리는 문제가 있다.

Server refused our key

Disconnected: No supported authentication methods available.

 

정상 값 ssh_home_t

비 정상 값 default_t

 

해결 방법은 아래와 같이 해결이 가능할 것으로 보인다.

  1. 원본 서버에서 selinux 를 disabled 시킨다. ( vi /etc/sysconfig/selinux )
  2. AMI를 생성 한다.
  3. AMI를 다른 리전으로 복사 한다.
  4. 복사된 AMI를 이용하여 인스턴스를 새롭게 띄운다.
  5. selinux 를 enforcing 시킨다.

 

아울러서 복사전에 다음과 같이 authorized_keys 파일의 컨텍스트를 선언해 두는것도 도움이 될 수 있다.