Around the blogosphere, Google +, LinkedIn, etc., there are many people discussing the Amazon Web Services Exam track and the preparatory steps needed to clear the exams. There is a question that appears on an Amazon Web Services sample exam for the Associate track which has been generating a small bit of confusion amongst the community of people seeking to take the associate level exam.
That question appears here:
Which of the following will occur when an EC2 instance in a VPC (Virtual Private Cloud) with an associated Elastic IP is stopped and started? (Choose 2 answers)
A. The Elastic IP will be dissociated from the instance
B. All data on instance-store devices will be lost
C. All data on EBS (Elastic Block Store) devices will be lost
D. The ENI (Elastic Network Interface) is detached
E. The underlying host for the instance is changed
I’d like to briefly walk through what the correct answers are to this particular question.
The first obvious answer of the two which can be selected based on the question above is B, that all data on instance-store devices will be lost. This answer would be true solely because the instance in the question is stopped. Whether it is in a VPC or not or has been assigned an elastic IP or not is irrelevant. Stopping an instance with instance-store devices means that any data on those devices will not persist through a stop and start sequence.
Now, notice no where in the question we are told whether the instance is EBS backed or instance-store backed. In other words, we are not told what type of volume is in use for the root device. Though this is not explicitly stated, please notice that we are being asked about not only stopping the instance but subsequently, starting it as well. If it were an instance-store backed instance, there would be no option to perform a subsequent start as the machine itself would be terminated. This implies that this is some EBS backed instance we are to consider in this example.
For the remaining selections, many people are having difficulty choosing the best answer. Some people have even proposed that the question itself is faulty in suggesting that a second answer not even need be selected. The truth of the matter is that there is in fact another selection which is definitely true and therefore correct. Before we examine which one that is, lets first talk about the ones which are not correct answers.
First, A seems tempting however it is not correct. The reason it is not correct is that in the question, we are told that the instance is in a VPC. One thing to be aware of is that any EBS backed instance in a VPC that is stopped and then started retains its Elastic IP. If it were in EC2 classic, then the Elastic IP would be removed and a public IP address would be assigned in its place during the stop/start sequence.
C represents that one question which is so obviously wrong, we can eliminate it without much thought. In the event anyone truly needs convincing – The reason C is not a correct choice is because data on EBS volumes persist through stops and starts. This question would seek to confuse someone who is unclear on the differences between instance store backed devices and EBS backed devices.
For D, it is not a correct answer because ENI’s do not become detached from stops and starts of an instance. Regardless of the instance being in a VPC or not and it having or not having an Elastic IP are completely irrelevant. ENI’s do not become detached based on a stop and start request.
Finally, E. Yes, it is indeed one of the two correct answers to this question. This answer has confused many, however I can assure you that according to Amazon Web Services, it is absolutely correct. In Amazon Web Services, when an EBS backed instance is stopped, and then started, it is brought up on a “new” host. In fact, this is at least one of the ways in which you can migrate your EBS backed instance to another host during an impending host retirement, maintenance window, etc. For anyone in doubt, the proof is in this link:
Please feel free to share your thoughts in the comments section below