Экземпляр EC2 на Amazon, и я получаю сообщение «На диске не осталось места»

#amazon-ec2 #amazon-web-services #fedora #ec2-ami

#amazon-ec2 #amazon-веб-сервисы #fedora #ec2-ami

Вопрос:

Я установил экземпляр Amazon EC2 fedora и скопировал файлы из одного места в другое. Но меня встречает сообщение «На диске не осталось места».

Я сделал df -f .

с выводом:

 Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              15G   15G     0 100% /
none                  312M     0  312M   0% /dev/shm
  

Я хочу увеличить пространство для экземпляра ec2 на Amazon. Кто-нибудь может мне с этим помочь?

Ответ №1:

Вот еще более простой метод. (Мой экземпляр m2.2xlarge был создан с RedHat Linux 6.2, я обнаружил, что в нем доступно ничтожные 6 ГБ из 850 ГБ):

  1. Через ssh проверьте пространство под root: $df -h
 Filesystem            Size  Used Avail Use% Mounted on
/dev/xvde1              6G    6G    0G   100% /
none                   17G     0   17G   0% /dev/shm
  
  1. Из консоли aws остановите экземпляр
  2. С консоли aws отсоедините том (хотя обратите внимание на точку монтирования в разделе информация о вложении, например /dev/sda1 )
  3. Из консоли aws сделайте снимок тома
  4. В консоли aws создайте новый том, используя снимок (используя все оставшееся пространство для типа экземпляра, например, 825 гб в моем случае m2.2xlarge).
  5. С консоли aws подключите новый том к исходной точке монтирования / dev / sda1
  6. Из консоли aws перезапустите экземпляр и вернитесь к экземпляру по ssh
  7. Из ssh запустите resize2fs в корневой файловой системе (см. df -h Вывод на шаге 1) [потенциально не требуется]

$ resize2fs /dev /xvde1

  1. подождите несколько минут, возможно, понаблюдайте за своим приятелем, который останавливает все корневые службы и т.д., Как босс : )
  2. обратите внимание на новое кавернозное монтирование: $ df -h
 Filesystem            Size  Used   Avail Use%   Mounted on
/dev/xvde1            813G  3.7G    801G   1%     /
none                   17G     0     17G   0%     /dev/shm
  

Комментарии:

1. У меня отлично работало, даже не понадобилась часть resize2fs. Спасибо!

2. Отличное решение. Работает как шарм. Шаг 8 необязателен.

3. Я последовал этому ответу, и теперь я не могу получить доступ к своему экземпляру EC2. Это говорит о том, что сайт недоступен. У кого-нибудь есть идея, где я был неправ?

4. Даже после повторного подключения тома я все еще ничего не мог сделать (потому что не было места). После выполнения sudo apt-get autoclean я смог, наконец, запустить sudo growpart /dev/nvme0n1 1

5. Как вы находите точку монтирования? Я также не могу найти информацию о вложении.

Ответ №2:

Измените размер тома. С консоли AWS вы можете изменить размер тома.

  1. Из консоли AWS откройте «ХРАНИЛИЩЕ ЭЛАСТИЧНЫХ БЛОКОВ / том»
  2. Выберите свой том и измените громкость (с помощью кнопки Действия)
  3. Измените размер (например, от 8 до 20 гб)
  4. Нажмите Изменить.
  5. Перезагрузитесь с панели мониторинга EC2.
  6. размер проверки изменен на df -h

Комментарии:

1. В меню изменения EBS нет reboot опции!

2. Вы можете перезагрузить его с панели мониторинга EC2. Нажмите кнопку Действия, состояние экземпляра и перезагрузитесь. Приветствия!

3. Это казалось самым простым и менее рискованным способом решения проблемы переполнения диска. Я попробовал, и это сработало! Следует отметить, что мой EC2 не перезагружался, потому что он был настолько заполнен, что мне пришлось выбрать состояние экземпляра> Остановить, а затем состояние экземпляра> запустить.

4. Я думаю, что в случае, если вы увеличите объем EBS, он воссоздаст экземпляры

5. @ParoX, что вы подразумеваете под менее рискованным? Подлинный вопрос. Заранее спасибо.

Ответ №3:

У меня есть решение, ребята, урааааа

Предполагая, что вы используете Linux AMI, в вашем случае у вас есть простой метод увеличения размера файловой системы:

1) Остановите экземпляр

2) Отсоедините корневой том

3) Сделайте снимок тома

4) Создайте новый том из моментального снимка, используя новый размер

