Memperbesar ukuran persistent disk


Anda dapat meningkatkan ukuran persistent disk saat instance virtual machine (VM) memerlukan ruang penyimpanan tambahan atau peningkatan batas performa. Anda dapat meningkatkan ukuran disk kapan saja, terlepas dari apakah disk terpasang ke VM yang berjalan atau tidak.

Anda hanya dapat menambah, dan tidak memperkecil, ukuran disk. Untuk mengurangi ukuran disk, Anda harus membuat disk baru dengan ukuran yang lebih kecil. Anda akan dikenai biaya untuk kedua disk sampai disk asli yang lebih besar dihapus.

Saat membuat image Linux kustom atau image Windows kustom, Anda perlu meningkatkan ukuran boot disk dan non-boot disk secara manual. Jika Anda menggunakan image publik, Compute Engine akan otomatis mengubah ukuran boot disk.

Memperbesar ukuran disk tidak akan menghapus atau mengubah data disk, tetapi sebagai praktik terbaik, sebelum Anda membuat perubahan apa pun pada sistem file atau partisi, selalu cadangkan disk Anda dengan membuat snapshot.

Compute Engine mengelola hardware di balik persistent disk, sehingga Anda dapat menambah dan mengubah ukuran disk tanpa menangani striping atau redundansi.

Sebelum memulai

  • 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.

    Terraform

    Untuk menggunakan contoh Terraform di halaman ini dari lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.

    1. Menginstal Google Cloud CLI.
    2. Untuk initialize gcloud CLI, jalankan perintah berikut:

      gcloud init
    3. Buat kredensial autentikasi lokal untuk Akun Google Anda:

      gcloud auth application-default login

    Untuk informasi selengkapnya, lihat Siapkan autentikasi untuk lingkungan pengembangan lokal.

    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

Memperbesar ukuran disk

Untuk meningkatkan ukuran boot disk atau non-boot disk, gunakan prosedur berikut:

Konsol

  1. Di konsol Google Cloud, buka halaman Disks.

    Buka halaman Disks

  2. Dalam daftar persistent disk di project Anda, klik nama disk yang ingin diubah ukurannya.

  3. Di halaman detail disk, klik Edit. Anda mungkin perlu mengklik menu More actions, lalu Edit.

  4. Di kolom Size, masukkan ukuran baru untuk disk Anda. Disk dengan tabel partisi MBR hanya dapat diubah ukurannya hingga 2 TB.

  5. Klik Save untuk menerapkan perubahan ke disk.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Di gcloud CLI, gunakan perintah gcloud compute disks resize dan tentukan flag --size dengan ukuran disk yang diinginkan, dalam gigabyte.

    gcloud compute disks resize DISK_NAME --size DISK_SIZE
    

    Ganti kode berikut:

    • DISK_NAME: nama disk yang diubah ukurannya.
    • DISK_SIZE: ukuran baru, dalam gigabyte, untuk disk. Ukuran disk dengan tabel partisi MBR hanya dapat diubah hingga 2 TB.

Terraform

Untuk mengubah ukuran persistent disk, Anda dapat menggunakan resource google_compute_disk dan parameter size.

# Using pd-standard because it's the default for Compute Engine

resource "google_compute_disk" "default" {
  name = "disk-data"
  type = "pd-standard"
  zone = "us-west1-a"
  size = "5"
}

Jika Anda menyertakan parameter size bersama dengan parameter image atau snapshot, nilai size harus sama dengan atau lebih besar dari ukuran image atau snapshot.

Jika menghapus parameter image dan snapshot, Anda dapat menyetel parameter size menjadi lebih kecil dari ukuran disk yang ada. Jika Anda melakukannya, Terraform akan menghapus disk dan membuat persistent disk kosong baru. Selama pembuatan ulang, Terraform tidak menyalin data lain yang juga tidak disertakan dalam konfigurasi Terraform, seperti label atau jadwal snapshot. Agar Terraform tidak menghancurkan dan membuat ulang disk, Anda dapat menambahkan setelan lifecycle.prevent_destroy = true ke konfigurasi Terraform.

REST

Buat permintaan POST ke metode compute.disks.resize.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/resize

{
 "sizeGb": "DISK_SIZE"
}

