Jakie dane są przechowywane w Ephemeral Storage wystąpienia Amazon EC2?

289

Próbuję zatrzymać wystąpienie Amazon EC2 i otrzymać komunikat ostrzegawczy

Ostrzeżenie: pamiętaj, że wszelkie dane dotyczące efemerycznego przechowywania instancji zostaną utracone po zatrzymaniu.

Moje pytanie

Jakie dane są przechowywane w efemerycznym magazynie instancji Amazon EC2?

Gaurav Agarwal
źródło

Odpowiedzi:

148

Wszystko, co nie jest przechowywane na woluminie EBS zamontowanym w instancji, zostanie utracone.

Na przykład, jeśli podłączysz swój wolumin EBS w /mystuff, wtedy wszystko, czego nie /mystuffma, zostanie utracone. Jeśli nie zamontujesz wolumenu Ebs i nie zapiszesz na nim różnych rzeczy, to wierzę, że wszystko zostanie utracone.

Możesz utworzyć AMI z bieżącego stanu maszyny, który będzie zawierał wszystko w efemerycznym magazynie. Następnie, gdy uruchomisz nową instancję opartą na tym AMI, będzie ona zawierała wszystko tak, jak jest teraz.

Aktualizacja: wyjaśnienie na podstawie komentarzy Mattgmg1990 i Glenn Bech:

Zauważ, że istnieje różnica między „stop” i „terminate”. Jeśli „zatrzymasz” instancję wspieraną przez EBS, informacje na woluminie głównym pozostaną w tym samym stanie po ponownym „uruchomieniu” komputera. Zgodnie z dokumentacją „Domyślnie wolumin urządzenia głównego i inne woluminy Amazon EBS dołączone podczas uruchamiania instancji wspieranej przez Amazon EBS są automatycznie usuwane po zakończeniu instancji”, ale można to zmodyfikować poprzez konfigurację.

digitaljoel
źródło
1
wszystko w instancji byłoby przechowywane w pamięci efemerycznej, chyba że skonfigurowałeś i zamontowałeś wolumin ebs i świadomie umieszczasz na nim swoje dane.
digitaljoel
2
Czy dotyczy to tylko instance storeurządzeń? Oznacza to, że na ebsurządzeniu mój główny dysk jest ulotny, czy nie?
Dean
17
Ta odpowiedź nie jest do końca poprawna, a gdzie przechowywane są Twoje dane, zależy od tego, jaki typ AMI wybrałeś do utworzenia. Poniższa odpowiedź @nidalpres jest bardziej kompletna. Jeśli zdecydujesz się utworzyć AMI wspierany przez EBS, katalog główny NIE jest przechowywany w pamięci tymczasowej.
mattgmg1990
1
Chciałbym tylko dodać, że myślę, że @nidalpres napisał lepszą odpowiedź, a przynajmniej taką, która jest o wiele łatwiejsza do zrozumienia.
Lozzano
1
„Jeśli„ zakończysz ”maszynę, to nawet jeśli jest ona wspierana przez EBS, zniknie.” To nie jest poprawne. Jest to określone przez flagę „Usuń przy zakończeniu” na stronie „dodaj pamięć” (odnoszącą się do woluminu głównego). Można go również podać w wierszu polecenia, a nawet zmienić przy uruchamianiu instancji za pomocą interfejsu CLI ( docs.aws.amazon.com/AWSEC2/latest/UserGuide/... )
Glenn Bech,
260

Zasadniczo wolumin root (cały wirtualny dysk systemowy) jest efemeryczny, ale tylko jeśli zdecydujesz się utworzyć AMI wspierany przez magazyn instancji Amazon EC2 .

Jeśli zdecydujesz się utworzyć AMI wspierany przez EBS, twój wolumin główny jest wspierany przez EBS i wszystko, co masz na swoim głównym woluminie, zostanie zapisane między restartami.

Jeśli nie masz pewności, jaki rodzaj wolumenu posiadasz, zajrzyj do EC2-> Elastic Block Store-> Woluminy w konsoli AWS i jeśli twój wolumin główny AMI jest tam wymieniony, to jesteś bezpieczny. Ponadto, jeśli przejdziesz do EC2-> Instancje, a następnie zajrzysz pod kolumnę „Typ urządzenia root” swojej instancji i jeśli jest napisane „ebs”, nie musisz się martwić o dane na swoim urządzeniu root.

Więcej informacji tutaj: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/RootDeviceStorage.html

nidalpres
źródło
98
Prawdopodobnie nie pomyliłoby to ludzi tak bardzo, gdyby AWS nie dawał niepotrzebnego ostrzeżenia „że wszelkie dane z efemerycznego przechowywania twojej instancji zostaną utracone” nawet przy próbie zatrzymania instancji, która JEST przy użyciu rootowania wspieranego przez EBS urządzenie i nie ma powodu do obaw o utratę danych.
Tilman
2
ostrzeżenie ma zastosowanie, ponieważ możesz mieć zarówno root oparty na BS ORAZ efemeryczną pamięć masową (ręcznie, ponieważ aws tak nie robi domyślnie)
Zig Mandel
Właściwie to po prostu to zrobiłem, ale i tak wystąpił błąd: Unable to connect to your database server using the provided settings. Filename: core/Loader.php Line Number: 346 jakieś pomysły? Nie działo się to wcześniej.
James
Dla przypomnienia z jakiegoś powodu mysqldusługa przestała działać. Wsparcie powiedziało, że to nie jest normalne, ale to był jedyny problem.
James
3
@Tilman Dokładnie to, o czym myślałem. Ostrzeżenie jest nie tylko niepotrzebne, ale także wprowadza w błąd. Dzięki za zwrócenie na to uwagi.
Sabuncu
7

Aby być jasnym i odpowiedzieć na pytanie Deana: Pamięć root typu EBS nie wydaje się efemeryczna. Dane są trwałe podczas ponownego uruchamiania i w rzeczywistości nie ma sensu używać woluminu głównego wspieranego przez ebs, który jest „efemeryczny”. Nie różni się to od woluminu głównego opartego na obrazie.

Januszm
źródło
2
Cała pamięć masowa wspierana przez EBS jest trwała, np. Nie efemeryczna, po „zatrzymaniu” instancji. Jeśli „zakończysz”, utracisz dane. Zobacz stackoverflow.com/a/11566285/46249 .
Matthew
0

Zgodnie z dokumentacją AWS [ https://aws.amazon.com/premiumsupport/knowledge-center/instance-store-vs-ebs/] woluminy magazynu instancji nie są trwałe na skutek zatrzymania instancji, przerwania lub awarii sprzętu. Dowolny AMI utworzony z dysku przechowywanego w instancji nie zawiera danych obecnych w magazynie instancji, więc wszystkie instancje uruchomione przez ten AMI nie będą miały danych przechowywanych w magazynie instancji. Sklep z instancjami może służyć jako pamięć podręczna dla aplikacji działających na instancji, dla wszystkich trwałych danych należy użyć EBS.

Lokesh Ranadive
źródło