[클러스터] PVFS 설치 방법
pvfs 설정
시스템 환경
컴퓨터 3대
레드햇 7.3 (3대 모두에)
linux1.kdamduck.pe.kr —->203.249.6.182 —metadata server
linux2.kdamduck.pe.kr —->203.249.6.180— I/O 서버
linux3.kdamduck.pe.kr —->203.249.6.181—클라이언트
pvfs 구축 전 시스템환경 설정 (3대 모두에 설정)
vi /etc/hosts
203.249.6.182 linux1.kdamduck.pe.kr
203.249.6.180 linux2.kdamduck.pe.kr
203.249.6.181 linux3.kdamduck.pe.kr
vi /etc/sysconfig/network( 각 컴퓨터 호스트이름을 각 컴퓨터 모두에 설정)
HOSTNAME=linux1.kdamduck.pe.kr (이러한 방식으로 설정)
필요한 파일
pvfs-1.5.5.tgz
pvfs-kernel-1.5.5.tgz
pvfs-1.5.5.tgz , pvfs-kernel-1.5.5.tgz 를 3대 모두에 설치
mv pvfs-1.5.5.tgz /usr/local/src
mv pvfs-kernel-1.5.5.tgz /usr/local/src
tar zxvf pvfs-1.5.5.tgz
cd pvfs-1.5.5
./configure
make
make install
tar zxvf pvfs-kernel-1.5.5.tgz
cd pvfs-kernel-1.5.5
./configure –with-libpvfs-dir=../pvfs-1.5.5/lib
make
make install
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
metadata 서버 설정
mkdir /pvfs-meta
cd /pvfs-meta
/usr/local/bin/mkmgrconf (이하 mkmgrconf 설정)
This script will make the .iodtab and .pvfsdir files
in the metadata directory of a PVFS file system.
Enter the root directory:
/pvfs-meta //metadata를 저장할 디렉토리 이름 (바로 위에서 만든 디렉토리이다.)
Enter the user id of directory:
root
Enter the group id of directory:
root
Enter the mode of the root directory:
777
Enter the hostname that will run the manager:
linux1.kdamduck.pe.kr (mgr을 실행시킬 서버, 메타서버의 호스트이름을 쓰면 된다.)
Searching for host…success
Enter the port number on the host for manager:
(Port number 3000 is the default)
3000
Enter the I/O nodes: ( can use form node1, node2, …or nodename#-#,#,#)
linux2.kdamduck.pe.kr (I/O노드로서 쓸 호스트 이름을 적어 주면 된다. 이부분에서
한 참을 삽질을 했는데, 여러개의 컴퓨터가 네트워크에 연결되어 있더라도 위에서 설정한
/etc 밑에 있는 2개의 네트워크에 관련한 파일을 설정하지 않았을때 호스트이름을
찾을 수 없었으며, 또한 단순히 이 부분에 호스트이름 만을 넣어주었을 때도 다른 호스트
들을 찾을 수 없었다. 위에서 설정한 네트워크에 관련된 2개의 파일을 정확히 설정하고
호스트 이름과 도메인이 결합된 이름을 이 부분에 써 주었을 때 다른 호스트들을 찾을 수
있었다. )
Searching for hosts…success
I/O nodes : linux2.kdamduck.pe.kr
Enter the port number for the iods:
(Port number 7000 is the default)
7000
Done!
mgr 명령을 실행한다.
ps -aux | grep mgr로 프로세스를 확인해본다.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
I/O 서버 설정
mkdir /pvfs-data
chmod 700 /pvfs-data
chown nobody.nobody /pvfs-data
cp /usr/local/src/pvfs-1.5.5/system/iod.conf /etc/iod.conf
iod명령을 실행한다.
ps -aux | grep iod로 프로세스를 확인해본다.
(/pvfs-data 디렉토리의 소유권을 nobody로 바꾸어 주지 않으면
iod는 실행 되지 않는다.)
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
클라이언트 설정
mkdir /lib/modules/2.4.18-3/misc
cp /usr/local/src/pvfs-kernel-1.5.5/pvfs.o /lib/modules/2.4.18-3/misc
mkdir /mnt/pvfs
touch /etc/pvfstab
chmod a+r /etc/pvfstab
vi /etc/pvfstab
linux1.kdamduck.pe.kr:/pvfs-meta /mnt/pvfs pvfs port=3000 0 0
pvfsd(어디서 실행해야 하는지는 확실히 모른다..그냥 이 위치 즈음에서 실행~)
mknod /dev/pvfsd c 60 0
insmod pvfs
mount.pvfs linux1.kdamduck.pe.kr:/pvfs-meta /mnt/pvfs
mount 명령으로 확인해본다.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
메타서버는 그냥 메타 서버로서 쓰고,
I/O 서버를 I/O 서버이면서 클라이언트로 , 클라이언트를 클라이언트면서 I/O 서버로
쓰려면 메타서버 설정에서 Enter the I/O nodes: ( can use form node1, node2, …or nodename#-#,#,#)
부분에 linux2.kdamduck.pe.kr, linux3.kdamduck.pe.kr 이라 설정해주고,
위의 I/O서버 설정과 클라이언트 설정을 linux2,linux3에 각각 설정해 준다.
그냥 미천한 팁이었습니다…