Menambahkan Persistent Disk ke VM TPU

VM TPU menyertakan boot disk berukuran 100 GB. Untuk beberapa skenario, VM TPU Anda mungkin memerlukan penyimpanan tambahan untuk pelatihan atau pra-pemrosesan. Anda dapat menambahkan Persistent Disk untuk menambah kapasitas disk lokal Anda.

Ringkasan

Persistent Disk yang terpasang ke TPU perangkat tunggal (v2-8, v3-8, v4-8, dll.) dapat dikonfigurasi sebagai read-write atau read-only. Saat Anda memasang Persistent Disk ke VM TPU yang merupakan bagian dari Pod TPU, disk akan dipasang ke setiap VM TPU di Pod tersebut. Untuk mencegah dua VM TPU atau lebih dari Pod menulis ke Persistent Disk sekaligus, semua Persistent Disk yang terpasang ke VM TPU dalam Pod harus dikonfigurasi sebagai read-only. Disk read-only berguna untuk menyimpan set data untuk diproses di Pod TPU.

Setelah membuat dan memasang Persistent Disk ke VM TPU, Anda harus memasang Persistent Disk, yang menentukan lokasi akses Persistent Disk dalam sistem file. Untuk informasi selengkapnya, lihat Memasang disk.

Prasyarat

Anda harus sudah menyiapkan akun dan project Google Cloud sebelum menggunakan prosedur berikut. Jika Anda belum menyiapkan project Cloud TPU, ikuti prosedur dalam Menyiapkan akun dan project Cloud TPU sebelum melanjutkan.

Langkah-langkah tingkat tinggi

Langkah-langkah tingkat tinggi untuk menyiapkan Persistent Disk:

  1. Membuat Persistent Disk
  2. Memasang Persistent Disk ke VM TPU
  3. Memasang Persistent Disk
  4. Membersihkan resource Persistent Disk dan VM TPU

Menyiapkan VM TPU dan Persistent Disk

Anda dapat memasang Persistent Disk ke VM TPU saat membuat VM TPU. Anda juga dapat memasang Persistent Disk ke VM TPU yang ada.

Membuat Persistent Disk

Gunakan perintah berikut untuk membuat Persistent Disk:

  $ gcloud compute disks create disk-name \
    --size disk-size  \
    --zone zone \
    --type pd-balanced

Deskripsi flag perintah

disk-name
Nama pilihan Anda untuk Persistent Disk.
disk-size
Ukuran Persistent Disk dalam GB.
zone
Zona tempat membuat Persistent Disk. Zona ini harus sama dengan zona yang digunakan untuk membuat TPU.
type
Jenis disk yang akan ditambahkan. Jenis yang didukung adalah: pd-standard, pd-ssd, atau pd-balanced.

Memasang Persistent Disk

Anda dapat memasang Persistent Disk ke VM TPU saat membuat VM TPU atau menambahkannya setelah VM TPU dibuat.

Memasang Persistent Disk saat Anda membuat VM TPU

Gunakan flag --data-disk untuk memasang Persistent Disk saat Anda membuat VM TPU. Jika membuat Pod TPU, Anda harus menentukan mode=read-only. Jika membuat satu perangkat TPU, Anda dapat menentukan mode=read-only atau mode=read-write. Perintah berikut membuat satu TPU dan menetapkan mode Persistent Disk ke read-write:

  $ gcloud compute tpus tpu-vm create tpu-name \
    --project project-id \
    --zone=zone \
    --accelerator-type=v3-8 \
    --version=Cloud TPU software version \
    --data-disk source=projects/project-id/zones/zone/disks/disk-name,mode=read-write

Deskripsi flag perintah

tpu-name
Nama yang Anda pilih untuk resource TPU.
project
Project ID Anda.
zone
Zona untuk membuat Cloud TPU Anda.
accelerator-type
Jenis akselerator menentukan versi dan ukuran Cloud TPU yang ingin Anda buat. Untuk mengetahui informasi selengkapnya tentang jenis akselerator yang didukung untuk setiap versi TPU, lihat versi TPU.
version
Versi software Cloud TPU untuk framework Anda.
data-disk
Nama dan mode baca/tulis Persistent Disk yang akan dipasang ke VM TPU.

Memasang Persistent Disk ke VM TPU yang ada

Gunakan perintah gcloud alpha compute tpus tpu-vm attach-disk untuk memasang Persistent Disk ke VM TPU yang ada. Lihat dokumentasi gcloud untuk detail dan contoh selengkapnya.

  $ gcloud alpha compute tpus tpu-vm attach-disk tpu-name \
    --zone=zone \
    --disk=disk-name \
    --mode=disk-mode

Deskripsi flag perintah

tpu-name
Nama resource TPU.
zone
Zona tempat Cloud TPU berada.
disk-name
Nama Persistent Disk yang akan dipasang ke VM TPU.
mode
Mode disk. Mode harus salah satu dari: read-only atau read-write.

Jika ingin menghapus Persistent Disk saat menghapus VM TPU, Anda perlu menyetel status hapus otomatis untuk Persistent Disk menggunakan perintah berikut:

$ gcloud compute instances set-disk-auto-delete vm-instance \
  --zone=zone \
  --auto-delete \
  --disk=disk-name

Deskripsi flag perintah

vm-instance
Setelah Anda menerapkan SSH ke VM TPU, perintah shell Anda akan berubah untuk menyertakan ID pengguna Anda, diikuti dengan nama instance VM yang dihasilkan (misalnya. pjohnston@t1v-n-...$). Ganti vm-instance dengan nama instance VM yang dihasilkan,
zone
Zona tempat Persistent Disk berada.
auto-delete
Hapus Persistent Disk secara otomatis saat resource TPU dihapus.
disk-name
Nama Persistent Disk Anda.

