Menetapkan tolok ukur bandwidth jaringan yang lebih tinggi untuk instance VM.


Dokumen ini menjelaskan cara menguji performa jaringan per VM Tier_1 dengan membuat dua VM dan melakukan streaming traffic bolak-balik untuk mengamati performa jaringan. Untuk memanfaatkan fitur ini, Anda harus membuat VM dengan sistem operasi yang mendukung Google Virtual NIC (gVNIC). Performa jaringan Tier_1 per VM memerlukan ukuran VM yang lebih besar, jadi pastikan Anda memiliki kuota CPU yang cukup untuk membuat VM.

Sebelum memulai

  • Pastikan Anda menggunakan image publik yang mendukung gVNIC atau membuat image kustom di project Anda.
  • Pastikan Anda telah membuat aturan firewall VPC untuk mengizinkan traffic masuk pada port TCP:5001, atau port lain yang Anda pilih, agar dapat dilakukan pengujian performa iperf.
  • Gunakan iPerf versi 2, bukan versi 3, untuk menjalankan tolok ukur.
  • 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

Menyiapkan VM untuk tolok ukur

Buat dua mesin vCPU n2-standard-64 dengan performa jaringan per VM Tier_1 yang diaktifkan dan setelan unit transmisi maksimum (MTU) tertinggi. Ini memberi VM Anda bandwidth traffic keluar maksimum hingga 75 Gbps (menggunakan IP internal).

gcloud

  1. Untuk membuat image, gunakan perintah gcloud compute images create.

      gcloud compute images create IMAGE_NAME \
       --project=PROJECT_ID \
       --source-image-family=SOURCE_IMAGE_FAMILY \
       --source-image-project=SOURCE_IMAGE_PROJECT \
       --guest-os-features=GVNIC
    

    Ganti kode berikut:

    • PROJECT_ID: nama project Anda.
    • IMAGE_NAME: nama image yang ingin Anda buat.
    • SOURCE_IMAGE_FAMILY: versi image publik yang diperlukan. Untuk pengujian ini, gunakan ubuntu-2004-lts.
    • SOURCE_IMAGE_PROJECT: nama project yang berisi image sumber. Untuk pengujian ini, gunakan ubuntu-os-cloud.

    Contoh

    gcloud compute images create benchmark-image-test \
      --project=my-project \
      --source-image-family=ubuntu-2004-lts \
      --source-image-project=ubuntu-os-cloud \
      --guest-os-features=GVNIC
    
  2. Membuat jaringan VPC mode otomatis yang menggunakan setelan MTU maksimum:

      gcloud compute networks create NETWORK_NAME \
      --project=PROJECT_ID \
      --subnet-mode=AUTO --mtu=8896
    

    Ganti kode berikut:

    • PROJECT_ID: nama project Anda.
    • NETWORK_NAME: nama untuk jaringan.
  3. Membuat dua instance yang identik:

      gcloud compute instances create \
          VM_NAME_1 VM_NAME_2 \
          --project=PROJECT_ID \
          --zone=ZONE \
          --machine-type=n2-standard-64 \
          --image=projects/PROJECT_NAME/global/images/IMAGE_NAME \
          --network=NETWORK_NAME \
          --network-interface=nic-type=GVNIC \
          --network-performance-configs=total-egress-bandwidth-tier=TIER_1
    

    Ganti kode berikut:

    • VM_NAME_1, VM_NAME_2: nama instance VM yang ingin Anda buat.
    • PROJECT_ID: nama project Anda.
    • ZONE: zona VM Anda. Kedua VM harus berada di zona yang sama.
    • PROJECT_NAME/global/images/IMAGE_NAME: nama project dan nama image.
    • NETWORK_NAME: nama jaringan yang Anda konfigurasi dengan setelan MTU maksimum.

Menjalankan tolok ukur

Kedua VM harus berada di zona dan di jaringan VPC yang sama. Selama dilakukan tolok ukur, kedua VM ini melakukan pengujian dua arah pada jalur jaringan VPC.

Memverifikasi setelan MTU

