まずはじめに、IPoIBの設定から始めます。前提としては Mellanox の VPI HCA / RoCE NIC が刺さっているものとします。Debian 12 の場合、Inbox Driver に ib_ipoibがあるのですが、以下のようにすると、ツール類のインストールと同時に再起動時 ib ネットワークインターフェースが認識されるようになります。
今回は以下、 nfs サーバ は 10.1.40.50, nfsクライアントは10.1.40.51で小規模なRAM disk (4GB)を共有するものとします。以下 nfs サーバーでの作業です。
今回は以上です。それでは。
apt-get install rdma-core ibutils infiniband-diags ibverbs-utils rdmacm-utils perftest認識されたibインターフェースがたとえばibp1s0だったとします。この場合、Debian 12 netinst の最小構成では /etc/network/interface.d/ibp1s0 を以下のようにします。(connected modeでcpu 8スレッドに受信処理を分散させる場合)
auto ibp1s0 iface ibp1s0 inet static address 10.1.40.50 netmask 255.255.255.0 post-up echo connected > /sys/class/net/ibp1s0/mode post-up echo ff > /sys/class/net/ibp1s0/queues/rx-0/rps_cpus編集が済んだら、sudo ifup ibp1s0としてください。リンクがアップされるまで少し時間がかかる場合がありますので、注意してください。なお、managed switch なしまたは直結の場合、どこかに opensmを立ち上げる必要がありますが、本稿では触れません。
今回は以下、 nfs サーバ は 10.1.40.50, nfsクライアントは10.1.40.51で小規模なRAM disk (4GB)を共有するものとします。以下 nfs サーバーでの作業です。
# nfs server 10.1.40.50 apt-get install nfs-kernel-server cp -a /etc/exports /etc/exports.orig echo '/srv *(fsid=0,rw,insecure,no_root_squash,no_subtree_check)' >> /etc/exports modprobe -av rpcrdma # of modprobe svcrdma echo rpcrdma >> /etc/modules-load.d/modules.conf cp -a /etc/nfs.conf /etc/nfs.conf.orig #edit /etc/nfs.conf -- snip vers3=n vers4=y # vers4.0=y vers4.1=n vers4.2=y rdma=y rdma-port=20049 -- snip # /etc/fstabに以下を追加 tmpfs /srv tmpfs size=4096M 0 0 # 編集後以下を実行 systemctl daemon-reload mount /srv systemctl restart nfs-kernel-server eportfs -avr続いてnfs クライアントの設定を以下のように行います。
apt-get install nfs-common #edit /etc/fstab 10.1.40.50:/ /mnt nfs vers=4.2,proto=rdma,bg 0 0 systemctl daemon-reload modprobe -av rpcrdma # or modprobe xprtrdma echo rpcrdma >> /etc/modules-load.d/modules. mount /mnt # インターフェースの UP が遅い場合の対処 # /etc/rc.local (chmod +x) #!/bin/bash sleep 120 && mount /mnt基本的にはこれだけでOKです。
今回は以上です。それでは。
コメント
コメントを投稿