GPFS(Global Parallel File System)는 IBM에서 개발한 고성능 병렬 파일 시스템으로, 대규모 데이터 처리 및 고성능 컴퓨팅(HPC) 환경에서 널리 사용됩니다. 본 포스트에서는 리눅스 환경에서 GPFS를 스토리지에 연결하는 방법을 단계별로 안내하고, 실무에서 자주 묻는 질문(FAQ)도 함께 정리하였습니다.
✅ GPFS란 무엇인가?
GPFS(Global Parallel File System), 현재는 IBM Spectrum Scale로도 불립니다. 이는 여러 서버와 스토리지를 병렬로 연결하여, 고속의 파일 I/O 처리와 뛰어난 확장성을 제공합니다. 다음과 같은 장점이 있습니다:
- 고속 데이터 액세스
- 파일 단위 병렬 처리
- 공유 파일 시스템 구성
- 수평 확장성
- 데이터 무결성과 고가용성 보장
✅ GPFS 스토리지 연결 전 준비 사항
1. 시스템 요구 사항 확인
- RHEL / CentOS / Ubuntu 등 지원되는 리눅스 배포판
- 최소 커널 버전
- GPFS 라이센스 및 설치 파일
- 스토리지 장치 (SAN/NAS/DAS 등)
- 시간 동기화(NTP), DNS 설정
2. 사용자 및 그룹 생성
GPFS는 특정 사용자/그룹 권한으로 실행되므로, 다음 계정을 설정합니다:
groupadd gpfs
useradd -g gpfs gpfsadmin
3. 방화벽/SELinux 설정
GPFS 노드 간 통신을 위해 포트를 개방하고, SELinux 설정을 조정해야 합니다.
# 방화벽 예시
firewall-cmd --permanent --add-port=1191/tcp
firewall-cmd --reload
✅ GPFS 설치 및 구성
1. 패키지 설치
# RPM 패키지 설치 예시
rpm -ivh gpfs.base-<version>.rpm
rpm -ivh gpfs.gpl-<version>.rpm
rpm -ivh gpfs.docs-<version>.rpm
rpm -ivh gpfs.msg.en_US-<version>.rpm
또는 .deb
패키지를 사용하는 경우 dpkg -i
명령어를 사용합니다.
2. GPFS 라이센스 활성화
mmchlicense server --accept -N <노드리스트>
3. 클러스터 생성
mmcrcluster -N /path/to/nodefile.txt -p <primary_node> -s <secondary_node> -r /usr/bin/ssh -R /usr/bin/scp
노드 파일에는 다음 형식으로 노드를 나열합니다:
node1:quorum
node2:quorum
node3:manager
4. GPFS 시작
mmstartup -a
이 명령으로 클러스터의 모든 노드에서 GPFS가 실행됩니다.
✅ GPFS 파일 시스템 구성 및 마운트
1. 디바이스 생성
mmcrnsd -F /path/to/nsdfile.txt
NSD 파일은 다음과 같이 구성됩니다:
%nsd:
device=/dev/sdb
nsd=nsd1
servers=node1,node2
usage=dataAndMetadata
failureGroup=1
2. 파일 시스템 생성
mmcrfs gpfs_fs /dev/nsd1 /dev/nsd2 -F /path/to/nsdfile.txt -A yes -Q no -m 2 -r 1 -n 32M
옵션 설명:
-A yes
: 자동 마운트 설정-Q no
: 쿼럼 디바이스 사용 안함-m
,-r
: 메타데이터 및 복제 수-n
: 블록 크기
3. 마운트 및 확인
mmmount gpfs_fs -a
df -hT | grep gpfs
정상적으로 마운트되었다면 gpfs
타입으로 출력됩니다.
✅ 자동 마운트 설정
시스템 재부팅 시 자동으로 GPFS가 마운트되도록 /etc/fstab
에 설정하거나, mmchfs gpfs_fs -A yes
명령어로 자동 마운트를 설정합니다.
🔧 실무 팁 및 트러블슈팅
1. GPFS 데몬이 비정상 종료될 때
mmshutdown -a
mmstartup -a
2. 디바이스 인식 오류
lsblk
,lsscsi
,udevadm info
명령어로 장치 상태 확인- 퍼미션 또는 LUN 매핑 확인
3. GPFS 상태 점검
mmgetstate -a
mmdiag --all
🔍 GPFS 구성 예시 아키텍처
[Client Node 1]──┐
[Client Node 2]──┴─> [GPFS Cluster Node 1]───┐
│ [SAN Storage]
[Client Node 3]──┬─> [GPFS Cluster Node 2]───┘
이처럼 각 클라이언트 노드는 GPFS 클러스터를 통해 스토리지에 병렬 접근이 가능합니다.
❓ FAQ: GPFS 스토리지 연결 관련 자주 묻는 질문
Q1. GPFS는 무료인가요?
IBM의 라이선스 정책에 따라 유료입니다. 일부 기능은 평가판 또는 오픈소스 버전으로 제공될 수 있으나, 고급 기능은 라이선스 필요합니다.
Q2. GPFS와 NFS의 차이점은 무엇인가요?
GPFS는 병렬 I/O를 지원하는 고성능 파일 시스템이며, NFS는 단일 서버 기반의 네트워크 파일 시스템입니다. GPFS는 확장성, 성능, 신뢰성에서 우수합니다.
Q3. GPFS 클러스터는 최소 몇 노드로 구성해야 하나요?
최소 3개의 노드(2개는 쿼럼 노드, 1개는 매니저 노드) 이상이 권장됩니다.
Q4. GPFS 파일 시스템은 어떤 유형의 스토리지를 사용할 수 있나요?
SAN, DAS, SSD, NVMe 등 다양한 형태의 블록 디바이스를 사용할 수 있습니다.
Q5. GPFS는 클라우드에서도 사용할 수 있나요?
네, AWS, Azure, IBM Cloud 등 다양한 클라우드에서 IBM Spectrum Scale 형태로 운영 가능합니다.
✍️ 마무리
GPFS는 고성능, 대용량 데이터 환경에서 매우 유용한 파일 시스템입니다. 본 포스트를 통해 리눅스 환경에서 GPFS를 설치하고 스토리지와 연결하는 방법을 익히셨기를 바랍니다. 실제 환경에 맞는 튜닝 및 보안 설정도 병행하면 안정성과 성능을 극대화할 수 있습니다.
#리눅스스토리지 #GPFS #IBM스펙트럼스케일 #고성능파일시스템 #HPC #스토리지연결 #파일시스템구성 #리눅스서버운영 #서버관리팁
'전산' 카테고리의 다른 글
# 리눅스 NAS 스토리지 연결하기: 완벽 가이드 (NFS / SMB 방법 포함) (0) | 2025.04.04 |
---|---|
# 리눅스 SAN 스토리지 연결하기: 완벽 가이드 (0) | 2025.04.04 |
# AWS 인스턴스 완벽 가이드: 종류, 요금, 활용법 총정리 (0) | 2025.04.04 |
# AWS 주요 구성 요소: 클라우드 인프라의 핵심 이해 (1) | 2025.04.04 |
# AWS 설치하기: 완벽 가이드 (초보자도 가능한 AWS 시작법) (0) | 2025.04.04 |