Графики Digital Ocean и обновление droplet

У меня есть Droplet на 2 ГБ ОЗУ и 25 ГБ дискового пространства за $10 от Digital Ocean. Мой форум довольно новый, поэтому все показатели пока малы, за исключением:

  • Память (75–80%, и вчера необъяснимо подскочила до 85% и остаётся на этом уровне). При установке Discourse я выбрал вариант с 2 ГБ ОЗУ, не настраивая подкачку.

  • Использование диска (78–80%). Один раз при пересборке Discourse закончилось место на диске, и мне пришлось освободить немного пространства, прежде чем я повторил попытку. Есть ли способ освободить ещё больше места (например, окончательно удалив «удалённые» темы)?

При каких уровнях использования в процентах стоит задуматься об апгрейде Droplet?

Хорошо, вам нужно понять несколько вещей о том, как работает Discourse:

  • Discourse использует как можно больше оперативной памяти для ускорения отклика. Поэтому использование 80% памяти будет происходить как на droplet с 2 ГБ, так и на правильно настроенном droplet с 16 ГБ.
  • Использование диска не должно быть таким высоким, если у вас нет большого количества вложений. Вы можете попробовать запустить ./launcher cleanup, чтобы удалить старые изображения; это обычно помогает, если на сервере много пересборок.

Вариант с 2 ГБ должен включать SWAP; вы можете начать выгружать данные из SWAP примерно при 4 ГБ оперативной памяти.

Спасибо за ваш совет по поводу памяти.

Я попробую ваше предложение по поводу места на диске (у меня нет вложений). Интересно, не в этом ли виноваты резервные копии или снимки Digital Ocean.

Я заметил в этом посте, который был опубликован до моей установки Discourse, что файл подкачки настраивается автоматически:

https://meta.discourse.org/t/create-a-swapfile-for-your-linux-server/13880/60

Возможно, именно поэтому использование памяти стабильно держится на уровне 75–80%. Как мне проверить, есть ли у меня файл подкачки?

Вы можете выполнить команду free и проверить. Но если вы следовали руководству по установке, то, скорее всего, у вас уже есть SWAP.

Вы, должно быть, отправили свой ответ почти до того, как я задал свой вопрос! Спасибо еще раз. Я попробую ваши предложения и отчитаюсь.

Память остаётся на уровне 70%, и это нормально. Она используется для ускорения доступа к диску. Не беспокойтесь. Если вас интересует причина, вы можете найти в Google «почему Linux использует так много памяти».

Вы меняли размер вашего Droplet? Я думал, что тариф за 10 долларов в месяц предусматривает 50 ГБ хранилища. Хотя можно обойтись и 25 ГБ, но в этом случае вам придётся довольно часто выполнять:

  ./launcher cleanup

Да, своп был установлен :slight_smile:

              total        used        free      shared  buff/cache   available
Mem:        2035548     1509908       94712      159096      430928      200948
Swap:       2097148      171008     1926140

Как раз кстати вы об этом упомянули… Я проверил вкладку «Изменить размер» и увидел среди прочего следующие варианты:

Базовый общий процессор 1 vCPU 2 ГБ 25 ГБ 2 ТБ $10/мес 0.015/час
Базовый общий процессор 1 vCPU 2 ГБ 50 ГБ 2 ТБ $10/мес $0.015/час

Спасибо за подсказку… :slight_smile:

Помогло ли что-то из этого?

# ./launcher cleanup
...
Восстановлено места: 5.823 ГБ
...

# df
Файловая система     1K-блоков     Использовано Доступно  % Использовано  Смонтировано на
udev              973360        0    973360   0% /dev
tmpfs             203552     1112    202440   1% /run
/dev/vda1       50633164 13236268  37380512  27% /
tmpfs            1017752        0   1017752   0% /dev/shm
tmpfs               5120        0      5120   0% /run/lock
tmpfs            1017752        0   1017752   0% /sys/fs/cgroup
/dev/vda15        106858     3934    102924   4% /boot/efi
/dev/loop0         56832    56832         0 100% /snap/core18/1988
/dev/loop1         56832    56832         0 100% /snap/core18/1997
/dev/loop2         33152    33152         0 100% /snap/snapd/11588
/dev/loop3         72192    72192         0 100% /snap/lxd/19647
/dev/loop4         69248    69248         0 100% /snap/lxd/20326
/dev/loop5         32896    32896         0 100% /snap/snapd/11841
overlay         50633164 13236268  37380512  27% /var/lib/docker/overlay2/c8513c82acabacccaf50e9ac0f082c1f742639944e8aef980fe3805850b5c1cd/merged
overlay         50633164 13236268  37380512  27% /var/lib/docker/overlay2/d7c85dc8bc2d7922a71795a329a59b44eb507df8896e5baf068384314d0ba1de/merged
tmpfs             203548        0    203548   0% /run/user/0

Да, эта команда освободила для вас 5,8 ГБ места. А согласно результату второй команды, на диске занято всего 27%.

Отлично. Всё сходится — я использовал около 20 ГБ (80 % от 25 ГБ), а теперь использую около 14 ГБ (27 % от 50 ГБ).

Эта тема была действительно полезной. Большое спасибо вам обоим.

Цена за 50 ГБ такая же? :thinking:

Согласно их сайту, сегодня базовый droplet объемом 25 ГБ стоит 5 долларов в месяц, имеет 1 ГБ CPU, 1 ТБ трафика и тариф 0,00744 доллара в час.
Droplet объемом 50 ГБ стоит 10 долларов в месяц, имеет 2 ГБ CPU, 2 ТБ трафика и тариф 0,01488 доллара в час.

@JimPas Всё верно. Возможно, в октябре 2020 года ситуация была иной: меня оставили на старом контракте, но при этом разрешили перейти на текущее предложение.

@merefield Да, та же цена!

О, это имеет смысл… и это было с их стороны мило. Должно быть, у них изменились цены, и они повысили тариф для уже существующих клиентов. Круто.

Забавно представлять безликую глобальную корпорацию доброй. Но, да, я полагаю, это достойный подход! Возможно, они не произвели автоматическое обновление аккаунта, потому что это вызвало бы сбои или потребовало бы слишком много усилий для десятков тысяч клиентов.

Редактирование: Кажется, я вспомнил… можно увеличить мощность CPU/оперативной памяти, а затем снова уменьшить, но с дисковым пространством всё работает только в одну сторону. Поэтому я, вероятно, увеличил оперативную память с 1 ГБ до 2 ГБ, но не менял дисковое пространство, чтобы при необходимости иметь возможность снова уменьшить его.