Jika VM Anda dimatikan karena alasan apa pun, Persistent Disk mungkin akan terputus. Lihat Mengonfigurasi pemasangan otomatis saat sistem dimulai ulang agar Persistent Disk terpasang secara otomatis saat VM dimulai ulang.

Untuk mengetahui informasi selengkapnya tentang penghapusan Persistent Disk secara otomatis, lihat Mengubah Persistent Disk.

Memasang Persistent Disk

Untuk mengakses Persistent Disk dari VM TPU, Anda harus memasang disk. Atribut ini menentukan lokasi dalam sistem file VM TPU tempat Persistent Disk dapat diakses.

  1. Hubungkan ke VM TPU Anda menggunakan SSH:

    $ gcloud compute tpus tpu-vm ssh tpu-name --zone zone
    

    Saat bekerja dengan Pod TPU, ada satu VM TPU untuk setiap TPU di Pod. Perintah sebelumnya akan berfungsi untuk perangkat TPU dan Pod TPU. Jika Anda menggunakan Pod TPU, perintah ini akan menghubungkan Anda ke TPU pertama di Pod (juga disebut worker 0).

  2. Dari VM TPU, cantumkan disk yang terpasang ke VM TPU:

    (vm)$ sudo lsblk
    

    Output dari perintah lsblk akan terlihat seperti berikut:

    NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    loop0     7:0    0  55.5M  1 loop /snap/core18/1997
    loop1     7:1    0  67.6M  1 loop /snap/lxd/20326
    loop2     7:2    0  32.3M  1 loop /snap/snapd/11588
    loop3     7:3    0  32.1M  1 loop /snap/snapd/11841
    loop4     7:4    0  55.4M  1 loop /snap/core18/2066
    sda       8:0    0   300G  0 disk
    ├─sda1    8:1    0 299.9G  0 part /
    ├─sda14   8:14   0     4M  0 part
    └─sda15   8:15   0   106M  0 part /boot/efi
    sdb       8:16   0    10G  0 disk    <== Persistent Disk
    

    Dalam contoh ini, sda adalah boot disk dan sdb adalah nama Persistent Disk yang baru ditambahkan. Nama Persistent Disk yang terpasang akan bergantung pada jumlah persistent disk yang terpasang ke VM.

    Saat menggunakan Pod TPU, Anda harus memasang Persistent Disk di semua VM TPU di Pod Anda. Nama Persistent Disk harus sama untuk semua VM TPU, tetapi tidak dijamin. Misalnya, jika Anda melepaskan lalu memasang ulang Persistent Disk, nama perangkat akan bertambah, berubah dari sdb menjadi sdc, dan seterusnya.

  3. Jika disk belum diformat, format Persistent Disk yang terpasang sekarang:

    (vm)$ sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/sdb
    
  4. Buat direktori untuk memasang Persistent Disk:

    Jika Anda menggunakan perangkat TPU, jalankan perintah berikut untuk membuat direktori pemasangan Persistent Disk:

    (vm)$ sudo mkdir -p /mnt/disks/persist
    

    Jika Anda menggunakan Pod TPU, jalankan perintah berikut di luar VM TPU. Tindakan ini akan membuat direktori di semua VM TPU di Pod.

    (vm)$ gcloud compute tpus tpu-vm ssh $TPU_NAME --worker=all --command="sudo mkdir -p /mnt/disks/persist"
    
  5. Pasang Persistent Disk:

    Jika Anda menggunakan perangkat TPU, jalankan perintah berikut untuk memasang Persistent Disk di VM TPU Anda.

    (vm)$ sudo mount -o discard,defaults /dev/sdb /mnt/disks/persist

    Jika Anda menggunakan Pod TPU, jalankan perintah berikut di luar VM TPU. Perintah ini akan memasang Persistent Disk di semua VM TPU di Pod Anda.

    (vm)$ gcloud compute tpus tpu-vm ssh $TPU_NAME --worker=all --command="sudo mount -o discard,defaults /dev/sdb /mnt/disks/persist"

Pembersihan

Hapus resource TPU setelah Anda selesai menggunakannya.

  1. Putuskan koneksi dari instance Compute Engine jika Anda belum melakukannya:

    (vm)$ exit
    

    Prompt Anda sekarang akan menjadi username@projectname, yang menunjukkan bahwa Anda berada di Cloud Shell.

  2. Hapus resource Cloud TPU dan Compute Engine Anda.

    $ gcloud compute tpus tpu-vm delete tpu-name \
     --zone=zone
    
  3. Verifikasi bahwa resource telah dihapus dengan menjalankan gcloud list. Penghapusan memerlukan waktu beberapa menit. Output dari gcloud list tidak boleh menampilkan resource VM TPU apa pun yang dibuat oleh prosedur ini.

    VM TPU

    $ gcloud compute tpus tpu-vm list --zone=zone
    

    Node TPU

    $ gcloud compute tpus execution-groups list --zone zone
    
  4. Pastikan bahwa Persistent Disk otomatis dihapus saat VM TPU dihapus dengan mencantumkan semua disk di zona tempat Anda membuat Persistent Disk:

    $ gcloud compute disks list --filter="zone:( us-central1-b )"
    

    Jika Persistent Disk tidak dihapus saat VM TPU dihapus, gunakan perintah berikut untuk menghapusnya:

    $ gcloud compute disks delete disk-name \
    --zone zone