5) Присоедините новый том к экземпляру в том же месте, где был исходный

6) Запустите экземпляр, остановите все службы, кроме ssh, и установите корневую файловую систему только для чтения

7) Увеличьте файловую систему (используя, например, resize2fs) и / или раздел, если необходимо

8) Перезагрузка

В качестве альтернативы вы также можете запустить новый экземпляр и сопоставить хранилище экземпляров или вы можете создать новый ami, объединив два предыдущих шага.

Комментарии:

1. Изменится ли IP?

2. если это частный IP, то да. Если общедоступный IP, то нет.

3. Я полагаю, что остановка экземпляра изменяет общедоступный IP. Если вам нужно сохранить свой IP, проведите исследование, прежде чем выполнять эти шаги.

4. Используйте эластичный IP, чтобы остановить его изменение при перезагрузке.

5. Для всех будущих пользователей поиска вот ссылка на Amazon guide .

Ответ №4:

  1. найдите самые большие файлы с du -a | sort -n
  2. остановите некоторые службы, они могут блокировать окончательное удаление скрытых / удаленных файлов.

Ответ №5:

Я пропустил все операции отсоединения / моментального снимка / создания тома … просто изменил размер.

 Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1              5904748   4725152   1119608  81% /
none                  15728640         0  15728640   0% /dev/shm
[root@ip-10-25-6-214 ~]# resize2fs /dev/sda1
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/sda1 to 31457280 (4k) blocks.
  

Комментарии:

1. Привет, добро пожаловать в SO. При ответе на вопросы, пожалуйста, добавляйте больше информации о вашем решении, чтобы другие могли легко повторить ваши шаги.

2. Этот ответ находится в очереди проверки сообщений низкого качества, потому что это просто код без объяснения. Пожалуйста, улучшите свой ответ, объяснив, что делает ваш код и как он отвечает на вопрос. Пожалуйста, прочтите этот совет о том, как с пользой отвечать на вопросы по программированию .

Ответ №6:

Я смонтировал диск на другом экземпляре EC2, где я мог успешно использовать growpart, а затем изменить размер2fs. После этого монтируется обратно к исходному экземпляру EC2.

Комментарии:

1. В более новых системах на базе Nitro это то, что я должен был сделать. Я бы получил сообщение об ошибке No space left on device , если бы попытался запустить growpart

Ответ №7:

Не уверен, добавила ли AWS дополнительные шаги для расширения добавленного дискового пространства, но приведенные ниже команды сработали для меня:

Следуйте ответу до вики-страницы сообщества Шаг 6 Опубликуйте это для шага 7 выполните следующие действия:

  1. Проверьте, есть ли на томе раздел. Используйте команду lsblk
 sudo lsblk
  

Вывод:

 NAME          MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

xvda       202:0    0  20G  0 disk
└─xvda1    202:1    0   8G  0 part /
  
  1. Проверьте, нужно ли расширять раздел. В выводе команды lsblk на предыдущем шаге сравните размер раздела и размер тома. Если размер раздела меньше размера тома, переходите к следующему шагу. Если размер раздела равен размеру тома, раздел не может быть расширен.
  2. Расширьте раздел. Используйте команду growpart и укажите раздел для расширения.
 sudo growpart /dev/xvda 1
  
  1. Убедитесь, что раздел был расширен. Используйте команду lsblk. Размер раздела теперь должен быть равен размеру тома
 sudo lsblk
  

Вывод:

 NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
xvda    202:0    0    20G  0 disk
└─xvda1 202:1    0    20G  0 part /
  

Ссылка

Ответ №8:

Ваш случай действителен, когда экземпляр EC2 был создан из «EBS-Store», а не «Instance-Store». Экземпляр EC2, созданный из «instance-store», всегда будет иметь огромное пространство (около 200 ГБ ), выделенное для каталога /mnt.

В противном случае ваше решение действительно для тех компьютеров EC2, которые созданы из «EBS-Store». С такими машинами вы можете сделать больше.

  1. Измените тип завершения
  2. Измените тип экземпляра
  3. Создайте AMI из экземпляра
  4. Автоматическое масштабирование с легкостью.

Комментарии:

1. Этот ответ неточен; размеры эфемерных томов варьируются в зависимости от размера экземпляра и типа AMI, а не [только] в зависимости от базового типа запуска (instance- или ebs-store). Кроме того, ответ фактически не решает проблему, поднятую в вопросе, и на самом деле должен был быть комментарием, а не ответом.