Я собираюсь впервые начать использовать AWS. Насколько я понял, когда вы завершаете экземпляр или запускаете новый, все данные теряются. Я понимаю, что для пользовательских данных вы должны использовать облачное хранилище, такое как S3. Все нормально.
А что насчет всех конфигураций? Скажем, я потратил 2 часа на настройку всех конфигураций apache и PHP или еще много чего. Как мне убедиться, что он все еще там, когда я завершаю работу с экземпляром или запускаю новый?
Во-вторых, как насчет моего реального приложения, кода PHP в моем случае, а также разрешений для файлов, необходимых для его запуска? Что произойдет, когда я закрою экземпляр? Что, если у меня есть 3 экземпляра, и я внесу изменения в свой код?
Извините, что вы новичок в этой концепции.
Спасибо
Существует 2 типа инстансов EC2: (a) Хранилище экземпляров - этот тип инстанса имеет корневой том на аппаратном жестком диске. Вы не можете остановить этот тип экземпляра, его можно только прекратить. При завершении все данные на жестком диске теряются. (b) EBS-backed - этот тип инстанса имеет корневой том на томе EBS. Тома EBS сохраняются и хранятся отдельно от экземпляра EC2. Эти типы экземпляров можно останавливать и перезапускать без потери данных с томов EBS.
Экземпляры с поддержкой EBS являются предпочтительными типами экземпляров из-за возможности резервного копирования и восстановления томов, а также возможности останавливать и запускать ваши экземпляры.
В любом случае данные будут потеряны, если вы завершите свой экземпляр. Вы можете создавать образы AMI своих экземпляров EC2, которые затем можно использовать для создания новых копий вашего экземпляра.
Создайте том EBS и прикрепите его к своему экземпляру. После установки служб (например, Apache, MySQL, PHP и т. Д.) Переместите соответствующие файлы в хранилище EBS.
Например, я запускаю Ubuntu на своих экземплярах, и поэтому вся необходимая информация о конфигурации для каждой службы содержится в соответствующем каталоге в / etc (например, / etc / apache2, / etc / php и так далее). После монтирования тома EBS в / vol я переместил каталог / etc / {service} в / vol. Итак, PHP перешел из / etc / php5 в / vol / etc / php5. Затем я связал / etc / php5 с / vol / etc / php5. Единственная проблема - с MySQL, вы также должны создать каталог данных / var / lib / mysql.
Теперь, если мой экземпляр умирает или я его прекращаю, все конфигурации сохраняются в EBS, которые я затем могу клонировать или присоединить к любому другому экземпляру. Поскольку я также разместил / var / www / на томе EBS, мои веб-сайты и все их данные тоже там.