답변:
가장 간단한 형태의 AMI는 가상 머신, 가상화 유형, 아키텍처 (32/64 비트), 커널 및 루트 디바이스에 대한 설명입니다. 아마존의 말로 :
AMI는 Amazon의 입증 된 컴퓨팅 환경에서 실행할 수있는 소프트웨어 구성 (운영 체제, 애플리케이션 서버 및 애플리케이션)이 포함 된 템플릿입니다.
EC2 인스턴스는 Amazon 하드웨어에서 실행되는 가상 머신입니다. 인스턴스를 시작하려면 최소한의 정보가 필요합니다. 또한 다른 인스턴스 유형이 다른 구성을 지원합니다 (예 : 일부는 32 비트 AMI를 지원하지 않음)
각 AMI에는 식별자 (예 : ami-a1b2c3d4)가 있으며 해당 AMI의 구성은 생성 후에 변경할 수 없습니다. 그러나 시작시 또는 경우에 따라 인스턴스가 시작된 후에도 많은 설정을 무시할 수 있습니다.
루트 볼륨과 관련하여 AMI는 기존 볼륨에 대한 참조를 포함합니다 (예 : EBS 지원 인스턴스의 스냅 샷 또는 S3 지원 인스턴스의 경우 이미지 부분 참조).
AMI에는 또한 어느 정도의 오류 검사 (일반적으로 소유권을 나타내는 사용자 ID, 이미지를 암호화하는 암호화 키) 및 이미지 무결성을 확인하는 서명이 포함됩니다. S3 백업 인스턴스를 만들 때 생성 된 매니페스트 파일을 보면 AMI가 무엇인지 알 수 있습니다. 데이터와 다른 항목 (스토리지, 커널 등)에 대한 참조가 포함 된 파일 일뿐입니다.
이미지는 이미지를 블록 장치 매핑으로 참조합니다. 장치 (예 : / dev / sda1) 및 데이터 소스 (일시적 (및 관련이있는 경우 S3 부분) 또는 ebs-snapshot)를 지정합니다. S3 파트에 서명하고 ebs- 스냅 샷을 변경 (삭제 만) 할 수 없으므로 AMI에서 인스턴스를 시작하면 (설정을 무시하지 않고) 항상 동일한 소프트웨어 설정으로 인스턴스가 생성됩니다. (동일한 AMI에서 시작된 인스턴스가 사용자 데이터 또는 다른 블록 디바이스 매핑으로 인해 실행 상태가 다를 수 있습니다 (예 : 마이크로 인스턴스에는 임시 스토리지가 없지만 다른 인스턴스 유형은 그러합니다). 여기에서 연결된 볼륨은 AMI와 별도로 저장되지만 볼륨을 변경할 수없는 방식으로 AMI에서 참조합니다.
AMI에서 인스턴스를 시작하기 전에 블록 디바이스 매핑을 재정의 할 수 있습니다 (예 : 인스턴스 유형이 지원하는 경우 추가 EBS 볼륨 또는 다른 임시 볼륨 추가). EBS 볼륨의 경우 인스턴스가 시작된 후 루트 볼륨을 분리하고 다른 EBS 볼륨을 모두 연결할 수 있습니다.
따라서 질문에 간단히 답하십시오. 인스턴스에 대한 링크이거나 저장되어 있으며 변경되지 않은 것입니다. 저장되며 절대 변경되지 않습니다.
또한 이미지에 로컬 스토리지 및 해당 인스턴스에 설치된 모든 패키지 등이 포함되어 있거나 단순히 특정 인스턴스 구성의 사본 일뿐입니다. 이미지에는 로컬 스토리지 및 해당 인스턴스에 설치된 모든 패키지 등이 포함됩니다. 일반적으로 이것은 루트 볼륨 일 뿐이지 만 채워진 여러 볼륨이있는 인스턴스를 시작하도록 AMI를 설정할 수 있습니다.
AMI는 사실상 아키텍처와 같은 일부 메타 데이터와 함께 새로운 EC2 인스턴스를 시작하는 데 사용되는 루트 파일 시스템의 마스터 사본입니다. 여기에는 배포판의 새로운 사본을 부팅 할 때 일반적으로 찾을 수있는 전체 운영 체제 및 소프트웨어 패키지와 AMI 생성자가 추가하기에 적합한 것을 포함합니다.
인스턴스에서 AMI를 생성하면 기본적으로 해당 인스턴스의 루트 파일 시스템 복사본을 생성하게되며 나중에 새 인스턴스를 생성하는 데 사용할 수 있습니다.
내 대답은 여기에서도 도움이 될 수 있습니다. https://stackoverflow.com/a/7895489/111286