Memecahkan masalah kapasitas disk yang penuh dan pengubahan ukuran disk


Halaman ini menjelaskan masalah umum yang mungkin Anda alami saat mengubah ukuran persistent disk atau saat persistent disk penuh, serta cara memperbaikinya.

Sebelum memulai

  • Selalu buat snapshot disk Anda sebelum melakukan langkah pemecahan masalah untuk memastikan data Anda sudah dicadangkan.
  • Siapkan autentikasi, jika Anda belum melakukannya. Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan region dan zona default.

    REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

      Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init

Error kapasitas terbatas saat mengubah disk

Berikut adalah error umum yang mungkin Anda alami saat mencoba mengubah Extreme Persistent Disk atau Google Cloud Hyperdisk. Anda mungkin melihat error ini muncul di sejumlah tempat, seperti di output konsol serial atau di log aplikasi.

    Disk cannot be resized due to being rate limited.
    
    Cannot update provisioned iops due to being rate limited.
    
    Cannot update provisioned throughput due to being rate limited.
    

Tinjau batas waktu berikut untuk memodifikasi disk:

  • Anda dapat mengubah ukuran volume Extreme Persistent Disk atau Hyperdisk Throughput hanya sekali dalam jangka waktu 6 jam.
  • Anda dapat mengubah ukuran volume Hyperdisk Extreme hanya sekali dalam jangka waktu 4 jam.
  • Anda dapat mengubah IOPS atau throughput yang disediakan untuk volume Hyperdisk hanya sekali dalam jangka waktu 4 jam.

Untuk mengatasi error ini, tunggu selama waktu yang diperlukan sejak modifikasi terakhir Anda sebelum kembali mencoba memodifikasi disk.

Error kapasitas disk

Disk penuh

Berikut adalah error umum yang mungkin Anda alami saat kapasitas persistent disk sudah penuh. Anda mungkin melihat error ini muncul di sejumlah tempat, seperti dalam output konsol serial atau di log aplikasi.

    No space left on device
    
    Not enough storage is available to process this command
    

Untuk menyelesaikan masalah ini, lakukan tindakan berikut:

  1. Buat snapshot disk.

  2. Hapus file yang tidak diperlukan di disk untuk mengosongkan ruang penyimpanan.

  3. Jika setelah ini disk Anda memerlukan lebih banyak ruang, ubah ukuran disk.

VM tidak dapat diakses karena boot disk penuh

VM Anda mungkin tidak dapat diakses jika boot disk-nya penuh. Skenario ini mungkin sulit untuk diidentifikasi karena indikasinya tidak selalu jelas apakah masalah konektivitas VM disebabkan oleh kapasitas boot disk yang penuh atau tidak. Berikut adalah contoh error umum yang mungkin Anda alami jika Anda tidak dapat mengakses VM dari Google Cloud CLI karena boot disk penuh:

      Network error: Software caused connection abort
      
      ERROR: (gcloud.compute.ssh) Could not SSH into the instance.  It is possible
      that your SSH key has not propagated to the instance yet. Try running this
      command again.  If you still cannot connect, verify that the firewall and
      instance are set to accept ssh traffic.
      
      You cannot connect to the VM instance because of an unexpected error. Wait a
      few moments and then try again.
      
      No space left on device
      
      ERROR Exception calling the response handler. [Errno 2] No usable temporary
      directory found in ['/tmp', '/var/tmp', '/usr/tmp', '/']...
      

Untuk mengatasi masalah di atas, lakukan langkah berikut:

  1. Pastikan bahwa kegagalan SSH VM disebabkan oleh boot disk penuh:

    gcloud compute instances tail-serial-port-output VM_NAME
    

    Jika boot disk penuh, output yang dihasilkan akan berisi pesan No space left on device.

  2. Jika Anda belum melakukannya, buat snapshot dari boot disk VM.

  3. Coba mulai ulang VM.

  4. Jika Anda tetap tidak dapat mengakses VM, lakukan langkah berikut:

    1. Hentikan VM:

      gcloud compute instances stop VM_NAME
      

      Ganti VM_NAME dengan nama VM Anda.

    2. Perbesar ukuran boot disk:

      gcloud compute disks resize BOOT_DISK_NAME --size DISK_SIZE
      

      Ganti kode berikut:

      • BOOT_DISK_NAME: nama boot disk VM Anda
      • DISK_SIZE: ukuran baru yang lebih besar, dalam gigabyte, untuk boot disk

      Misalnya, untuk mengubah ukuran disk bernama example-disk-1 menjadi 6 GB, jalankan perintah berikut:

      gcloud compute disks resize example-disk-1 --size=6GB
      
    3. Mulai VM:

      gcloud compute instances start VM_NAME
      
  5. Coba kembali SSH ke VM. Jika Anda tetap tidak dapat mengakses VM, lakukan salah satu langkah berikut:

Masalah sistem file

Pengubahan ukuran sistem file

Setelah Anda mengubah ukuran boot disk VM, sebagian besar VM akan mengubah ukuran sistem file root dan memulai ulang VM. Namun, untuk beberapa jenis image VM, Anda mungkin harus mengubah ukuran sistem file secara manual. Jika VM Anda tidak mendukung pengubahan ukuran sistem file root otomatis, atau jika Anda telah mengubah ukuran persistent disk data (non-boot), Anda harus mengubah ukuran sistem file dan partisi secara manual.

Untuk memeriksa apakah sistem file root Anda diperluas secara otomatis setelah Anda mengubah ukuran boot disk VM, lakukan hal berikut:

  1. Pastikan bahwa VM Anda mengubah ukuran boot disk menggunakan salah satu metode berikut:

    • Periksa output port serial. Cari baris yang menunjukkan bahwa partisi root telah diubah ukurannya.

      Misalnya, pada VM dengan image Debian, jika perubahan ukuran otomatis berhasil, log konsol akan menyertakan baris ... expand-root.sh[..]: Resizing ext4 filesystem on /dev/sda1.

    • Jika Anda dapat terhubung ke VM Linux menggunakan SSH, jalankan perintah df -h untuk memeriksa apakah ada kapasitas disk yang kosong.

      Misalnya, output ini menunjukkan bahwa sistem file root sudah 92% penuh:

      Filesystem                                    Size  Used Avail Use% Mounted on
      udev                                           63G     0   63G   0% /dev
      tmpfs                                          13G  1.4M   13G   1% /run
      /dev/sda1                                     339G  315G   24G  92% /
      
  2. Jika VM Anda tidak mengubah ukuran sistem file root, ubah ukuran sistem file dan partisi secara manual.