歡迎您光臨本站 註冊首頁

PVFS2在rocks+infiniband上的安裝問題

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

PVFS2在rocks+infiniband上的安裝問題

各位好:
小弟手頭有一個4個節點的集群,使用ROCKS 5.1管理。
最近弄了1套mellanox 的交換機和卡,我使用rocks提供的PVFS2 Roll安裝得非常順利,但是從rocks的 mail list得知pvfs2 roll不支持 ib協議,只能使用tcp協議。
所以我下載了pvfs2的安裝文件,並按照quickstart進行安裝。安裝過程遇到幾個問題,安裝過程如下
1.
# ./configure --with-kernel=/usr/src/kernels/2.6.18-92.1.13.el5-x86_64/

***** Displaying PVFS2 Configuration Information *****
------------------------------------------------------
PVFS2 configured to build karma gui               : yes
PVFS2 configured to use epoll                     : yes
PVFS2 configured to perform coverage analysis     :  no
PVFS2 configured for aio threaded callbacks       : yes
PVFS2 configured for the 2.6.x kernel module      : yes
PVFS2 configured for the 2.4.x kernel module      :  no
PVFS2 configured for using the mmap-ra-cache      :  no
PVFS2 configured for using trusted connections    :  no
PVFS2 configured for a thread-safe client library : yes
PVFS2 will use workaround for redhat 2.4 kernels  :  no
PVFS2 will use workaround for buggy NPTL          :  no
PVFS2 server will be built                        : yes

PVFS2 version string: 2.7.1

