Server Postgres kehabisan kapasitas disk

Anda sedang melihat dokumentasi Apigee Edge.
Buka Dokumentasi Apigee X.
info

ini.

Gejala

Server Postgres yang berisi data Analytics telah kehabisan ruang disk.

Pada contoh berikut, Anda dapat melihat bahwa {i>disk /u01<i} telah mengisi 90% (176 GB/207 GB) dari kapasitas {i>disk<i}.

$df -g

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

Pesan error

Anda mungkin tidak melihat pesan {i>error<i} apa pun kecuali jika kapasitas {i>disk<i} telah terisi penuh Server Postgres.

Kemungkinan penyebab

Tabel berikut mencantumkan kemungkinan penyebab masalah ini:

Penyebab Untuk
Kapasitas disk tidak cukup Pengguna Edge Private Cloud
Kurangnya pemangkasan data Analytics Pengguna Edge Private Cloud

Kapasitas disk tidak cukup

Diagnosis

Salah satu penyebab umum untuk kesalahan ruang {i>disk<i} di Server Postgres adalah Anda tidak memiliki kapasitas {i>disk<i} yang cukup untuk menyimpan volume data analisis yang besar. Langkah-langkah yang disediakan di bawah ini akan membantu Anda menentukan apakah Anda memiliki kapasitas {i>disk<i} yang cukup atau tidak dan mengambil tindakan yang tepat untuk menangani menyelesaikan masalah.

  1. Menentukan kecepatan traffic API yang masuk ke Edge dengan merujuk ke Proxy Analytics Dasbor Performa.

    Contoh Performa Proxy yang menunjukkan TPS rata-rata

  2. Pertimbangkan skenario berikut:
    1. Traffic API masuk untuk organisasi Anda adalah 22 TPS (transaksi per detik).
      1. Artinya traffic API adalah 1.900.800 transaksi per hari (22 * 60 * 60 * 24).
      2. Perhatikan bahwa setiap transaksi/pesan di Analytics berukuran 1,5 ribu byte.
      3. Oleh karena itu, menghasilkan 2,7 GB data Analytics (1.900.800 * 1,5 ribu) setiap hari.
    2. Anda memiliki persyaratan untuk menyimpan data Analytics selama 30 hari di Postgres Server untuk referensi.
      1. Total data yang dihasilkan selama 30 hari = 81 GB (2,7 GB * 30)
    3. Oleh karena itu, untuk menyimpan data Analytics selama 30 hari dengan rasio traffic 22 TPS, Anda harus memiliki kapasitas disk 150 GB.
      1. 81 GB (data Analytics) + 50 GB (data lain seperti log, dll.) + 20 GB (tambahan ruang buffer) = 150 GB.
  3. Jika ruang {i>disk<i} Anda kurang dari 150 GB, contoh skenario di atas), berarti Anda tidak memiliki kapasitas disk yang cukup untuk menyimpan laporan layanan otomatis dan data skalabel.

Resolusi

Tambahkan kapasitas disk yang cukup ke mesin Postgres Server.

Kurangnya pemangkasan data Analytics

Diagnosis

Dengan meningkatnya traffic API ke Edge, jumlah data analisis yang disimpan di {i>Database postgres<i} juga akan meningkat. Jumlah data analisis yang dapat disimpan di Postgres dibatasi oleh jumlah kapasitas {i>disk<i} yang tersedia di dalam sistem.

Oleh karena itu, Anda tidak dapat terus menyimpan data analisis tambahan di Postgres database tanpa melakukan salah satu tindakan berikut:

  1. Tambahkan lebih banyak kapasitas disk.

    Ini bukan opsi yang terukur karena kita tidak dapat terus menambah kapasitas {i>disk<i} karena keterbatasan dan mahal.

  2. Pangkas data di luar interval retensi yang diperlukan.

    Ini adalah solusi yang lebih disukai karena Anda dapat memastikan bahwa data yang tidak lagi diperlukan yang dihapus dengan interval waktu yang teratur.

Jika Anda tidak memangkas data secara berkala secara manual atau dengan menggunakan {i>cron job<i}, maka jumlah data analitik terus meningkat dan pada akhirnya dapat menyebabkan Anda kehabisan kapasitas {i>disk<i} pada sistem.

Resolusi

Untuk memangkas data yang berada di luar interval retensi yang diperlukan:

  1. Tentukan interval retensi, yaitu durasi yang ingin Anda pertahankan Data analisis di Database Postgres.
  2. Jalankan perintah berikut untuk memangkas data untuk organisasi dan lingkungan tertentu:
    /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]
    

Skrip memiliki opsi berikut:

  • Delete-from-parent-fact Default : Tidak. Juga akan menghapus data yang lebih lama dari retensi hari dari tabel fakta induk.
  • Skip-confirmation-prompt. Default: Tidak. Jika Tidak, skrip akan meminta konfirmasi sebelum menghapus data dari fakta induk. Tetapkan ke Ya jika skrip penghapusan permanen otomatis.

Untuk informasi selengkapnya, lihat Memangkas data Analytics.

Jika masalah berlanjut, hubungi Dukungan Apigee Edge.