본문으로 건너뛰기

병렬 파일 시스템 (PFS)

개요​

병렬 파일 시스템(PFS)은 여러 가상머신이 동시에 같은 파일을 읽고 쓸 수 있는 고성능 공유 스토리지입니다. VAST NFS 기반으로 제공되며, 멀티노드 분산 학습의 체크포인트·로그 공유에 사용합니다.

PFS vs 오브젝트 스토리지

PFS는 POSIX 파일시스템이므로 기존 코드 수정 없이 사용할 수 있습니다. 오브젝트 스토리지는 API 호출이 필요합니다.


사전 준비​

  1. 좌측 메뉴 병렬 파일 시스템 페이지에서 병렬 파일 시스템 생성 버튼으로 PFS를 만듭니다.
  2. 생성한 PFS 상세 페이지에서 가상머신 추가를 눌러 가상머신을 멤버로 등록합니다: 클러스터에서 추가 또는 개별 가상머신 추가 두 가지 방식을 지원합니다.
  3. PFS 상세 페이지의 일반 정보에서 다음 항목을 확인합니다.
항목설명예시
VIP 주소PFS 서버 접근 IP 대역 (vip_pools)10.121.255.247–10.121.255.254
가상함수 IP (VF IP)멤버 가상머신의 전용 접근 IP10.121.0.1/16, 10.121.0.2/16
PFS 멤버인 가상머신은 삭제·수정이 제한됩니다

PFS에 연결된 가상머신은 직접 삭제하거나 일부 항목을 수정할 수 없습니다 (parallelFileSystemMemberExist 에러). 먼저 PFS 상세 페이지에서 멤버에서 제거한 뒤 가상머신을 삭제하세요.


1단계: vastnfs 드라이버 상태 확인​

아래 명령으로 vastnfs 드라이버가 정상 동작하는지 확인합니다.

vastnfs-ctl status

아래 예시와 같이 정상 출력되면 2단계로 바로 이동합니다.

version: 4.5.5-vastdata-OFED-internal-26.01-1.0.0
kernel modules: sunrpc
services: rpcbind.socket rpcbind
rpc_pipefs: /run/rpc_pipefs
아래 예시와 같이 정상적으로 출력되지 않으면
patched version not running

아래 드라이버 재설치 후 2단계: 마운트 진행바랍니다.


2단계: 마운트​

아래 명령어를 실행하기 전 What, nconnect, remoteports 값을 병렬 파일 시스템 상세에 가서 확인합니다.

  • What=에는 VIP 주소 중 첫 번째 주소를 사용합니다.
  • nconnect=에는 VIP 주소 개수를 지정합니다.
  • remoteports=에는 VIP 주소 전체 범위를 지정합니다.
sudo tee /etc/systemd/system/mnt-pfs.mount >/dev/null <<'EOF'
[Unit]
Description=Mount VAST NFS PFS
After=network-online.target
Wants=network-online.target

[Mount]
What=10.121.255.247:/
Where=/mnt/pfs
Type=nfs
Options=vers=3,nconnect=8,noatime,remoteports=10.121.255.247-10.121.255.254,_netdev

[Install]
WantedBy=multi-user.target
EOF

이어서 마운트 디렉터리를 만들고 unit을 활성화합니다.

sudo mkdir -p /mnt/pfs
sudo systemctl daemon-reload
sudo systemctl enable --now mnt-pfs.mount

마운트 확인​

df -h | grep pfs
# /mnt/pfs 가 출력되면 정상

다음 단계​