Ganti kode berikut:

  • PROJECT_ID: project ID Anda.
  • ZONE: zona tempat disk Anda berada.
  • DISK_NAME: nama disk yang akan diubah ukurannya.
  • DISK_SIZE: ukuran baru, dalam gigabyte, untuk disk. Ukuran disk dengan tabel partisi MBR hanya dapat diubah hingga 2 TB.

Mengubah ukuran sistem file dan partisi

Setelah memperbesar ukuran disk, Anda mungkin perlu mengubah ukuran sistem file dan partisinya. Daftar berikut menampilkan informasi tambahan untuk boot disk dan non-boot disk:

  • Boot disk: Jika menggunakan image Linux kustom atau image Windows kustom, Anda harus mengubah ukuran sistem file dan partisi root secara manual. Untuk VM dengan image publik, Compute Engine akan otomatis mengubah ukuran partisi root dan sistem file setelah Anda meningkatkan ukuran boot disk dan memulai ulang VM.

  • Non-boot disk: Setelah memperbesar ukuran disk, Anda harus memperluas sistem file pada disk untuk menggunakan ruang yang ditambahkan.

Contoh berikut menunjukkan cara mengubah ukuran partisi root dan sistem file boot disk secara manual, serta cara mengubah ukuran sistem file non-boot data disk tanpa tabel partisi secara manual. Contoh ini mengasumsikan bahwa disk yang terpasang sebelumnya telah diformat dan dipasang.

VM Linux

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka halaman VM instances

  2. Di samping instance yang memiliki disk baru yang terpasang, klik tombol SSH. Browser akan membuka koneksi terminal ke instance.

  3. Gunakan perintah df dan lsblk untuk mencantumkan ukuran sistem file dan menemukan nama perangkat untuk disk Anda.

    $ sudo df -Th
    
    Filesystem      Type     Size   Used  Avail  Use%  Mounted on
    /dev/sda1       ext4     9.7G   1.2G   8.5G   12%  /
    /dev/sdb        ext4     250G    60M   250G    1%  /mnt/disks/disk-1
    
    
    $ sudo lsblk
    
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda       8:0    0   20G  0 disk
    └─sda1    8:1    0   10G  0 part /
    sdb       8:16   0  500G  0 disk /mnt/disks/disk-1
    
    

    Contoh ini mencakup disk berikut:

    • Boot disk: Partisi /dev/sda1 berada pada boot disk yang ukurannya telah diubah menjadi 20 GB. Tabel partisi dan sistem file hanya menyediakan 9,7 GB untuk sistem operasi.
    • Non-boot data disk: Non-boot data disk /dev/sdb tidak memiliki tabel partisi, tetapi sistem file pada disk tersebut hanya menyediakan 250 GB untuk sistem operasi. Direktori pemasangan untuk disk ini adalah /mnt/disks/disk-1.

    Perintah df menunjukkan bahwa partisi /dev/sda1 terpasang sebagai sistem file root, dan disk /dev/sdb terpasang sebagai non-boot data disk di /mnt/disks/disk-1. Catat kolom Type, yang menunjukkan apakah disk Anda menggunakan sistem file ext4 atau xfs.

  4. Verifikasi jenis partisi:

    sudo parted -l
    
    atau untuk melihat informasi hanya untuk disk tertentu:
    sudo parted -l /dev/DEVICE_NAME
    
    cari kolom: Partition Table, jika nilainya adalah msdos, maka disk memiliki jenis partisi MBR. Ini berarti ukuran maksimum disk tersebut adalah 2 TB.

  5. Ubah ukuran partisi root dan sistem file pada boot disk. Contoh ini mengasumsikan bahwa image VM tidak mendukung partisi root otomatis dan pengubahan ukuran sistem file.

    1. Ubah ukuran partisi root menggunakan parted. Misalnya, perintah berikut memperluas partisi 1 dari /dev/sda ke ukuran maksimum yang memungkinkan:

      1. Buka parted pada partisi /dev/sda:

        sudo parted /dev/sda
        
      2. Pada prompt (parted), masukkan:

        resizepart
        
      3. Pada prompt Partition number?, masukkan:

        1
        
      4. Pada prompt Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?, masukkan:

        Yes
        
      5. Pada prompt End?, masukkan

        100%
        
      6. Pada prompt (parted), masukkan:

        quit
        
    2. Baca tabel partisi baru menggunakan partprobe.

      sudo partprobe /dev/sda
      
    3. Memperluas sistem file:

      • Jika Anda menggunakan ext4, gunakan perintah resize2fs:

        sudo resize2fs /dev/sda1
        
      • Jika Anda menggunakan xfs, gunakan perintah xfs_growfs:

        sudo xfs_growfs -d /
        
      • Jika Anda menggunakan btrfs, gunakan perintah btrfs:

        sudo btrfs filesystem resize max /
        
  6. Mengubah ukuran sistem file pada non-boot data disk.

    • Jika Anda menggunakan ext4, gunakan perintah resize2fs untuk memperluas sistem file:

      sudo resize2fs /dev/DEVICE_NAME
      

      Ganti DEVICE_NAME dengan nama perangkat untuk disk. Dalam contoh ini, nama perangkat adalah /dev/sdb.

    • Jika Anda menggunakan xfs, gunakan perintah xfs_growfs untuk memperluas sistem file:

      sudo xfs_growfs MOUNT_DIR
      

      Ganti MOUNT_DIR dengan direktori pemasangan perangkat. Anda dapat menemukan direktori pemasangan yang tercantum di kolom MOUNTPOINT dalam output perintah lsblk.

    • Jika Anda menggunakan btrfs, gunakan perintah btrfs untuk memperluas sistem file:

      sudo btrfs filesystem resize max MOUNT_DIR
      

      Ganti MOUNT_DIR dengan direktori pemasangan perangkat. Anda dapat menemukan direktori pemasangan yang tercantum di kolom MOUNTPOINT dalam output perintah lsblk.

  7. Gunakan perintah df untuk memastikan bahwa sistem file diperluas. Misalnya:

    df -h /dev/sdb
    
    Filesystem  Size  Used  Avail  Use%  Mounted on
    /dev/sdb    493G   70M  492G     1%  /mnt/disks/disk-1
    

