Tüm Ürünler
Search
Belge Merkezi

Elastic Compute Service:Monitor and diagnose eRDMA

Son Güncelleme:Sep 30, 2026

CloudMonitor, eadm, iproute2 ve diagnose aracını kullanarak eRDMA trafiğini izleyin, arızaları tespit edin ve ağ performansını değerlendirin.

Ön koşullar

Hedef ECS örneğinde eRDMA yüklü ve dağıtılmış durumdadır. Bkz. Bir ECS örneği için eRDMA'yı etkinleştirme.

CloudMonitor ile eRDMA'yı izleme

CloudMonitor, eRDMA durumunu takip eder ve özel uyarıları destekler. Bkz. Özel izleme.

eRDMA tarafından desteklenen izleme ölçümlerini görüntüleme

  1. CloudMonitor konsolu adresine giriş yapın.

  2. Ölçüm listesi arama kutusuna eri yazarak eRDMA için izleme ölçümlerini görüntüleyin.

    Arama sonuçları aşağıdaki 5 eRDMA izleme ölçümünü içerir (ölçüm türü: erdma, Boyutlar: userId,instanceId, İstatistikler: Value, MinPeriods: 60s; tüm ölçümler uyarı yapılandırmasını destekler):

    • eri_active_qp_num: Örnek ERI boyutundaki bağlantı sayısı, birim: adet

    • rx_eri_bw_bps: Örnek ERI boyutundaki gelen bant genişliği, birim: bit/s

    • rx_eri_pkt_pps: Örnek ERI boyutundaki gelen veri paketi PPS değeri, birim: adet/s

    • tx_eri_bw_bps: Örnek ERI boyutundaki giden bant genişliği, birim: bit/s

    • tx_eri_pkt_pps: Örnek ERI boyutundaki giden veri paketi PPS değeri, birim: adet/s

eadm aracıyla eRDMA'yı tanılama

eadm, eRDMA sürücüsüyle birlikte dağıtılan bir kullanıcı alanı aracıdır. Arızaların yerini belirlemenize yardımcı olmak için gerçek zamanlı izleme ve tanılama işlevleri sunar. Temel özellikler şunlardır:

  • Trafik izleme ve destekli tanılama: Tüm cihaz için gerçek zamanlı trafik istatistikleri.

  • Yapılandırmaları sorgulama ve ayarlama: Gecikmeli ACK özelliğini ve CC algoritmasını yapılandırma.

Aşağıda yaygın olarak kullanılan eadm komutları verilmiştir. Diğer komutlar için eadm -h çalıştırın.

Uyarı

Bu araç yalnızca tanılama ve hata ayıklama amacıyla kullanılır. Gelecekte değişiklik gösterebilir ve kullanılabilirliği tüm senaryolarda garanti edilmez.

  • eadm komutu için yardımı görüntüleyin.

    eadm -h
    [root@xxx ~]# eadm -h
    Usage: eadm OBJECT { COMMAND | help }
    where  OBJECT := { dump stat info ver conf help }
  • Bir eRDMA cihazının gerçek zamanlı trafiğini izleme

    Sürücü sürümü 0.2.34 veya üzeri gerektirir.

    eadm stat -d <ibdev_name> -l

    <ibdev_name>: eRDMA cihaz adı. Bulmak için ibv_devinfo çalıştırın. Yalnızca bir eRDMA cihazı varsa -d <ibdev_name> parametresini atlayabilirsiniz.

    [root@xxx         xxx ~]# ibv_devinfo
    hca_id: erdma_0
            transport:                  eRDMA (1)
            fw_ver:                     0.2.0
            node_guid:                  0216:3eff:fe13:1914
            sys_image_guid:             0216:3eff:fe13:1914
            vendor_id:                  0x1ded
            vendor_part_id:             4223
            hw_ver:                     0x0
            phys_port_cnt:              1
                port: 1
                    state:              PORT_ACTIVE (4)
                    max_mtu:            4096 (5)
                    active_mtu:         4096 (5)
                    sm_lid:             0
                    port_lid:           0
                    port_lmc:           0x00
                    link_layer:         Ethernet
    
    [root@xxx         xxx ~]# eadm stat -d erdma_0 -l
    Monitoring erdma_0...    (press CTRL-C to stop)
    
    14:07:57  rx:    218.46 MiB/s 1000313 p/s        tx:    218.46 MiB/s 1000315 p/s
  • CM ve verbs mesaj sayıları ile trafik sayıları gibi eRDMA cihaz istatistiklerini alın.

    eadm stat -d <ibdev_name>

    <ibdev_name>: eRDMA cihaz adı. Bulmak için ibv_devinfo çalıştırın. Yalnızca bir eRDMA cihazı varsa -d <ibdev_name> parametresini atlayabilirsiniz.

    [root@ixxxxxxZ ~]# eadm stat -d erdma_0
    return cnts:55
    listen_create_cnt : 1
    listen_ipv6_cnt : 0
    listen_success_cnt : 1
    listen_failed_cnt : 0
    listen_destroy_cnt : 0
    accept_total_cnt : 300
    accept_success_cnt : 300
    accept_failed_cnt : 0
    reject_cnt : 0
    reject_failed_cnt : 0
    connect_total_cnt : 300
    connect_success_cnt : 300
    connect_failed_cnt : 0
    connect_timeout_cnt : 0
    connect_reset_cnt : 0
    cmdq_submitted_cnt : 266
    cmdq_comp_cnt : 266
    cmdq_eq_notify_cnt : 263
    cmdq_eq_event_cnt : 0
  • Mevcut eRDMA sürücü sürümünü alın.

    eadm ver