Pastikan jaringan Virtual Private Cloud (VPC) memiliki setelan MTU maksimum yang dikonfigurasi dengan menggunakan ifconfig di OS tamu salah satu VM.

  1. Hubungkan ke salah satu VM.

  2. Di jendela terminal, jalankan perintah berikut:

     /sbin/ifconfig | grep mtu
    

    MTU yang dilaporkan harus 8896.

     ens4: flags=4163  mtu 8896
     lo: flags=73  mtu 65536
    

Memverifikasi konfigurasi VM

Pastikan virtual machine mengaktifkan jaringan Tier_1 dengan memeriksa properti virtual machine.

gcloud

Untuk melihat instance, gunakan perintah gcloud compute instances describe.

gcloud compute instances describe VM_NAME_1 \
    --project=PROJECT_ID \
    --zone=ZONE \
    --format="text(networkPerformanceConfig)"
gcloud compute instances describe VM_NAME_2 \
    --project=PROJECT_ID \
    --zone=ZONE \
    --format="text(networkPerformanceConfig)"

Ganti kode berikut:

  • VM_NAME_1: nama instance VM yang ingin Anda lihat.
  • VM_NAME_2: nama instance VM yang ingin Anda lihat.
  • PROJECT_ID: nama project Anda.
  • ZONE: zona VM Anda. Kedua VM harus berada di zona yang sama.

Dalam respons, Anda akan melihat hal berikut:

networkPerformanceConfig.totalEgressBandwidthTier: TIER_1

Gunakan iPerf untuk menjalankan tolok ukur pada sistem berbasis Debian

gcloud

  1. Jika Anda belum melakukannya, selesaikan langkah-langkah di Menyiapkan VM untuk tolok ukur.

  2. Setelah kedua VM berjalan, gunakan SSH untuk terhubung ke salah satu VM.

    gcloud compute ssh VM_NAME_1 \
      --project=PROJECT_ID
    

    Ganti kode berikut:

    • VM_NAME_1: nama VM pertama Anda.
    • PROJECT_ID: nama project Anda.
  3. Di VM pertama, jalankan langkah-langkah berikut:

    1. Instal iperf.

      sudo apt-get update && sudo apt-get install iperf
      
    2. Dapatkan alamat IP internal untuk VM ini. Catat alamat IP internal untuk digunakan nanti.

      ip a
      
    3. Mulai server iPerf.

      iperf -s
      

      Tindakan ini akan memulai server yang memproses koneksi untuk melakukan tolok ukur. Biarkan server iPerf tetap berjalan selama durasi pengujian.

  4. Di terminal klien yang terpisah, hubungkan ke VM kedua menggunakan SSH.

    gcloud compute ssh VM_NAME_2 \
       --project=PROJECT_ID
    

    Ganti kode berikut:

    • VM_NAME_2: nama VM kedua Anda.
    • PROJECT_ID: nama project Anda.
  5. Di VM kedua, jalankan langkah-langkah berikut:

    1. Instal iPerf.

      sudo apt-get update && sudo apt-get install iperf
      
    2. Jalankan pengujian iperf, lalu tentukan alamat IP VM pertama sebagai target.

      iperf -t 30 -c internal_ip_of_instance_1 -P 16
      

      Tindakan ini akan menjalankan pengujian selama 30 detik. Jika iPerf tidak dapat menjangkau VM lain yang Anda gunakan, mungkin Anda perlu menyesuaikan jaringan atau setelan firewall pada VM, atau mungkin di Konsol Google Cloud.

      Hasil Anda akan terlihat seperti contoh berikut. Batas ini menunjukkan batas bandwidth keluar sebesar 75 Gbps untuk n2-standard-64 dengan jaringan Tier_1 diaktifkan, yang melebihi batas bandwidth keluar default sebesar 32 Gbps.

      ------------------------------------------------------------
      Client connecting to 10.128.0.10, TCP port 5001
      TCP window size: 1.59 MByte (default)
      ------------------------------------------------------------
      [ 12] local 10.128.0.11 port 57722 connected with 10.128.0.10 port 5001
      [ 11] local 10.128.0.11 port 57720 connected with 10.128.0.10 port 5001
      [ 16] local 10.128.0.11 port 57730 connected with 10.128.0.10 port 5001
      [  6] local 10.128.0.11 port 57710 connected with 10.128.0.10 port 5001
      [ 13] local 10.128.0.11 port 57724 connected with 10.128.0.10 port 5001
      [  8] local 10.128.0.11 port 57712 connected with 10.128.0.10 port 5001
      [  9] local 10.128.0.11 port 57716 connected with 10.128.0.10 port 5001
      [ 14] local 10.128.0.11 port 57726 connected with 10.128.0.10 port 5001
      [ 15] local 10.128.0.11 port 57728 connected with 10.128.0.10 port 5001
      [ 10] local 10.128.0.11 port 57718 connected with 10.128.0.10 port 5001
      [  4] local 10.128.0.11 port 57706 connected with 10.128.0.10 port 5001
      [  5] local 10.128.0.11 port 57708 connected with 10.128.0.10 port 5001
      [  3] local 10.128.0.11 port 57704 connected with 10.128.0.10 port 5001
      [ 17] local 10.128.0.11 port 57732 connected with 10.128.0.10 port 5001
      [  7] local 10.128.0.11 port 57714 connected with 10.128.0.10 port 5001
      [ 18] local 10.128.0.11 port 57734 connected with 10.128.0.10 port 5001
      [ ID] Interval       Transfer     Bandwidth
      [ 12]  0.0-30.0 sec  7.63 GBytes  2.19 Gbits/sec
      [ 11]  0.0-30.0 sec  17.7 GBytes  5.07 Gbits/sec
      [ 16]  0.0-30.0 sec  9.15 GBytes  2.62 Gbits/sec
      [  6]  0.0-30.0 sec  43.8 GBytes  12.6 Gbits/sec
      [ 13]  0.0-30.0 sec  23.6 GBytes  6.76 Gbits/sec
      [  8]  0.0-30.0 sec  13.3 GBytes  3.80 Gbits/sec
      [  9]  0.0-30.0 sec  9.29 GBytes  2.66 Gbits/sec
      [ 14]  0.0-30.0 sec  19.6 GBytes  5.62 Gbits/sec
      [ 15]  0.0-30.0 sec  12.5 GBytes  3.58 Gbits/sec
      [ 10]  0.0-30.0 sec  11.1 GBytes  3.19 Gbits/sec
      [  4]  0.0-30.0 sec  19.0 GBytes  5.43 Gbits/sec
      [  5]  0.0-30.0 sec  7.32 GBytes  2.10 Gbits/sec
      [  3]  0.0-30.0 sec  8.78 GBytes  2.51 Gbits/sec
      [ 17]  0.0-30.0 sec  17.5 GBytes  5.02 Gbits/sec
      [  7]  0.0-30.0 sec  33.4 GBytes  9.57 Gbits/sec
      [ 18]  0.0-30.0 sec  7.64 GBytes  2.19 Gbits/sec
      [SUM]  0.0-30.0 sec   261 GBytes  74.9 Gbits/sec
      

