Назад | Перейти на главную страницу

Использование всего места на Amazon EC2 - средний уровень

В настоящее время я использую зарезервированный инстанс Amazon EC2 - среднего уровня для размещения клиентских веб-сайтов. В последнее время кажется, что места начинает не хватать /dev/sda1 - так что я подумал, что мне лучше подготовиться ..

df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             8.0G  5.6G  2.5G  70% /
none                  848M  116K  848M   1% /dev
none                  853M     0  853M   0% /dev/shm
none                  853M   56K  853M   1% /var/run
none                  853M     0  853M   0% /var/lock
/dev/sda2             335G  195M  318G   1% /mnt

Я видел этот вопрос: Как смонтировать пространство в / dev / sda2 - который предлагает одно решение, но как изменить размер активного раздела, такого как sda1, чтобы мне не пришлось менять текущую настройку? Или есть способы лучше использовать sda2?

НЕ ИСПОЛЬЗУЙТЕ ПРОБЕЛ В / МНТ! Это временное хранилище, и оно не будет сохраняться при перезагрузках - если вы поместите туда что-то, ОНО БУДЕТ УТЕРЯНЫ. Некоторые дистрибутивы linux для удобства монтируют временное хранилище, используют его для временного хранения или подкачки.

У вас есть пара вариантов.

Увеличить размер корневого диска

Вы не можете изменить размер / dev / sda1 на лету. Однако вы можете изменить его размер при запуске. Это потребует простоя, но вы можете

  1. Сделайте снимок существующего экземпляра в AMI. Это должно дать вам ami-yyyyyy (я надеюсь, вы уже делаете это или что-то в этом роде, чтобы делать резервные копии с течением времени!)

    ec2-stop-instances i-xxxxxx

    ec2-create-image --name my-image-name-v1.0 --description "My lovely Web Server" i-xxxxxxx

  2. Запустите новый экземпляр этого образа с большим размером корневого диска

    ec2-run-instances -k ssh-key -z us-east-1b -t c1.medium -b "/dev/sda1=:50" ami-yyyyyy

  3. Теперь у вас запущен экземпляр i-zzzzz. В зависимости от того, какой Linux вы используете, вам может потребоваться изменить размер файловой системы, чтобы получить дополнительное пространство. В Ubuntu на коробке:

    sudo resize2fs /dev/sdf

  4. Теперь замените i-zzzzzz на i-xxxxxx в своем эластичном IP-адресе, ELB или DNS, или как бы вы ни рекламировали это миру.

Добавить второй диск

Это, вероятно, лучше - немного дороже, но лучше всего НЕ помещать кучу вещей на корневой диск, как если бы он заполнялся журналами или файлами, которые вы собираетесь сломать, и у вас будет печальное время восстановления.

  1. Создайте том EBS желаемого размера, скажем 20 ГБ. Это дает вам объем, vol-yyyyyy.

    ec2-create-volume -z us-east-1b -s 20

  2. Прикрепите том к вашему экземпляру

    ec2-attach-volume vol-yyyyyy -i i-xxxxxx -d /dev/sdf

  3. На экземпляре создайте на нем файловую систему и смонтируйте ее

    sudo mkfs -t ext3 /dev/sdf

    sudo mkdir -p /web

    sudo mount /dev/sdf /web

  4. Переместите туда свой корневой каталог.

  5. Постоянно добавить новый диск в / etc / mnttab

    /dev/sdf /opt/apps ext3 defaults,rw 0 0

  6. Сделайте снимок вашего нового изображения в AMI, как на шаге 1 - всегда полезно.

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

Я бы связал крепления из /mnt в / как требуется. Это не идеально, но лучше, чем сейчас, и минимально навязчиво.