은하천궁 SP3 서버에서 iSCSI와 LVM을 활용한 고성능 스토리지 풀 구성 방법

iSCSI 및 LVM 기반 스토리지 아키텍처의 핵심 가치

국산 서버 환경에서 효율적인 스토리지 관리는 시스템 운영의 핵심 과제 중 하나다. 초기에 은하천궁 SP3 서버를 다룰 때, 물리적 디스크의 제약과 유연한 확장성 부족으로 어려움을 겪었다. 이후 iSCSILVM(논리 볼륨 관리)의 조합을 적용하면서, 자원 관리의 패러다임이 완전히 바뀌었다.

iSCSI는 네트워크 상의 저장 장치를 마치 로컬 디스크처럼 사용할 수 있게 해주는 프로토콜이다. 이는 전통적인 SCSI 명령어를 TCP/IP 기반 네트워크를 통해 전달함으로써, 물리적 위치에 구애받지 않고 스토리지를 공유할 수 있도록 한다. 주요 이점은 다음과 같다:

  • 확장성 향상: 서버 내부 스토리지 공간 한계를 극복하고, 중앙 집중형 스토리지 리소스를 활용 가능
  • 실시간 확장: 가상 머신이나 애플리케이션에 필요한 용량을 서비스 중단 없이 동적으로 제공
  • 중앙화 관리: 단일 저장 서버에서 모든 데이터를 통합 관리하여 백업, 모니터링, 보안 정책 적용이 용이

반면, LVM은 물리적 디스크를 논리적으로 연결해 대규모 스토리지 풀을 구성하고, 필요 시 실시간으로 크기를 조정할 수 있는 강력한 도구다. 전통적인 파티셔닝 방식은 공간 재조정이 불가능하지만, LVM은 다음 기능을 지원한다:

  • 여러 개의 물리 디스크를 하나의 볼륨 그룹으로 통합
  • 논리 볼륨의 크기 변경 (확장/축소) 가능
  • 서비스 중에도 새로운 디스크 추가 가능
  • 빠른 스냅샷 생성을 통한 데이터 백업 및 복구

예시로, 정부 클라우드 플랫폼에서는 여러 부서별로 할당된 스토리지 공간이 지속적으로 변동했다. 이를 해결하기 위해 아래와 같은 구조를 구현했다:

  1. 저장 서버에서 대용량 LVM 볼륨 그룹 생성
  2. iSCSI를 통해 각 부서에 맞는 크기의 논리 볼륨 제공
  3. 요구사항 변화 시 실시간으로 용량 조정 가능

이런 접근은 다음 유형의 환경에 특히 적합하다:

  • 다수의 애플리케이션 또는 사용자 간 스토리지 분리 필요
  • 변동성이 큰 스토리지 수요를 가진 사업 시스템
  • 고가용성과 빠른 복구가 요구되는 핵심 업무 시스템
  • 자원 풀링 기반의 하이브리드 클라우드 인프라

환경 준비 및 필수 소프트웨어 설치

정확한 사전 준비는 후속 작업의 80% 이상을 줄여준다. 아래는 실제 프로젝트에서 검증된 절차다.

하드웨어 구성 요건

  • 저장 서버: 최소 16GB RAM, SSD + HDD 혼합 스토리지 구성 권장
  • 네트워크 설정: iSCSI 트래픽은 별도의 네트워크 카드 사용, 최소 1Gbps 대역폭 확보
  • 클라이언트: 일반 서버 사양으로 충분하나, 네트워크 지연 시간에 주의 필요

시스템 상태 확인

# 운영체제 버전 확인
cat /etc/os-release

# 커널 버전 확인
uname -r

은하천궁 SP3는 기본적으로 필요한 패키지를 포함하고 있으나, 최신 상태 유지가 중요하다:

sudo yum update -y

방화벽 설정 (주요 포트 오픈)

iSCSI는 특정 포트를 사용하므로 방화벽 규칙을 반드시 설정해야 한다:

# 기본 포트 3260 열기
sudo firewall-cmd --permanent --add-port=3260/tcp

# 멀티패스 환경에서는 추가 포트 필요
sudo firewall-cmd --permanent --add-port=860/tcp
sudo firewall-cmd --permanent --add-port=3260/tcp

# 설정 적용
sudo firewall-cmd --reload

저장 서버용 소프트웨어 설치

sudo yum install targetcli -y
sudo systemctl enable target
sudo systemctl start target

클라이언트용 소프트웨어 설치

sudo yum install iscsi-initiator-utils lvm2 -y
sudo systemctl enable iscsid
sudo systemctl start iscsid

실제 배포 경험에서 알게 된 팁:

  • SP 버전 간 호환성 차이 존재 → 사전 테스트 필수
  • 생산 환경에서는 DHCP 대신 고정 IP 사용 권장
  • 의존성 문제 발생 시 로컬 YUM 저장소 구성 고려

LVM 스토리지 풀 구성 및 관리

LVM은 전체 스토리지 아키텍처의 중심 역할을 수행한다. 아래는 실제 프로젝트에서 적용한 절차다.

1. 디스크 준비

새로운 디스크 /dev/sdb를 예로 들어 설명한다:

sudo gdisk /dev/sdb

인터페이스에서 n으로 새 파티션 생성, t로 타입 변경 후, 8e00 (Linux LVM) 선택.

2. 물리 볼륨 생성

sudo pvcreate /dev/sdb1
sudo pvdisplay

3. 볼륨 그룹 구성

볼륨 그룹 이름은 비즈니스 목적에 따라 명확하게 지정하는 것이 좋다:

sudo vgcreate data_vg /dev/sdb1

4. 논리 볼륨 생성 및 매핑

필요한 용량에 맞춰 논리 볼륨 생성:

sudo lvcreate -L 50G -n app_lv data_vg

5. iSCSI 공유 설정

targetcli를 사용해 생성한 논리 볼륨을 iSCSI로 공유:

targetcli
/> /iscsi create iqn.2024-05.com.example:storage.target
/> /backstores/block create app_volume /dev/data_vg/app_lv
/> /iscsi/iqn.2024-05.com.example:storage.target/tpg1/luns create /backstores/block/app_volume
/> /iscsi/iqn.2024-05.com.example:storage.target/tpg1/acls create iqn.2024-05.com.example:client.node
/> saveconfig

6. 클라이언트 연결 및 마운트

클라이언트에서 디스크 인식 후 파일 시스템 형식화 및 마운트:

sudo iscsiadm -m discovery -t sendtargets -d 192.168.1.100
sudo iscsiadm -m node -l
sudo mkfs.ext4 /dev/sdb
sudo mkdir /mnt/app_storage
sudo mount /dev/sdb /mnt/app_storage

이 구조는 동적 확장, 고가용성, 중앙 집중 관리를 동시에 달성하며, 국산 인프라 환경에서의 안정성과 유연성을 입증했다.

태그: iSCSI LVM 은하천궁 스토리지 풀 볼륨 관리

6월 26일 00:15에 게시됨