На сервере Postgres заканчивается место на диске

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

Symptom

На сервере Postgres, на котором хранятся данные Аналитики, закончилось место на диске.

В приведенном ниже примере видно, что диск /u01 заполнен на 90% (176 ГБ из 207 ГБ).

$df -g

Filesystem Size User Avail Use% Mounted on
/dev/mapper/sysvg-syslv09 207G 176G 176G 21G 90% /u01

Сообщения об ошибках

Сообщение об ошибке может не появиться, если на сервере Postgres не закончилось свободное место.

Возможные причины

В таблице ниже перечислены возможные причины этой проблемы.

Причина Для кого
Недостаточно места на диске Пользователи Edge Private Cloud
Отсутствие удаления данных Аналитики Пользователи Edge Private Cloud

Недостаточно места на диске

диагностика;

Одна из типичных причин ошибок, связанных с нехваткой места на диске, на серверах Postgres заключается в том, что у вас недостаточно места для хранения больших объемов данных аналитики. Ниже описано, как проверить, достаточно ли места на диске, и что делать, если его не хватает.

  1. Определите скорость входящего трафика API в Edge, используя Сводку производительности прокси-сервера Аналитики.

    Пример эффективности прокси-сервера с указанием среднего количества транзакций в секунду

  2. Рассмотрим следующий сценарий:
    1. Входящий трафик API для вашей организации составляет 22 транзакции в секунду.
      1. Это означает, что трафик API составляет 1 900 800 транзакций в день (22 * 60 * 60 * 24).
      2. Обратите внимание, что каждая транзакция или сообщение в Аналитике имеет размер 1,5 КБ.
      3. Таким образом, каждый день генерируется 2,7 ГБ данных Аналитики (1 900 800 * 1,5 КБ).
    2. Вам необходимо хранить на серверах Postgres данные Аналитики за 30 дней.
      1. Общий объем данных, сгенерированных за 30 дней, составляет 81 ГБ (2,7 ГБ * 30).
    3. Таким образом, чтобы хранить данные Аналитики за 30 дней при скорости трафика 22 TPS, вам потребуется 150 ГБ дискового пространства.
      1. 81 ГБ (данные Аналитики) + 50 ГБ (другие данные, например журналы) + 20 ГБ (дополнительное буферное пространство) = 150 ГБ.
  3. Если на диске системы меньше 150 ГБ свободного пространства (как в примере выше), то его недостаточно для хранения данных Аналитики.

Разрешение

Добавьте достаточно места на диске на сервере Postgres.

Отсутствие удаления данных Аналитики

диагностика;

С ростом трафика API в Edge увеличится и объем данных аналитики, хранящихся в базе данных Postgres. Объем данных статистики, которые можно хранить в базе данных Postgres, ограничен объемом дискового пространства, доступного в системе.

Поэтому вы не можете продолжать хранить дополнительные данные аналитики в базе данных Postgres, не выполнив одно из следующих действий:

  1. Добавьте больше места на диске.

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

  2. Удалите данные, которые хранятся дольше требуемого срока.

    Это предпочтительное решение, поскольку оно позволяет регулярно удалять ненужные данные.

Если не удалять данные регулярно вручную или с помощью задания cron, объем данных аналитики будет постоянно расти и в конечном итоге может привести к нехватке места на диске в системе.

Разрешение

Чтобы удалить данные, которые хранятся дольше заданного интервала:

  1. Определите интервал хранения, то есть период, в течение которого вы хотите хранить данные Аналитики в базе данных Postgres.
  2. Чтобы удалить данные для определенной организации и среды, выполните следующую команду:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge
      org env number_of_days_to_retain [Delete-from-parent-fact - N/Y] [Skip-confirmation-prompt - N/Y]
    

Скрипт имеет следующие параметры:

  • Delete-from-parent-fact Значение по умолчанию: "Нет". Также будут удалены данные старше срока хранения из родительской таблицы фактов.
  • Skip-confirmation-prompt. Значение по умолчанию: "Нет". Если выбрано значение "Нет", скрипт запросит подтверждение перед удалением данных из родительского факта. Установите значение "Да", если скрипт удаления автоматизирован.

Подробнее об удалении данных Аналитики…

Если проблема не исчезнет, обратитесь в службу поддержки Apigee Edge.