Panduan ini memberikan petunjuk tentang cara membuat satu klien Compute Engine dan menghubungkannya ke instance Parallelstore Anda.
Untuk membuat dan menghubungkan dari beberapa klien Compute Engine, Anda dapat mengikuti petunjuk di Menghubungkan dari Compute Engine: beberapa klien.
Untuk mendapatkan performa yang lebih baik, VM Compute Engine klien harus dibuat di zona yang sama dengan instance Parallelstore.
Izin yang diperlukan
Anda harus memiliki peran IAM berikut untuk membuat VM Compute Engine:
- Admin Instance Compute (v1) (
roles/compute.instanceAdmin.v1). Untuk mengetahui informasi selengkapnya, lihat dokumentasi Compute Engine.
Membuat VM Compute Engine
Ikuti petunjuk untuk membuat VM Compute Engine menggunakan salah satu image berikut:
- HPC Rocky Linux 8
- Rocky Linux 9 yang Dioptimalkan
- Red Hat Enterprise Linux (RHEL) 9
- Ubuntu 22.04
- Debian 12
Anda dapat memilih jenis mesin dan boot disk apa pun. Sebaiknya gunakan jenis mesin c2-standard-4 minimal; untuk performa klien yang lebih tinggi, tingkatkan jumlah vCPU untuk meningkatkan throughput jaringan. Misalnya, c3-standard-176 dengan jaringan Tingkat 1 menyediakan bandwidth keluar 200 Gbps.
Google Cloud Konsol
Di Google Cloud konsol, buka halaman VM instances.
Pilih project Anda, lalu klik Continue.
Klik Create instance.
Masukkan nama untuk VM Anda di Name. Untuk mengetahui informasi selengkapnya, lihat Konvensi penamaan resource.
Pilih Region dan Zone dari menu drop-down untuk VM ini. VM Anda harus berada di zona yang sama dengan instance Parallelstore.
Pilih Machine configuration untuk VM Anda dari daftar.
Di bagian Boot disk, klik Change.
Pilih tab Public images.
Dari drop-down Operating system, pilih salah satu opsi berikut: HPC VM image, Ubuntu, atau Debian.
Dari drop-down Version, pilih salah satu opsi berikut: HPC Rocky Linux 8, Ubuntu 22.04 LTS, atau Debian GNU/Linux 12 (bookworm). Pilih versi x86/64 atau versi Arm64 agar sesuai dengan jenis mesin Anda.
Untuk mengonfirmasi opsi boot disk, klik Select.
Luaskan bagian Advanced Options, lalu luaskan Networking.
Di bagian Network interfaces, pilih jaringan VPC yang Anda buat di Mengonfigurasi jaringan VPC.
Untuk membuat dan memulai VM, klik Create.
gcloud
Gunakan alat command line gcloud untuk membuat VM:
HPC Rocky Linux 8
gcloud compute instances create VM_NAME \
--project=PROJECT_ID \
--zone=LOCATION \
--machine-type=c2d-standard-112 \
--network-interface=stack-type=IPV4_ONLY,subnet=NETWORK_NAME,nic-type=GVNIC \
--network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
--create-disk=auto-delete=yes,boot=yes,device-name=VM_NAME,\
image=projects/cloud-hpc-image-public/global/images/hpc-rocky-linux-8-v20240126,\
mode=rw,size=100,type=pd-balanced
Rocky Linux 9 yang Dioptimalkan
gcloud compute instances create VM_NAME \
--project=PROJECT_ID \
--zone=LOCATION \
--machine-type=c2d-standard-112 \
--network-interface=stack-type=IPV4_ONLY,subnet=NETWORK_NAME,nic-type=GVNIC \
--network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
--create-disk=auto-delete=yes,boot=yes,device-name=VM_NAME,\
image=projects/rocky-linux-cloud/global/images/rocky-linux-9-optimized-gcp-v20241112,\
mode=rw,size=100,type=pd-balanced
RHEL 9
gcloud compute instances create VM_NAME \
--project=PROJECT_ID \
--zone=LOCATION \
--machine-type=c2d-standard-112 \
--network-interface=stack-type=IPV4_ONLY,subnet=NETWORK_NAME,nic-type=GVNIC \
--network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
--create-disk=auto-delete=yes,boot=yes,device-name=VM_NAME,\
image=projects/rhel-cloud/global/images/rhel-9-v20241112,\
mode=rw,size=100,type=pd-balanced
Ubuntu 22.04
gcloud compute instances create VM_NAME \
--project=PROJECT_ID \
--zone=LOCATION \
--machine-type=c2d-standard-112 \
--network-interface=stack-type=IPV4_ONLY,subnet=NETWORK_NAME,nic-type=GVNIC \
--network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
--create-disk=auto-delete=yes,boot=yes,device-name=VM_NAME,\
image=projects/ubuntu-os-cloud/global/images/ubuntu-2204-jammy-v20240927,\
mode=rw,size=100,type=pd-balanced
Debian 12
gcloud compute instances create VM_NAME \
--project=PROJECT_ID \
--zone=LOCATION \
--machine-type=c2d-standard-112 \
--network-interface=stack-type=IPV4_ONLY,subnet=NETWORK_NAME,nic-type=GVNIC \
--network-performance-configs=total-egress-bandwidth-tier=TIER_1 \
--create-disk=auto-delete=yes,boot=yes,device-name=VM_NAME,\
image=projects/debian-cloud/global/images/debian-12-bookworm-v20240415,\
mode=rw,size=100,type=pd-balanced
Untuk mengetahui informasi selengkapnya tentang opsi yang tersedia, lihat dokumentasi Compute Engine.
SSH ke VM klien
Google Cloud Konsol
Untuk melakukan SSH ke VM Compute Engine, Anda harus membuat aturan firewall yang mengizinkan SSH terlebih dahulu.
Di Google Cloud konsol, buka halaman Firewall policies.
Klik Create firewall rule.
Masukkan Name untuk aturan.
Untuk Network, pilih jaringan VPC yang Anda buat sebelumnya.
Pilih Ingress sebagai Direction of traffic, dan Allow sebagai Action on match.
Dari drop-down Targets, pilih All instances in the network.
Di kolom Source IPv4 ranges, masukkan
0.0.0.0/0.Dari Protocols and ports, pilih Specified protocols and ports.
Pilih TCP dan masukkan
22di kolom Ports.Klik Create.
Kemudian, lakukan SSH ke VM Anda:
Di Google Cloud konsol, buka halaman VM instances.
Di tabel instance, temukan baris instance Anda, lalu klik SSH di kolom berjudul Connect.
Jika diminta untuk melakukannya, klik Authorize untuk mengizinkan koneksi.
gcloud
Untuk melakukan SSH ke VM Compute Engine, Anda harus membuat aturan firewall yang mengizinkan SSH terlebih dahulu.
gcloud compute firewall-rules create FIREWALL_RULE_NAME \
--allow=tcp:22 \
--network=NETWORK_NAME \
--source-ranges=0.0.0.0/0 \
--project=PROJECT_ID
Kemudian, hubungkan menggunakan gcloud compute ssh:
gcloud compute ssh VM_NAME --zone=ZONE --project=PROJECT_ID
Menginstal library klien DAOS
Library klien DAOS menyediakan antarmuka seperti POSIX ke lapisan data Parallelstore. Software ini berjalan sebagai agen di mesin klien Anda dan harus diinstal serta dijalankan sebelum Anda dapat mengakses data.
HPC Rocky Linux 8
Perintah berikut harus dijalankan di setiap VM Compute Engine.
Tambahkan repositori paket Parallelstore:
sudo tee /etc/yum.repos.d/parallelstore-v2-6-el8.repo << EOF [parallelstore-v2-6-el8] name=Parallelstore EL8 v2.6 baseurl=https://us-central1-yum.pkg.dev/projects/parallelstore-packages/v2-6-el8 enabled=1 repo_gpgcheck=0 gpgcheck=0 EOFPerbarui cache metadata lokal:
sudo dnf makecacheInstal
daos-client:sudo dnf install -y epel-release && \ sudo dnf install -y daos-clientUpgrade
libfabric:sudo dnf upgrade -y libfabric
Rocky Linux 9 yang Dioptimalkan
Perintah berikut harus dijalankan di setiap VM Compute Engine.
Tambahkan repositori paket Parallelstore:
sudo tee /etc/yum.repos.d/parallelstore-v2-6-el9.repo << EOF [parallelstore-v2-6-el9] name=Parallelstore EL9 v2.6 baseurl=https://us-central1-yum.pkg.dev/projects/parallelstore-packages/v2-6-el9 enabled=1 repo_gpgcheck=0 gpgcheck=0 EOFPerbarui cache metadata lokal:
sudo dnf makecacheInstal
daos-client:sudo dnf install -y epel-release && \ sudo dnf install -y daos-clientUpgrade
libfabric:sudo dnf upgrade -y libfabric
RHEL 9
Perintah berikut harus dijalankan di setiap VM Compute Engine.
Tambahkan repositori paket Parallelstore:
sudo tee /etc/yum.repos.d/parallelstore-v2-6-el9.repo << EOF [parallelstore-v2-6-el9] name=Parallelstore EL9 v2.6 baseurl=https://us-central1-yum.pkg.dev/projects/parallelstore-packages/v2-6-el9 enabled=1 repo_gpgcheck=0 gpgcheck=0 EOFPerbarui cache metadata lokal:
sudo dnf makecacheInstal
daos-client:sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm sudo dnf install -y epel-release && \ sudo dnf install -y daos-clientUpgrade
libfabric:sudo dnf upgrade -y libfabric
Ubuntu 22.04
Perintah berikut harus dijalankan di setiap VM Compute Engine.
Tambahkan repositori paket Parallelstore:
curl https://us-central1-apt.pkg.dev/doc/repo-signing-key.gpg | sudo apt-key add - echo "deb https://us-central1-apt.pkg.dev/projects/parallelstore-packages v2-6-deb main" | sudo tee -a /etc/apt/sources.list.d/artifact-registry.listPerbarui indeks paket:
sudo apt updateInstal
daos-client:sudo apt install -y daos-client
Debian 12
Perintah berikut harus dijalankan di setiap VM Compute Engine.
Tambahkan repositori paket Parallelstore:
curl https://us-central1-apt.pkg.dev/doc/repo-signing-key.gpg | sudo apt-key add - echo "deb https://us-central1-apt.pkg.dev/projects/parallelstore-packages v2-6-deb main" | sudo tee -a /etc/apt/sources.list.d/artifact-registry.listPerbarui indeks paket:
sudo apt updateInstal
daos-client:sudo apt install -y daos-client
Meningkatkan batas file terbuka (khusus Ubuntu)
Untuk VM yang menjalankan Ubuntu 22.04, Anda harus meningkatkan batas file terbuka menjadi 131072 untuk mendukung dfuse dan library intersepsi.
Jika memilih untuk tidak menggunakan library intersepsi, Anda dapat menjalankan ulimit -n 131072 segera sebelum memulai dfuse.
Untuk meningkatkan batas file terbuka dari 1024, jalankan perintah berikut di setiap VM.
sudo tee -a /etc/security/limits.conf <<EOF
* soft nofile 131072
* hard nofile 131072
EOF
Kemudian, lakukan booting ulang:
sudo reboot
Lakukan SSH ke VM klien lagi setelah selesai melakukan booting ulang.
Memperbarui konfigurasi agen DAOS
Perbarui /etc/daos/daos_agent.yml sebagai berikut:
Hapus komentar dan perbarui
access_pointsdengan alamat IPaccessPointsdari properti instance Parallelstore. Misalnya:access_points: ['172.21.95.2', '172.21.95.4', '172.21.95.5'].Untuk mencetak titik akses dalam format yang benar untuk disalin dan ditempel, jalankan perintah berikut:
echo access_points\: $(gcloud beta parallelstore instances describe \ INSTANCE_ID --location LOCATION --project PROJECT_ID \ --format "value[delimiter=', '](format("{0}", accessPoints))")Hapus komentar pada dua baris berikut. Indentasi penting, jadi pastikan untuk mempertahankan spasi di depan
allow_insecure:# transport_config: # allow_insecure: falseUbah nilai
allow_insecuremenjaditruekarena sertifikat tidak didukung.transport_config: allow_insecure: trueTentukan antarmuka jaringan yang menyediakan konektivitas ke instance Parallelstore. Antarmuka ini sering kali berupa
eth0,ens4, atauenp0s3, tetapi mungkin berbeda bergantung pada konfigurasi jaringan Anda. Anda dapat menggunakan perintahrouteuntuk menampilkan gateway default VM; antarmuka yang akan ditentukan biasanya adalah antarmuka yang berbagi subnet dengan gateway.Pertama, cantumkan semua antarmuka jaringan yang tersedia:
ip aOutputnya mirip dengan hal berikut ini:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0@if7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc noqueue state UP group default link/ether e4:9x:3f:x7:dx:f7 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 10.88.0.3/16 brd 10.88.255.255 scope global eth0 valid_lft forever preferred_lft forever 3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1460 qdisc noqueue state DOWN group default link/ether 02:4x:6y:1z:84:45 brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0 valid_lft forever preferred_lft foreverJalankan
routeuntuk menampilkan tabel perutean:routeOutputnya mirip dengan hal berikut ini:
Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default 10.88.0.1 0.0.0.0 UG 0 0 0 eth0 10.88.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0Dalam contoh ini, gateway default adalah
10.88.0.1, dan dibagikan oleheth0, jadi tentukaneth0sebagai antarmuka yang akan digunakan.Edit
/etc/daos/daos_agent.yml. Hapus komentar padainclude_fabric_ifacesdan perbarui nilainya:include_fabric_ifaces: ["eth0"]Simpan dan tutup file tersebut.
Memulai agen DAOS
HPC Rocky Linux 8
sudo systemctl start daos_agent.service
Anda dapat memeriksa status untuk memastikan agen berjalan:
systemctl status daos_agent.service
Rocky Linux 9 yang Dioptimalkan
sudo systemctl start daos_agent.service
Anda dapat memeriksa status untuk memastikan agen berjalan:
systemctl status daos_agent.service
RHEL 9
sudo systemctl start daos_agent.service
Anda dapat memeriksa status untuk memastikan agen berjalan:
systemctl status daos_agent.service
Ubuntu 22.04
sudo mkdir /var/run/daos_agent && \
sudo daos_agent -o /etc/daos/daos_agent.yml &
Debian 12
sudo mkdir /var/run/daos_agent && \
sudo daos_agent -o /etc/daos/daos_agent.yml &
Menyiapkan logging
Siapkan logging lokal untuk membantu proses debug sisi klien, jika diperlukan:
export D_LOG_MASK=INFO
export D_LOG_FILE_APPEND_PID=1
rm -f /tmp/client.log.*
export D_LOG_FILE=/tmp/client.log
Memasang instance menggunakan dfuse
Pasang instance Parallelstore menggunakan dfuse (DAOS FUSE).
Edit
/etc/fuse.confuntuk menambahkanuser_allow_other.Tentukan opsi
--multi-userdengandfuse:mkdir -p /tmp/parallelstore dfuse -m /tmp/parallelstore \ --pool default-pool \ --container default-container \ --disable-wb-cache \ --thread-count=20 \ --eq-count=10 \ --multi-user
Untuk mendapatkan bantuan dalam mengoptimalkan nilai --thread-count dan --eq-count, lihat bagian
Jumlah thread dan jumlah antrean peristiwa di halaman
Pertimbangan performa.
Mengakses instance Parallelstore
Instance Parallelstore Anda kini dipasang ke VM Compute Engine di
jalur yang ditentukan oleh tanda -m, dan dapat dibaca/ditulis menggunakan sintaksis POSIX
standar, dengan beberapa pengecualian.
Jika Anda menjalankan df di instance, nilai SIZE adalah 1,5x nilai yang ditentukan dengan --capacity-gib. Jumlah ruang yang dapat digunakan masih --capacity-gib karena sifat encoding penghapusan yang digunakan oleh Parallelstore. Setiap 2 byte yang ditulis menggunakan 3 byte dari perspektif df.
Melepas instance
Instance Parallelstore dapat dilepas menggunakan perintah berikut:
sudo umount /tmp/parallelstore/