Not

info, dump ve conf gibi diğer komutların kullanım kısıtlamaları vardır. Gerekmedikçe çalıştırmayın.

iproute2 ile eRDMA'yı izleme ve tanılama

iproute2, ağ arabirimlerini, yönlendirme tablolarını ve trafik kontrolünü yönetmek için ip ve ss gibi yardımcı programlar sunan bir Linux ağ araç setidir. RDMA alt sistemini izlemek ve tanılamak için yerleşik rdma komutunu kullanın.

Not

Alibaba Cloud Linux 3 ve Ubuntu 20.04 veya sonraki sürümler gibi çoğu Linux dağıtımı, iproute2'yi varsayılan olarak içerir. Ayrıntılar için işletim sistemi belgelerine bakın.

  • eRDMA cihaz durumunu sorgulayın.

    rdma link
  • CQ, QP ve MR sayısı gibi eRDMA kaynak kullanımını sorgulayın.

    Not

    RDMA ağ iletişimde Kuyruk Çifti (QP), Tamamlama Kuyruğu (CQ), Bellek Bölgesi (MR) ve verbs Opcode temel bileşenlerdir. RDMA iletişimde önemli roller oynarlar ve RDMA ağ iletişiminin yüksek verimlilik ve düşük gecikme süresi sağlamasını garanti ederler.

    Bkz. eRDMA'nın yetenekleri ve teknik özellikleri.

    rdma res
    [root@xxx log]# rdma res
    1: erdma_0: pd 12 cq 2 qp 200 cm_id 201 mr 301 ctx 2
  • Bağlantı sayıları, bağlantı durumu ve paket sayıları gibi eRDMA performans istatistiklerini sorgulayın.

    rdma -p stat
    [root@xxx log]# rdma -p stat link erdma_0/1
    link erdma_0/1
         listen_create_cnt 1
         listen_ipv6_cnt 0
         listen_success_cnt 1
         listen_failed_cnt 0
         listen_destroy_cnt 0
         accept_total_cnt 500
         accept_success_cnt 500
         accept_failed_cnt 0
         reject_cnt 0
         reject_failed_cnt 0
         connect_total_cnt 500
         connect_success_cnt 500
         connect_failed_cnt 0
         connect_timeout_cnt 0
         connect_reset_cnt 0
         cmdq_submitted_cnt 6344
         cmdq_comp_cnt 6344
         cmdq_eq_notify_cnt 5453
         cmdq_eq_event_cnt 0
         cmdq_cq_armed_cnt 5454
       erdma_aeq_event_cnt 0

Diagnose aracıyla eRDMA'yı tanılama ve değerlendirme

Diagnose aracı, eRDMA için temel işlev kontrollerini, HPC ortamı kontrollerini ve gecikme süresi kontrollerini destekler.

Bir diagnose kontrolünün olası sonuçları

  • PASS: Kontrol başarılı oldu.

  • SKIP: Mevcut sistem sürümü bu kontrolü desteklemiyor.

  • FAIL: Kontrol aracı yüklü değil veya kontrol başarısız oldu. Başarısız olan komut fail info içinde listelenir.

  • Diğer INFO mesajları: eRDMA yapılandırma ayrıntıları (kurulum modu, sürücü sürümü ve CC algoritması gibi).