Menghapus resource setelah pengujian benchmark

Hapus resource yang Anda buat selama pengujian tolok ukur untuk menghindari biaya image dan VM tambahan.

gcloud

  1. Gunakan gcloud compute instances delete perintah untuk menghapus instance yang Anda buat untuk pengujian tolok ukur.

    gcloud compute instances delete \
      VM_NAME_1 VM_NAME_2 \
       --project=PROJECT_ID \
       --zone=ZONE
    

    Ganti kode berikut:

    • VM_NAME_1, VM_NAME_2: nama dua instance VM yang ingin Anda hapus.
    • PROJECT_ID: nama project Anda.
    • ZONE: zona VM Anda. Kedua VM harus berada di zona yang sama.
  2. Gunakan gcloud compute networks delete perintah untuk menghapus jaringan yang Anda buat untuk pengujian tolok ukur.

    gcloud compute networks delete NETWORK_NAME  \
       --project=PROJECT_ID
    

    Ganti kode berikut:

    • NETWORK_NAME: nama jaringan yang ingin Anda hapus.
    • PROJECT_ID: nama project Anda.
  3. Gunakan gcloud compute images delete perintah untuk menghapus image yang Anda buat untuk pengujian tolok ukur.

     gcloud compute images delete IMAGE_NAME  \
        --project=PROJECT_ID
    

    Ganti kode berikut:

    • IMAGE_NAME: nama image yang ingin Anda hapus.
    • PROJECT_ID: nama project Anda.

Langkah selanjutnya