Menambahkan Persistent Disk ke VM TPU

VM TPU menyertakan disk booting 100 GB. Untuk beberapa skenario, VM TPU Anda mungkin memerlukan penyimpanan tambahan untuk pelatihan atau prapemrosesan. Anda dapat menambahkan Persistent Disk untuk memperluas kapasitas disk lokal.

Ringkasan

Persistent Disk yang dilampirkan 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 di 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 tempat di sistem file tempat Persistent Disk dapat diakses. Untuk mengetahui informasi selengkapnya, lihat Memasang disk.

Prasyarat

Anda harus menyiapkan akun dan project Google Cloud sebelum menggunakan prosedur berikut. Jika Anda belum menyiapkan project Cloud TPU, ikuti prosedur di Menyiapkan lingkungan 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 VM TPU dan Persistent Disk

Menyiapkan VM TPU dan Persistent Disk

Anda dapat melampirkan 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 yang Anda pilih 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.

Melampirkan 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 melampirkan 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=tpu-vm-image \
    --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 tempat Anda akan membuat Cloud TPU.
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
Image VM TPU untuk framework Anda.
data-disk
Nama dan mode baca/tulis Persistent Disk yang akan dilampirkan 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 mengetahui 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 dilampirkan 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 harus menetapkan status hapus otomatis 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 melakukan SSH ke VM TPU, perintah shell 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
Menghapus 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 terputus. Lihat Mengonfigurasi pemasangan otomatis saat sistem dimulai ulang untuk menyebabkan Persistent Disk Anda otomatis dipasang saat VM dimulai ulang.

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

Memasang Persistent Disk

Untuk mengakses Persistent Disk dari VM TPU, Anda harus memasang disk. Ini menentukan lokasi di 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 menggunakan 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 pekerja 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 disk booting dan sdb adalah nama Persistent Disk yang baru dipasang. 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. Nama Persistent Disk harus sama untuk semua VM TPU, tetapi tidak dijamin. Misalnya, jika Anda melepaskan, lalu memasang kembali Persistent Disk, nama perangkat akan bertambah, berubah dari sdb menjadi sdc.

  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 guna memasang 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.

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

    Jika Anda menggunakan Pod TPU, jalankan perintah berikut di luar VM TPU Anda. Tindakan 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"

Melepaskan persistent disk

Untuk melepas (melepaskan) persistent disk, jalankan perintah berikut:

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

Deskripsi flag perintah

tpu-name
Nama resource TPU.
zone
Zona tempat Cloud TPU berada.
disk-name
Nama Persistent Disk yang akan dilepaskan dari VM TPU.

Pembersihan

Hapus resource TPU setelah selesai menggunakannya.

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

    (vm)$ exit

    Perintah 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 mungkin memerlukan waktu beberapa menit. Output dari gcloud list tidak boleh menampilkan resource VM TPU apa pun yang dibuat oleh prosedur ini.

    $ gcloud compute tpus tpu-vm 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