diagnose'u yükleme

eRDMA yapılandırılmış bir örnekte diagnose aracını indirin:

  • Dahili bir URL'den indirme

    wget http://mirrors.cloud.aliyuncs.com/erdma/tools/diagnose.py
  • Genel bir URL'den indirme

    wget https://mirrors.aliyun.com/erdma/tools/diagnose.py

diagnose aracını nasıl kullanacağınız

python diagnose.py -h

[root@xxx                ~]# python diagnose.py -h
usage: diagnose.py [-h] [-d] [-D DIAGNOSES [DIAGNOSES ...]] [--debug]
                   [-H HOSTS [HOSTS ...]] [-p] [-P PERFTESTS [PERFTESTS ...]]
                   [-k KEY_FILE] [-s MESSAGE_SIZE] [-u USER] [-i ITERATIONS]
                   [--hpc-check] [--hpc-checks HPC_CHECKS [HPC_CHECKS ...]]

optional arguments:
  -h, --help            show this help message and exit
  -d, --diagnose        run all erdma basic diagnoses
  -D DIAGNOSES [DIAGNOSES ...], --diagnoses DIAGNOSES [DIAGNOSES ...]
                        list all basic diagnoses you want to run, separated by
                        space. Choices are: erdma device erdma installed erdma
                        loaded ibverbs loaded erdma tools hca detected hca
                        active erdma stats network config erdma dmesg atomic
                        support go-back-n support erdma install mode kernel
                        driver version rdma-core version cc algorithm
  --debug               print more detailed debug information
  -H HOSTS [HOSTS ...], --hosts HOSTS [HOSTS ...]
                        host list to run perftest, separated by space
  -p, --perftest        run all performance tests
  -P PERFTESTS [PERFTESTS ...], --perftests PERFTESTS [PERFTESTS ...]
                        list all perftests you want to run, separated by
                        space. Choices are: send_lat read_lat write_lat
  -k KEY_FILE, --key-file KEY_FILE
                        private key file path
  -s MESSAGE_SIZE, --message-size MESSAGE_SIZE
                        message size for perftest
  -u USER, --user USER  username for ssh connection
  -i ITERATIONS, --iterations ITERATIONS
                        iterations for perftest
  --hpc-check           check erdma related hpc configuration
  --hpc-checks HPC_CHECKS [HPC_CHECKS ...]
                        list all hpc diagnoses you want to run, separated by
                        space. Choices are: cc algorithm go-back-n support
                        delay-ack disable port dapl1 dapl2

Temel eRDMA işlevlerini tanılama

Temel işlev testi, sürücü kurulumunu, ağ bağlantısını ve eRDMA çekirdek sürücüsünün kurulum modunu doğrular.

eRDMA temel işlev tanılama öğeleri

Kontrol öğesi

Açıklama

Beklenen çıktı

Arıza ve çözüm

erdma device

Bir eRDMA cihazının var olup olmadığını kontrol eder.

PASS

FAIL: Birincil ENI için RDMA etkinleştirilmemiş veya örnek oluşturulurken RDMA etkinleştirilmiş ikincil ENI eklenmemiş. Bkz. Bir ECS örneği için eRDMA'yı etkinleştirme.

erdma installed

eRDMA sürücüsünün doğru şekilde yüklenip yüklenmediğini kontrol eder.

PASS

FAIL: Sürücü doğru şekilde yüklenmemiş. Kurulum adımlarını doğrulayın veya sürücüyü yeniden yükleyin. Bkz. Adım 2: Bir ECS örneği için eRDMA sürücüsünü yükleme.

erdma loaded

eRDMA sürücüsünün doğru şekilde yüklenip yüklenmediğini kontrol eder.

PASS

FAIL: Sürücü yüklenmemiş. Bu durum, kurulumdan sonra ana bilgisayar yeniden başlatılmadığında oluşabilir. Çözmek için modprobe erdma çalıştırın.

ibverbs loaded

ib_verbs sürücüsünün doğru şekilde yüklenip yüklenmediğini kontrol eder.

PASS

FAIL: Çözmek için modprobe ib_uverbs çalıştırın.

erdma tools

eRDMA ile ilgili araçların yüklü olup olmadığını kontrol eder.

PASS

