iSCSI 서버 구성: 리눅스에서 안정적인 스토리지 환경 구축하기
안녕하세요, mj입니다! 오늘은 iSCSI 서버 구성에 대한 완벽 가이드를 소개해 드리겠습니다. 이 가이드를 통해 안정적이고 효율적인 스토리지 환경을 구축하시길 바랍니다.
iSCSI 서버 구성: 완벽 가이드
iSCSI(인터넷 작은 컴퓨터 시스템 인터페이스)는 IP 네트워크를 통해 SCSI 프로토콜을 구현하여 원거리 저장 장치에 접근할 수 있게 해주는 기술입니다. 이 가이드는 리눅스 시스템에서 iSCSI 서버를 구성하는 방법을 단계별로 안내합니다.
1. iSCSI의 장점
iSCSI는 다양한 장점을 제공합니다. 첫째, 기존의 IP 네트워크를 사용할 수 있어 별도의 SAN(Storage Area Network) 구축 비용을 절감할 수 있습니다. 둘째, iSCSI는 스토리지의 확장성을 높이고, 데이터 전송 속도를 개선합니다. 셋째, 관리가 용이하여 서버와 스토리지 간의 연결을 간단하게 설정할 수 있습니다.
2. iSCSI 서버 설치
iSCSI 서버를 설치하기 위해서는 targetcli
또는 tgt
와 같은 패키지를 사용할 수 있습니다. Ubuntu 기반의 시스템에서는 다음 명령어로 iSCSI 타겟을 설치할 수 있습니다:
sudo apt update
sudo apt install targetcli
설치가 완료되면, iSCSI 타겟을 설정할 준비가 완료됩니다.
3. iSCSI 타겟 설정
설정 파일을 열고 iSCSI 타겟을 추가합니다. 다음 명령어를 사용하여 iSCSI 타겟을 설정할 수 있습니다:
sudo targetcli
다음으로, iSCSI 타겟을 추가하고 필요한 LUN(Logical Unit Number)을 설정합니다. 타겟 이름은 iqn
형식으로 지정합니다:
/iscsi create iqn.2025-02.com.example:storage
/luns create /backstores/fileio/mydisk.img 1G
위 명령어는 iqn.2025-02.com.example:storage
라는 이름의 iSCSI 타겟을 생성하고, 1GB 크기의 LUN을 추가합니다. LUN의 크기와 경로는 필요에 따라 조정할 수 있습니다.
4. 보안 설정
iSCSI는 보안 설정이 중요합니다. CHAP(Challenge Handshake Authentication Protocol) 인증을 설정하여 보안을 강화할 수 있습니다. 다음 명령어로 CHAP 인증을 활성화합니다:
/iscsi/iqn.2025-02.com.example:storage/tpg1/luns/0 set attribute authentication=1
그리고 CHAP 사용자 이름과 비밀번호를 설정합니다:
/iscsi/iqn.2025-02.com.example:storage/tpg1 set attribute auth userid=USERNAME
/iscsi/iqn.2025-02.com.example:storage/tpg1 set attribute auth password=PASSWORD
5. iSCSI 서비스 시작
iSCSI 설정이 완료되면 서비스를 시작해야 합니다. 다음 명령어를 사용하여 iSCSI 서비스를 시작합니다:
sudo systemctl start target
서비스가 정상적으로 실행되고 있는지 확인하려면 다음 명령어를 입력하세요:
sudo systemctl status target
정상적으로 실행 중이라면, 다음과 같은 출력 결과를 확인할 수 있습니다:
● target.service - iSCSI Target
Loaded: loaded (/lib/systemd/system/target.service; enabled; vendor preset: enabled)
Active: active (running)
6. 클라이언트에서 iSCSI 타겟 연결
클라이언트에서 iSCSI 타겟에 연결하려면, iSCSI initiator를 설정해야 합니다. Ubuntu에서는 다음 명령어로 iSCSI initiator를 설치할 수 있습니다:
sudo apt install open-iscsi
설치 후, /etc/iscsi/initiatorname.iscsi
파일을 열어 iSCSI initiator 이름을 설정합니다. 이후, 다음 명령어로 iSCSI 타겟에 연결합니다:
sudo iscsiadm -m discovery -t sendtargets -p [타겟 IP 주소]
연결이 성공적으로 이루어지면, 다음과 같은 출력 결과를 확인할 수 있습니다:
10.0.0.1:3260,1 iqn.2025-02.com.example:storage
7. 장애 조치 및 백업
iSCSI 서버를 운영하면서 장애 조치와 백업 설정도 중요합니다. RAID 구성을 통해 데이터 손실을 방지하고, 정기적인 백업을 수행하여 데이터를 안전하게 보호하는 것이 좋습니다. 다음은 RAID 구성 예시입니다:
sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
RAID 구성이 완료되면, 다음 명령어로 상태를 확인합니다:
cat /proc/mdstat
8. 마무리
iSCSI 서버 구성은 스토리지 관리를 효율적으로 할 수 있는 좋은 방법입니다. 이 가이드를 통해 iSCSI 서버를 성공적으로 설정하고, 안정적인 저장 공간을 확보하시길 바랍니다. 추가적인 질문이 있으시면 언제든지 문의해 주세요!
읽어주셔서 감사합니다! mj였습니다.
댓글
댓글 쓰기