VM Windows

Gunakan utilitas Windows Disk Management untuk mengubah ukuran partisi pada instance Windows.

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka halaman VM instances

  2. Di samping instance yang memiliki disk yang diubah ukurannya, klik tombol RDP. Browser akan membuka koneksi RDP ke instance.

  3. Klik kanan tombol Start Windows dan pilih Disk Management untuk membuka alat Disk Management.

    Memilih alat Windows Disk Manager dari menu klik kanan pada tombol Start Windows.

  4. Tampilkan jenis partisi disk dengan menjalankan di Powershell:

    Get-Disk
    
    di bagian kolom Partition Style, jika nilainya adalah MBR, maka disk memiliki jenis partisi MBR. Artinya, ukuran maksimum disk tersebut adalah 2 TB.

  5. Muat ulang alat Disk Management agar dapat mengenali ruang tambahan di persistent disk zona Anda. Di bagian atas jendela Disk Management, klik Action, lalu pilih Refresh.

    Mengklik menu Action dan memilih Refresh untuk memperbarui informasi persistent disk zona di alat Disk Management.

  6. Pada disk yang telah diubah ukurannya, klik kanan partisi yang diformat, lalu pilih Extend Volume.

    Klik kanan bagian disk yang diformat dan pilih opsi Extend Volume.

  7. Ikuti petunjuk di Extend Volume Wizard untuk memperluas partisi yang ada agar mencakup kapasitas disk tambahan. Jika partisi yang sudah ada diformat dalam NTFS, ukuran partisi maksimum dibatasi oleh setelan ukuran clusternya.

  8. Setelah Anda menyelesaikan wizard dan volume selesai memformat, periksa kolom Status pada daftar disk yang terpasang untuk memastikan bahwa disk baru memiliki status Healthy.

    Dengan melihat daftar disk yang dikenali oleh Windows, pastikan instance tersebut Online dengan status Responsif.

Anda tidak perlu memulai ulang VM setelah menyelesaikan proses ini. Kini Anda dapat menggunakan kapasitas disk tambahan untuk menyimpan data.

Langkah selanjutnya