FAIL: Eksik araçları belirlemek için eadm | rdma | ibv_devinfo çalıştırın. Bu araçlar eRDMA sürücüsüyle birlikte yüklenir. Kurulum adımlarını doğrulayın veya yeniden yükleyin. Bkz. Adım 2: Bir ECS örneği için eRDMA sürücüsünü yükleme.

hca detected

Kullanıcı alanı sürücüsünün eRDMA cihazını doğru şekilde algılayıp algılamadığını kontrol eder.

PASS

FAIL: Ön koşul kontrollerinden biri (erdma device, erdma installed, erdma loaded veya ibverbs loaded) başarısız oldu. eRDMA sürücüsünün yüklü ve yüklendiğinden emin olun.

hca active

eRDMA cihazına karşılık gelen ENI'nin normal durumda olup olmadığını kontrol eder.

PASS

FAIL: eRDMA cihazına karşılık gelen ENI UP durumunda değil. Bu durum eski çekirdek sürümlerinde meydana gelebilir. Eth cihazını etkinleştirmek için dhclient -v ethx çalıştırın, ardından eRDMA cihazının ACTIVE olduğunu doğrulayın. Bkz. eRDMA yapılandırmasını doğrulama.

erdma stats

eRDMA cihazında hata sayaçları olup olmadığını kontrol eder.

PASS

  • SKIP: İşletim sistemi rdma stat işlevini desteklemeyebilir.

  • FAIL: Hata sayaçları olabilir. Teknik destekle iletişime geçerken rdma -p stat çıktısını sağlayın.

network config

Ağ bağlantısının normal olup olmadığını kontrol eder.

PASS

FAIL: Birden fazla ağ arabirimi aynı alt ağda IP adreslerine sahip; bu durum eRDMA'nın hatalı çalışmasına neden olabilir.

erdma dmesg

eRDMA ile ilgili çekirdek uyarılarını kontrol eder.

PASS

FAIL: eRDMA ile ilgili çekirdek uyarıları mevcut. Uyarı ayrıntılarını kontrol edin ve sürücüyü yeniden yüklemeyi deneyin.

atomic support

eRDMA cihazının RDMA atomik işlemleri destekleyip desteklemediğini kontrol eder.

PASS

FAIL: eRDMA cihazı RDMA atomik işlemleri desteklemiyor. Uygulamanız atomik işlemler gerektirmiyorsa bunu yok sayın.

Not

Atomik işlem, bütünlük ve tutarlılığı sağlamak için bellek işlemlerini atomik düzeyde gerçekleştirir. Bu özellik yalnızca belirli kullanım durumları için geçerlidir.

go-back-n support

eRDMA cihazının Go-back-N özelliğini destekleyip desteklemediğini kontrol eder.

PASS

  • SKIP: eRDMA cihazı Go-back-N yapılandırmasını sorgulamayı desteklemeyebilir.

  • FAIL: eadm aracı yüklü olmayabilir veya eRDMA cihazı Go-back-N'i desteklemeyebilir.

Not

Go-back-N, belirli kullanım durumları için geliştirilmiş bir eRDMA özelliğidir. Gerekmiyorsa ilgili hataları yok sayın.

erdma install mode

eRDMA çekirdek sürücüsünün kurulum modu.

FAIL: Kurulum modu bulunamadı. Bu durum, erdma loaded kontrolü başarısız olduğunda meydana gelebilir. eRDMA sürücüsünü yeniden yükleyin. Bkz. Adım 2: Bir ECS örneği için eRDMA sürücüsünü yükleme.

kernel driver version

eRDMA çekirdek sürücüsü sürümü.

Mevcut eRDMA çekirdek sürücüsü sürümü, örneğin 0.2.37.

FAIL: Çekirdek sürücüsü sürümü bulunamadı. Bu durum, erdma loaded veya erdma tools kontrolü başarısız olduğunda meydana gelebilir. eRDMA sürücüsünün yüklü ve yüklendiğinden emin olun. Bkz. eRDMA yapılandırmasını doğrulama.

rdma-core version

eRDMA kullanıcı alanı sürücüsü sürümü.

eRDMA kullanıcı alanı sürücüsü sürümü, örneğin 44.1-2.

FAIL: Kullanıcı alanı sürücüsü sürümü bulunamadı. Kullanıcı alanı sürücüsü doğru şekilde yüklenmemiş olabilir. eRDMA sürücüsünü yeniden yükleyin. Bkz. Adım 2: Bir ECS örneği için eRDMA sürücüsünü yükleme.

