Amazon EC2 인스턴스를 종료 한 후 다시 시작하면 모든 것이 정상입니까?


12

Amazon EC2 Linux 기반 인스턴스에서 실행되는 웹 사이트가 있으며 일반 도메인 이름 (x.com)에 매핑되어 있습니다. 이 사이트는 두 번째 EC2 인스턴스의 데이터베이스와 통신합니다.

이 인스턴스를 종료하고 그 뒤에 컴퓨팅 성능을 높여야합니다. 그렇게하면 시간이 얼마나 걸리고 컴퓨터를 다시 가동 할 때 내 사이트가 온라인으로 돌아 오게됩니까? IP 주소, DNS 정보 등이 모두 유지되어 도메인 이름이 계속 작동하고 DB와 계속 대화 할 수 있습니까?

참고로, 현재 AWS EC2 정보 패널에서 웹 서버에 표시되는 내용입니다 (정확한 IP 주소는 약간 변경되었지만 아이디어는 얻음).

Public DNS: ec2-54-1-1-1.us-west-1.compute.amazonaws.com
Private DNS: ip-10-1-1-1.us-west-1.compute.internal
Private IPs: 10.1.1.1

답변:


13

EBS 부팅 인스턴스 중지 및 시작은 몇 가지 예외를 제외하고 단순히 인스턴스를 재부팅하는 것과 매우 유사합니다.

  1. 인스턴스에 새로운 내부 IP 주소가 할당됩니다.

  2. 인스턴스에 새로운 퍼블릭 IP 주소가 할당됩니다.

  3. 인스턴스가 VPC에 없으면 탄력적 IP 주소가 인스턴스와 연결 해제됩니다.

  4. 임시 저장소 (종종 / mnt)의 모든 데이터가 손실됩니다

이 기사에서 설명한 청구 및 가용성 관련 사항도 있습니다.

Amazon EC2 인스턴스의 재부팅 및 중지 / 시작
http://alestic.com/2011/09/ec2-reboot-stop-start

VPC 인스턴스는 중지 / 시작을 통해 탄력적 IP 주소를 유지하는 등 약간 다른 동작을합니다.

인스턴스를 데이터베이스 서버로 사용하고 내부 IP 주소 (더 빠르고 빠름)를 사용하여 연결하려는 경우 중지 / 시작 후 데이터베이스 클라이언트를 다시 구성하지 않으려는 경우 할당 할 수 있습니다. 인스턴스의 탄력적 IP 주소이며 외부 탄력적 IP DNS 이름을 사용합니다. 이렇게하면 탄력적 IP 주소를 다시 시작한 인스턴스에 다시 연결 한 후 현재 내부 IP 주소로 확인되며 클라이언트는 중단 된 위치를 선택합니다.

이 기사 에서이 접근법에 대해 더 자세히 설명합니다.

Amazon EC2에서 Elastic IP를 사용하여 내부 인스턴스 식별
http://alestic.com/2009/06/ec2-elastic-ip-internal

예상대로 들리 겠지만 중지 / 시작은 인스턴스를 구동하는 하드웨어를 쉽게 변경할 수있는 방법입니다. 나는이 기사의 지침과 경고와 함께 이것에 대해 썼습니다.

EC2 인스턴스를 더 큰 (또는 더 작은) 인스턴스 유형으로 이동
http://alestic.com/2011/02/ec2-change-type

특정 상황에서는 인스턴스에 탄력적 IP 주소를 할당하고 외부 DNS 이름에 CNAME을 사용하여 탄력적 IP 주소를 가리 키도록 DNS를 변경하는 것이 좋습니다. 중지 / 시작 직후에이를 수행하거나 중지 / 시작 전에 모든 것이 작동하는지 미리 확인할 수 있습니다.


여전히 정확한가요? 오늘 아침 AWS 지원팀과 대화 중이 었는데 인스턴스가 중지 될 때 탄력적 IP가 연결 해제 되지 않았다고 말했습니다 . 또한 인스턴스를 중지하고 시작할 때 내부 IP 주소가 변경되는 것을 본 적이 없습니다.
bshacklett

@bsacklett이 답변은 약간 구식입니다. VPC가 아닌 인스턴스 만 탄력적 IP를 잃어 버렸다고 설명하기 위해 업데이트했습니다. 오늘날 대부분의 인스턴스는 실제로 VPC입니다.
Eric Hammond

4

정보에서 알 수 있듯이 Elastic IP를 사용하지 않는 것 같습니다.

이 인스턴스를 가리 키려면 DNS에서 CNAME을 사용해야한다고 생각합니다. 컴퓨터를 다시 시작하면이 ec2-54-1-1-1.us-west-1.compute.amazonaws.comDNS 이름이 변경되고 사이트 작동이 중지됩니다.

내부 IP가 많기 때문에 VPC를 사용하지 않는 한 IP도 변경됩니다.

따라서 내가 당신이라면이 기계를 다시 시작할 때 매우 조심할 것입니다.

시간과 관련하여 몇 분 이상 걸리지 않습니다.

또한 DB 인스턴스에서 실행중인 iptables가있는 경우이 내부 IP 만 DB에 연결하도록 허용하면 내부 IP가 변경되므로 작동하지 않습니다.

따라서이 인스턴스를 다시 시작하고 신중하게 생각하려면주의하십시오.


2

내부 IP / 호스트 이름이 변경되고 탄력적 IP가 분리됩니다 (VPC에 있지 않은 경우).

인스턴스를 다시 시작한 후 탄력적 IP를 다시 연결하십시오. 정기적으로 인스턴스 크기를 변경하기 위해이 작업을 수행하며 몇 분의 다운 타임 만보고 있습니다.

Apache 및 다른 서비스가 시작되도록 설정되어 있는지 확인하십시오 ( chkconfigamazon linux ami를 실행하는 경우).


1

내가 기억할 수있는 한, 시스템의 유형 변경을 중지하고 다시 시작하는 데 5-10 분 이상 걸리지 않아야합니다 (EBS가 지원하는 시스템은 아닙니다). 시스템이 다시 시작되면 서비스를 시작하려면 재부팅 할 때 모든 서비스를 시작해야합니다 (예 : 우분투 12.04의 꼭두각시와 같이 / etc / default / puppet에서 활성화했습니다). IP를 기록해 두십시오 (명확하게 기억하지 마십시오). 대부분의 IP는 시스템에서 분리 될 수 있지만 여전히 계정에있을 수 있으므로 탄력적 IP 섹션으로 이동하여 IP와 다시 연결하십시오. 시스템을 다시 시작하면 괜찮을 것입니다.


1

이미 언급했듯이 탄력적 IP가있는 경우 인스턴스에 다시 연결되므로 DNS 설정을 건드릴 필요가 없습니다. 그러나 어떤 식 으로든 개인 IP가 변경됩니다. 이것은 아마도 mysql에서 GRANT 설정을 업데이트해야 함을 의미합니다. '왜냐하면 당신은 GRANT ALL PRIVILEGES ON *.* to 'somedude'@'%'... 맞지 않습니까? ;)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.