2.
# make install
install -d /usr/local/share/man/man1
install -d /usr/local/share/man/man5
install -m 644 ./doc/man/*.1 /usr/local/share/man/man1
install -m 644 ./doc/man/*.5 /usr/local/share/man/man5
install -d /usr/local/include
install -m 644 ./include/pvfs2.h /usr/local/include
install -m 644 ./include/pvfs2-request.h /usr/local/include
install -m 644 ./include/pvfs2-debug.h /usr/local/include
install -m 644 ./include/pvfs2-sysint.h /usr/local/include
install -m 644 ./include/pvfs2-mgmt.h /usr/local/include
install -m 644 ./include/pvfs2-types.h /usr/local/include
install -m 644 ./include/pvfs2-util.h /usr/local/include
install -m 644 ./include/pvfs2-encode-stubs.h /usr/local/include
install -d /usr/local/lib
for i in libpvfs2.a ; do \
            install -m 755 lib/$i /usr/local/lib ;\
        done
install -d /usr/local/bin
install -m 755 src/apps/admin/pvfs2-check-config src/apps/admin/pvfs2-set-debugmask src/apps/admin/pvfs2-set-mode src/apps/admin/pvfs2-set-eventmask src/apps/admin/pvfs2-set-sync src/apps/admin/pvfs2-ls src/apps/admin/pvfs2-lsplus src/apps/admin/pvfs2-ping src/apps/admin/pvfs2-rm src/apps/admin/pvfs2-stat src/apps/admin/pvfs2-statfs src/apps/admin/pvfs2-perf-mon-example src/apps/admin/pvfs2-event-mon-example src/apps/admin/pvfs2-mkdir src/apps/admin/pvfs2-chmod src/apps/admin/pvfs2-chown src/apps/admin/pvfs2-fs-dump src/apps/admin/pvfs2-fsck src/apps/admin/pvfs2-validate src/apps/admin/pvfs2-cp src/apps/admin/pvfs2-viewdist src/apps/admin/pvfs2-xattr src/apps/admin/pvfs2-touch src/apps/admin/pvfs2-remove-object src/apps/admin/pvfs2-ln src/apps/admin/pvfs2-perror src/apps/admin/pvfs2-check-server /usr/local/bin
install -m 755 src/apps/admin/pvfs2-config /usr/local/bin
install -m 755 ./src/apps/admin/pvfs2-genconfig /usr/local/bin
install -m 755 ./src/apps/admin/pvfs2-config-convert /usr/local/bin
install -m 755 src/apps/karma/karma /usr/local/bin
install -d /usr/local/sbin
install -m 755 src/apps/admin/pvfs2-mkspace src/apps/admin/pvfs2-migrate-collection src/apps/admin/pvfs2-change-fsid src/apps/admin/pvfs2-showcoll /usr/local/bin
install -m 755 src/server/pvfs2-server /usr/local/sbin

3.
# /usr/local/bin/pvfs2-genconfig /etc/pvfs2-fs.conf
**********************************************************************
    Welcome to the PVFS2 Configuration Generator:

This interactive script will generate configuration files suitable
for use with a new PVFS2 file system.  Please see the PVFS2 quickstart
guide for details.

**********************************************************************
You must first select the network protocol that your file system will use.
The only currently supported options are "tcp", "gm", "mx", "ib", and "portals".
(For multi-homed configurations, use e.g. "ib,tcp".)

* Enter protocol type : ib

Choose a TCP/IP port for the servers to listen on for IB communications.  Note that this
script assumes that all servers will use the same port number.

* Enter port number :

Choose a directory for each server to store data in.

* Enter directory name: :

Choose a file for each server to write log messages to.

* Enter log file location :

Next you must list the hostnames of the machines that will act as
I/O servers.  Acceptable syntax is "node1, node2, ..." or "node{#-#,#,#}".

* Enter hostnames : perahpc

Now list the hostnames of the machines that will act as Metadata
servers.  This list may or may not overlap with the I/O server list.

* Enter hostnames : perahpc

Configured a total of 1 servers:
1 of them are I/O servers.
1 of them are Metadata servers.

* Would you like to verify server list (y/n) ?

Writing fs config file... done  //問題首先出現在這個地方,文檔上寫著,配置文件生成之後,最後一行回顯應該為:『Configuration complete!』
#

4.
剩下的配置完全按照quickstart的步驟進行

5.測試
# pvfs2-ping -m /mnt/pvfs2/

(1) Parsing tab file...

(2) Initializing system interface...

(3) Initializing each file system found in tab file: /etc/fstab...

   PVFS2 servers: ib://perahpc:3335
   Storage name: pvfs2-fs
   Local mount point: /mnt/pvfs2
PVFS_isys_fs_add: Failed to initialize any appropriate BMI methods for addresses:
     ib://perahpc:3335
PVFS_isys_fs_add call: Protocol not available
   /mnt/pvfs2: FAILURE!

Failure: could not initialze at least one of the target file systems.

(4) Searching for /mnt/pvfs2/ in pvfstab...
Error: /mnt/pvfs2// resides on a PVFS2 file system that has not yet been initialized.
Failure: could not find filesystem for /mnt/pvfs2/ in pvfs2tab /etc/fstab
Entry 0: /mnt/pvfs2


小弟接觸linux和并行文件系統的時間很短,但是手頭的項目很急,請大家幫忙看看應該怎麼解決,多謝了!!!

[ 本帖最後由 bigkevinwong 於 2008-12-23 13:18 編輯 ]
《解決方案》

回復 #1 bigkevinwong 的帖子

你要實現的管理目標是什麼
《解決方案》

回復 #2 kns1024wh 的帖子

我們使用Rocks的目的是方便管理,畢竟我對linux不是很熟悉,rocks管理起來很方便,不用做太多改動。
現在就是想在rocks上面把PVFS2跑起來,可是安裝的過程出了問題。請幫忙看看是哪裡的問題,多謝啦!!!

[ 本帖最後由 bigkevinwong 於 2008-12-23 13:10 編輯 ]
《解決方案》

# ldd $(which pvfs2-client)
信息.
《解決方案》

回復 #4 wysilly 的帖子

# lld $(which pvfs2-client)
/usr/bin/which: no pvfs2-client in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/java/latest/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/ganglia/bin:/opt/ganglia/sbin:/opt/rocks/bin:/opt/rocks/sbin:/root/bin)
-bash: lld: command not found


是不是代表pvfs2-client沒有運行起來?應該怎麼處理呢?
《解決方案》

樓主,我最近也在rocks上搞pvfs,想諮詢你幾個問題:

1. rocks本身已經把home目錄建在主節點的/export下了,並且共享出去,用了pvfs后,是不是要用pvfs io節點共享出來的空間來替換/export,並把automount停掉?還是僅僅把pvfs 的mount點設置到每個計算節點的/scratch目錄下? NFS那一套rocks預設都有了,是不是全部取消?

2. 我rocks 5.0上用pvfs roll,在安裝pvfs io節點的時候,發現IO節點無法安裝,報錯:error partitioning....

3. meta server 和io server是可以合用一個伺服器的,但是似乎用pvfs roll安裝,兩個要用2台獨立伺服器?

4. 如果以後擴展IO節點數量,是不是要整個集群重裝?

5. 如果任意一個IO節點崩潰,是不是沒有冗餘機制,要集群重裝?
《解決方案》

回復 #6 HenrySmith 的帖子

1.pvfs2我也正在研究中,具體的原理我也是一頭霧水。:em14: 但是你要是使用rocks提供的pvfs roll進行安裝的話,問題就簡單多了。只要pvfs roll安裝正確,掛載的事情都會自動搞定。
pvfs roll的安裝順序為:
  a.在frontend上安裝pvfs roll
   b.在frontend上  #insert-ethers ,模版裡面會多了幾個選項:pvfs2 IO node、pvfs2 IO&compute node(記憶中是叫這個名字),如果你的IO server不是專用的存儲節點的話可以選擇後者。
  c.網路啟動要部署的節點,像部署新節點一樣。
2.安裝上面的安裝順序應該不會遇到這個錯誤。
3.pvfs roll 默認配置里,meta server不能做為IO server。
4.添加IO節點只要在frontend上insert一個IO node就可以了
5.可以增加一個metaserver做備份,並在每個IO 節點上使用raid5
《解決方案》

1. pvfs mount 到/mnt/pvfs2,這個空間用於放置什麼數據呢?是不是把共享程序全部從/share/apps下面改到/mnt/pvfs2?我就是沒搞明白怎麼利用這個空間,是不是把用戶home directory全部放到/mnt/pvfs2上?

2. 一個IO節點起不來,應該整個pvfs的數據就無法讀寫,所以光備份metaserver是沒用的啊。

3. 增加IO節點的時候,是不是要整個pvfs系統重建?數據能自動往新的IO上寫嗎?不會影響原有數據嗎?
《解決方案》

出現這個PVFS_isys_fs_add: Failed to initialize any appropriate BMI methods for addresses:提示,多為ib支持沒有正常編譯.
另外是
ldd $(which pvfs2-client)

不是lld.要看的就是是否正常編譯了軟體.

[火星人 ] PVFS2在rocks+infiniband上的安裝問題已經有705次圍觀

http://coctec.com/docs/service/show-post-6787.html