cc algorithm

eRDMA tarafından şu anda kullanılan CC algoritması.

eRDMA CC algoritması, örneğin hpcc_rtt.

FAIL: CC algoritması bulunamadı. Bu durum, erdma loaded veya erdma tools kontrolü başarısız olduğunda meydana gelebilir. eRDMA sürücüsünün yüklü ve yüklendiğinden emin olun.

Yöntem:

  1. eRDMA yapılandırılmış örneğe giriş yapın.

    Bkz. Workbench kullanarak bir Linux örneğine bağlanma.

  2. Diagnose aracını indirin.

    • Dahili bir URL'den indirme

      wget http://mirrors.cloud.aliyuncs.com/erdma/tools/diagnose.py
    • Genel bir URL'den indirme

      wget https://mirrors.aliyun.com/erdma/tools/diagnose.py
  3. eRDMA'nın temel işlevlerini kontrol edin:

    python diagnose.py -d

    Aşağıda örnek bir çıktı verilmiştir. Tanılama öğelerinin açıklamaları için bkz. eRDMA temel işlev tanılama öğeleri.

    [root@jxxx            ~]# python diagnose.py -d
    [INFO] Begin to run erdma basic diagnoses. It's better to ensure that erdma driver and related tools, e.g. eadm, ibv_devinfo, rdma, have been installed.
    [INFO] The diagnose results mean:
    [INFO] PASS: pass the test or meet the requirement.
    [INFO] SKIP: encounter some problems when running the diagnose.
    [INFO] FAIL: test failed or requirements are not met.
    [INFO] XXXX: the erdma-related information, e.g. erdma driver version, cc algorithm.
            Name                Result                          Desc                                                    fail info
    ------------------------------------------------------------------------------------------------------------------------------
         erdma device           PASS        erdma pci device is present
       erdma installed          PASS        erdma module has been installed
         erdma loaded           PASS        erdma module has been loaded
        ibverbs loaded          PASS        ib_uverbs module has been loaded
          erdma tools           PASS        eadm|rdma|ibv_devinfo tools have been installed
         hca detected           PASS        IB device exist
          hca active            PASS        status is PORT_ACTIVE
          erdma stats           PASS        no failed counter
        network config          PASS        network configuration seems ok
          erdma dmesg           PASS        no concerning error logs detected
        atomic support          PASS        atomic capacity support
      go-back-n support         FAIL        Go-back-N capacity support                    CHCK FAILED [eadm info -t ext_attr -d erdma_0 | grep -w attr_mask | awk '{print $2}']
      erdma install mode      Standard      erdma installation mode
    kernel driver version      0.2.37       erdma kernel driver version
      rdma-core version        44.1-2       rdma-core version
         cc algorithm          hpcc_rtt     current cc algorithm

eRDMA HPC ortamını tanılama

eRDMA ortamındaki HPC uygulamaları ek bağımlılıklar ve yapılandırmalar gerektirebilir. Diagnose aracı bu bağımlılıkları kontrol eder.

eRDMA HPC ortamı bağımlılık kontrolleri

HPC bağımlılık kontrolü, CC algoritmasını, Go-back-N durumunu ve DAPL 1.0/2.0 bağımlılıklarını doğrular. Belirli bağımlılıkları kullanmıyorsanız ilgili hataları yok sayın.

Kontrol öğesi

Açıklama

Beklenen çıktı

Arıza ve çözüm

cc algorithm

eRDMA tarafından şu anda kullanılan CC algoritması.

eRDMA CC algoritması, örneğin hpcc_rtt.

FAIL: CC algoritması bulunamadı. eadm aracı doğru şekilde yüklenmemiş olabilir veya CC algoritmasını sorgulamayı desteklemiyor olabilir.

go-back-n support

eRDMA cihazının Go-back-N özelliğini destekleyip desteklemediğini kontrol eder.

PASS

  • SKIP: eRDMA cihazı Go-back-N yapılandırmasını sorgulamayı desteklemeyebilir.

  • FAIL: eadm aracı yüklü olmayabilir veya eRDMA cihazı Go-back-N'i desteklemeyebilir.

Bu özellik HPC uygulamalarını etkileyebilir. Gerekmiyorsa yok sayın.

dapl1 install

dapl1'in doğru şekilde yüklenip yüklenmediğini kontrol eder.

PASS

