Ответ двоякий.
Обходной путь: используйте / dev / xvdb (/ mnt) для временных данных
Это так называемое эфемерное хранилище вашего экземпляра Amazon EC2, и его характеристики сильно отличаются от постоянного хранилища Amazon EBS, которое используется где-то еще. В частности, эта эфемерная память будет потеряна в циклах остановки / запуска и, как правило, может исчезнуть , поэтому вы определенно не хотите помещать туда что-либо имеющее длительную ценность, то есть размещаете там только временные данные, которые вы можете позволить себе потерять или восстановить легко , как файл подкачки или строго временные данные, используемые во время вычислений. Конечно, вы можете хранить там огромные индексы, например, но должны быть готовы перестроить их после того, как хранилище было очищено по любой причине (перезагрузка экземпляра, аппаратный сбой, ...).
Решение: измените размер / dev / xvda1 (/), чтобы получить желаемое хранилище
Это так называемый Root Устройство хранения вашей Amazon EBS поддержанного экземпляра EC2, что облегчает Amazon EBS для гибкости и прочности , в частности, то есть данные , поставить там достаточно безопасно и выживают сбои экземпляра; Вы можете еще больше повысить гибкость и долговечность, регулярно снимая том EBS, который хранится в Amazon S3 , с хорошо известной долговечностью 99,999999999%.
Эти функции моментального снимка позволяют поочередно решить вашу проблему, поскольку вы можете заменить текущее корневое хранилище EBS объемом 8 ГБ (/ dev / xvda1) на более или менее желаемое. Процесс описан в отличной статье Эрика Хаммонда « Изменение размера корневого диска в работающем экземпляре EBS Boot EC2» :
Если у вас все в порядке с небольшим временем простоя на экземпляре EC2 (несколько минут), можно заменить корневой том EBS на большую копию без необходимости запуска нового экземпляра.
Если вы правильно подготовите шаги, которые он описывает (я настоятельно рекомендую сначала протестировать их с одноразовым экземпляром EC2, чтобы ознакомиться с процедурой, или даже автоматизировать его с помощью специального скрипта), вы сможете завершить процесс с несколькими минуты простоя только действительно.
Большинство описанных шагов также можно выполнить с помощью Консоли управления AWS , что позволяет избежать использования инструментов Amazon EC2 API ; это сводится к:
- остановить (не завершить!) экземпляр EC2
- отсоедините том EBS от остановленного экземпляра
- создать снимок отсоединенного тома EBS
- создать новый (больший) том EBS из созданного снимка
- присоедините новый том EBS к экземпляру EC2 ( Важно ! Если это ваше корневое устройство, убедитесь, что оно названо точно в качестве корневого устройства экземпляра, как было упомянуто, например (/ dev / sda1) или (/ dev / xdva1) в противном случае он будет подключен как блочное устройство, а не как корневое устройство, и вы не сможете запустить экземпляр, так как для него не будет указано корневое устройство.)
- SSH в работающий экземпляр и подтвердите все в порядке через
df -ah
- если ваша система не изменила размер файловой системы автоматически, вам нужно будет сделать это вручную, как описано в статье Эрика.
Удачи!
альтернатива
Принимая во внимание универсальность и простоту использования этих томов EBS, дополнительным вариантом будет присоединение большего количества томов EBS к вашему экземпляру и перемещение туда четко разделенных проблемных областей.
Например, мы используем несколько довольно тяжёлых Java-приложений, каждое из которых потребляет 1-2 ГБ памяти на версию; чтобы упростить обновление версий и вообще иметь возможность перемещать эти приложения в разные экземпляры по своему усмотрению, я разместил их на выделенных томах EBS каждый, подключил их к экземпляру и мягко связал их с нужным местом, например, обычно /var/lib/<app>/<version>
и /usr/local/<app>/<version>
.
Используя этот метод, в настоящее время мы запускаем экземпляры EC2 с хранилищем корневого устройства, размер которого по умолчанию составляет 8 ГБ (как у вас), но иногда также подключается до 8 томов EBS с различными размерами (1-15 ГБ).
Вы должны знать о потенциальных проблемах производительности сети, поскольку все эти тома EBS используют одну и ту же локальную сеть для своих операций ввода-вывода, что может привести к соответствующему увеличению производительности или даже к насыщению сети в экстремальных случаях - так что, как обычно, это зависит на случай использования и рабочей нагрузки под рукой.