AWS 활용 – EC2 Instance Region 변경

기존에 미국 서부 region을 사용하고 있는데, CloudPing이라는 웹툴을 이용해 확인해보니 일본 region이 훨씬 빠른 것을 확인할 수 있었다.
(사실 처음 AWS를 쓰기 시작할 때 default로 지정된게 미국 서부라서 멋모르고 이용하고 있었다. ㅜㅜ)

Checking AWS response time at cloudping.info
이런 젠장! 처음부터 도쿄로 설정하고 썼으면 이런 삽질도 필요 없건만…

구글링을 잠깐 해보고 다음과 같이 작업을 진행했다.

1. Snapshot 생성

– 지금 서버가 돌아가는 volume의 id를 확인한 후 해당 volume의 Snapshot을 뜬다. Snapshots 에서 Create Snapshot으로 하고 해당 volume을 지정하면 된다. 16기가짜리 volume인데 15분쯤 걸린 것 같다.

2. Snapshot 다른 region으로 복사

– 새로 생성된 snapshot을 우클릭한 뒤 Copy를 누르면 어느 Region으로 복사할지 선택할 수 있다. 이건 8분쯤 걸린 것 같다.

[ 여기부터는 Region을 옮겨서 진행 (EC2 console 화면 우측상단) ]

3. 복사된 Snapshot으로 Volume 생성

– Region을 옮겨서 Snapshot 목록을 보면 복사된 snapshot이 뜬다. 우클릭 후 Create Volume을 누르면 복제된 volume이 생성된다.

4. 새로운 Instance 생성

– 같은 설정/용량으로 생성한다. Initiation 되는데 3분 정도 걸린다

5. Volume 갈아끼우기

– 일단 Instance를 중지시킨다. Instance 목록에서 우클릭해 Stop하면 된다. 이것도 2분이나 걸린다.

– Instance 생성하면서 같이 생긴 Volume을 detach하고 Snapshot에서 생성한 녀석으로 attach시킨다.
(volume에 별명을 지정해서 헷갈리지 않도록 하자!)

– 다시 Instance 목록에서 우클릭해 Start 시킨다.

– 여기서 device명을 다르게 지정했더니 start 오류가 생겼다. 다시 Volume detach하고 device명을 정확히 /dev/sda1 이런 식으로 입력했더니 시작되었다. (이건 서버마다 다 다를 듯)

 

몇가지 포인트

– 각 region 창을 하나씩 띄워놓고 작업하면 편하다.

– Private key를 새로 생성해야한다. Region이 달라지면 공유가 안 되나보다

– Security group도 Region간에 공유가 안 된다. Instance 생성하기 전에 미리 같은 내용으로 생성해두면 Instance 생성하면서 적용해버릴 수 있어서 편하다.

– Elastic IP도 다 새로 지정해야 한다. Region이 바뀌면서 당연히 해당 대역대 IP를 사용해야 하기 때문에 IP가 바뀔 수 밖에 없다. 필자의 경우 기존 서버도 24시간 정도 유지하면서 .htaccess에서 신규 서버로 강제 forwarding 시킬 예정이다. 24시간 뒤에는 돈 나가니까 예전 Region에 있던 모든 것을 삭제!

CC BY-NC-SA 4.0 This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Leave a Comment

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.