FAIL: dapl1 için paylaşılan kitaplıklar veya yapılandırma dosyaları eksik. dapl1 kurulumunu doğrulayın. dapl1 gerekmiyorsa yok sayın.

dapl1 config

dapl1 yapılandırma dosyasında eRDMA'nın yapılandırılıp yapılandırılmadığını kontrol eder.

PASS

FAIL: dapl1 yapılandırma dosyasında eRDMA yapılandırması bulunamadı. Dosyaya eRDMA yapılandırması ekleyin. dapl1 gerekmiyorsa yok sayın.

dapl2 install

dapl2'nin doğru şekilde yüklenip yüklenmediğini kontrol eder.

PASS

FAIL: dapl2 için paylaşılan kitaplıklar veya yapılandırma dosyaları eksik. dapl2 kurulumunu doğrulayın. dapl2 gerekmiyorsa yok sayın.

dapl2 config

dapl2 yapılandırma dosyasında eRDMA'nın yapılandırılıp yapılandırılmadığını kontrol eder.

PASS

FAIL: dapl2 yapılandırma dosyasında eRDMA yapılandırması bulunamadı. Dosyaya eRDMA yapılandırması ekleyin. dapl2 gerekmiyorsa yok sayın.

dapl2 test

dapl2 dtest'in normal çalışıp çalışmadığını kontrol eder.

PASS

FAIL: dtest başarısız oldu. dapl2 doğru şekilde yüklenmemiş veya yapılandırılmamış olabilir.

Yöntem:

  1. eRDMA yapılandırılmış örneğe giriş yapın.

    Bkz. Workbench kullanarak bir Linux örneğine bağlanma.

  2. Diagnose aracını indirin.

    • Dahili bir URL'den indirme

      wget http://mirrors.cloud.aliyuncs.com/erdma/tools/diagnose.py
    • Genel bir URL'den indirme

      wget https://mirrors.aliyun.com/erdma/tools/diagnose.py
  3. HPC ortamı bağımlılıklarını kontrol edin:

    python diagnose.py --hpc-check

    Örnek çıktı. Tanılama öğelerinin açıklamaları için bkz. eRDMA HPC ortamı bağımlılık kontrolleri.

    ecs-user@xxx ~$ python diagnose.py --hpc-check
    [INFO] Begin to run hpc related diagnoses for erdma. If the missing dependencies are not required, please ignore them.
    [INFO] The diagnose results mean:
    [INFO] PASS: pass the test or meet the requirement.
    [INFO] SKIP: encounter some problems when running the diagnose.
    [INFO] FAIL: test failed or requirements are not met.
    [INFO] XXXX: the erdma-related information, e.g. erdma driver version, cc algorithm.
            Name                Result              Desc                                          fail info
    ----------------------------  -------------------  -------------------------------------------------------  -------------------
        cc algorithm              cubic               current cc algorithm
      go-back-n support           PASS                Go-back-N capacity support
        dapl1 install             FAIL                dapl1 installation check                     CHCK FAILED [ls /etc/rdma/compat-dapl/dat.conf && ls /usr/lib64/libdaplcma.so.1.0.2]
        dapl2 install             PASS                dapl2 installation check
        dapl2 config              PASS                dapl2 erdma configuration check
        dapl2 test                PASS                dapl2 dtest result

eRDMA ağ performansını değerlendirme

Örnekler arasındaki ağ performansını test etmek için diagnose aracındaki perftest özelliğini kullanın.

  • Ön koşullar

    Testi çalıştırmadan önce:

    • Tüm test düğümlerinde eRDMA yüklü ve dağıtılmış durumdadır. Bkz. Bir ECS örneği için eRDMA'yı etkinleştirme.

    • Tüm test düğümleri arasında parolasız SSH yapılandırılmıştır. Bkz. Parolasız SSH oturum açmayı yapılandırma.

    • Tüm test düğümlerinde Python paramiko yüklüdür.

      Not
      • Diagnose aracı uzak bağlantılar için paramiko kullanır.

      • Paramiko'yu aşağıdaki komutlarla yükleyin. Python 3 önerilir.

      Alibaba Cloud Linux/CentOS

      # python3
      sudo python3 -m pip install --upgrade pip
      sudo python3 -m pip install paramiko 
      # python2
      # If the pip module is not installed for Python 2, install python2-pip.
      sudo yum -y install python2-pip
      sudo python2 -m pip install --upgrade pip==20.3.4
      sudo python2 -m pip install paramiko 

      Ubuntu

      # python3
      sudo python3 -m pip install --upgrade pip
      sudo python3 -m pip install paramiko
      # python2
      # If python2-pip is not installed on the current node, install it.
      sudo apt install software-properties-common
      sudo add-apt-repository universe
      sudo apt update
      sudo apt install python2
      sudo curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py
      sudo python2 get-pip.py
      sudo python2 -m pip install --upgrade pip==20.3.4
      sudo python2 -m pip install paramiko
  • Yöntem

    1. eRDMA yapılandırılmış örneğe giriş yapın.

      Bkz. Workbench kullanarak bir Linux örneğine bağlanma.

    2. Diagnose aracını indirin.

      • Dahili bir URL'den indirme

        wget http://mirrors.cloud.aliyuncs.com/erdma/tools/diagnose.py
      • Genel bir URL'den indirme

        wget https://mirrors.aliyun.com/erdma/tools/diagnose.py
    3. eRDMA gecikme süresini test edin:

      python diagnose.py --perftest --hosts <n1> <n2> --user <username> --key-file </path/to/private_key>

      Parametreler:

      • --hosts <n1> <n2>: Test düğümleri, boşlukla ayrılmıştır. <n1> <n2> değerini her düğümdeki eRDMA etkinleştirilmiş ENI'nin özel IP adresiyle değiştirin.

      • --user <username>: Parolasız SSH için kullanıcı adı.

      • --key-file </path/to/private_key>: SSH için özel anahtar dosyasının mutlak yolu.

      İki örnekli gecikme süresi testi için örnek çıktı. Bkz. eRDMA ağ performansı testleri.

      Her tablo farklı işlemler için gecikme süresini gösterir. Satırlar istekte bulunanları, sütunlar yanıt verenleri temsil eder. Hücre değerleri mikrosaniye cinsinden ortalama gecikme süresini (parantez içinde 99,9. yüzdelik dilim) gösterir.

      [ecs-xxx                ~]$ python diagnose.py --perftest --hosts 172.17.0.87 172.17.0.86 --user ecs-user --key-file /home/ecs-user/.ssh/id_rsa
      /usr/local/lib/python3.6/site-packages/paramiko/transport.py:32: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team.
      or Python 3.6.
        from cryptography.hazmat.backends import default_backend
      INFO:paramiko.transport:Connected (version 2.0, client OpenSSH_8.0)
      INFO:paramiko.transport:Authentication (publickey) successful!
      INFO:paramiko.transport:Connected (version 2.0, client OpenSSH_8.0)
      INFO:paramiko.transport:Authentication (publickey) successful!
      [INFO] Begin to run perftest, the results will be shown in table.
      [INFO] In each table, the line represents client while the column represents server.
      [INFO] Each table cell shows the average latency and p999 latency(in the bracket).
      [INFO] Current perftest configuration:
      [INFO] tests: send_lat read_lat write_lat message_size: 2 iterations: 10000
      ----------------------------------------------------------------------
      |            ib_send_lat latency table(us)                           |
      ----------------------------------------------------------------------
      |               |    172.17.0.87    |    172.17.0.86                 |
      ----------------------------------------------------------------------
      |  172.17.0.87  |   14.60(87.53)    |   14.29(25.25)                 |
      ----------------------------------------------------------------------
      |  172.17.0.86  |   14.35(51.63)    |    8.31(21.09)                 |
      ----------------------------------------------------------------------
      
      ----------------------------------------------------------------------
      |            ib_read_lat latency table(us)                           |
      ----------------------------------------------------------------------
      |               |    172.17.0.87    |    172.17.0.86                 |
      ----------------------------------------------------------------------
      |  172.17.0.87  |   24.28(51.43)    |   27.57(57.42)                 |
      ----------------------------------------------------------------------
      |  172.17.0.86  |   27.43(41.14)    |   13.88(49.83)                 |
      ----------------------------------------------------------------------
      
      ----------------------------------------------------------------------
      |            ib_write_lat latency table(us)                          |
      ----------------------------------------------------------------------
      |               |    172.17.0.87    |    172.17.0.86                 |
      ----------------------------------------------------------------------
      |  172.17.0.87  |  183.71(25003.59) |   12.76(27.00)                 |
      ----------------------------------------------------------------------
      |  172.17.0.86  |   12.80(26.05)    |    6.41(13.75)                 |
      ----------------------------------------------------------------------