Computer >> 컴퓨터 >  >> 시스템 >> Windows Server

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

iSCSI(Internet Small Computer System Interface)는 IP 프로토콜을 통해 스토리지 장치에 접근할 수 있도록 해주는 SCSI 프로토콜입니다. iSCSI를 활용하면 Fiber Channel(FC) 장비 없이도 일반적인 TCP/IP 네트워크를 통해 서버를 공유 네트워크 스토리지에 연결할 수 있습니다.

이 글에서는 Windows Server 2019 환경에서 iSCSI 타겟(가상 디스크)을 구성하고, 다른 서버에서 해당 iSCSI LUN에 연결하는 방법을 단계별로 살펴봅니다(Windows Server 2016 및 2012 R2에서도 동일한 방식으로 구성할 수 있습니다). iSCSI의 대표적인 활용 사례는 다음과 같습니다.

  • 파일 서버에 추가 스토리지 공간이 필요할 때, 다른 스토리지 서버의 가상 디스크를 iSCSI로 연결하는 경우
  • 여러 서버가 공유 스토리지에 접근해야 하는 장애 조치(Failover) 클러스터를 구축하는 경우

iSCSI 디스크를 사용하려면 먼저 스토리지 서버에서 가상 디스크(일반적인 VHD/VHDX 파일)를 생성한 뒤 이를 iSCSI 타겟으로 게시해야 하며, iSCSI 이니시에이터(다른 서버 또는 장치)가 이 타겟에 연결하는 구조입니다.

목차

  • Windows Server에서 iSCSI 타겟 구성하기
  • Windows Server에 iSCSI 이니시에이터 설치 및 구성하기

Windows Server에서 iSCSI 타겟 구성하기

가장 먼저 서버 관리자(Server Manager)를 열고 파일 및 저장소 서비스 → 파일 및 iSCSI 서비스에서 iSCSI Target Server 역할을 활성화합니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

PowerShell을 통해서도 역할을 설치할 수 있습니다.

Install-WindowsFeature -Name FS-iSCSITarget-Server

iSCSI 가상 디스크 생성

다음으로 iSCSI 서버에서 가상 디스크를 생성합니다. 서버 관리자 → 파일 및 저장소 서비스 → iSCSI로 이동한 후, 새 iSCSI 가상 디스크 마법사를 실행합니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

마법사에서는 가상 디스크 파일이 저장될 물리적 파티션을 선택하고, 새 iSCSI 디스크의 이름, 크기, 유형(고정 크기, 동적 확장, 차등) 및 iSCSI 타겟 이름을 지정합니다.

접근 권한 설정

액세스 서버 단계에서는 iSCSI 타겟에 연결할 수 있는 서버(iSCSI 이니시에이터)를 아래 옵션 중 하나로 지정합니다.

  • IQN (사전에 서버에서 iSCSI 이니시에이터를 활성화한 뒤 IQN을 복사해야 합니다)
  • DNS 이름
  • IP 주소
  • MAC 주소

여기서는 IP 주소 옵션을 사용하겠습니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

CHAP 인증 구성

마법사의 다음 단계는 CHAP 인증 프로토콜 구성입니다. 이니시에이터의 연결을 인증하려면 반드시 설정해야 합니다. CHAP을 활성화하고 사용자 이름과 12자 이상의 암호를 입력한 뒤 다음 → 다음 → 마침을 클릭하여 마법사를 완료합니다. 이후 D:\iSCSIVirtualDisks 폴더에 iscsiDisk2.vhdx 파일이 정상적으로 생성되었는지 확인합니다.

PowerShell로 iSCSI 디스크 생성하기

PowerShell을 사용하면 명령줄에서도 iSCSI 디스크를 생성할 수 있습니다. 다음은 200GB 가상 디스크를 생성하는 예시입니다.

New-IscsiVirtualDisk -Path c:\iSCSIVirtualDisks\iscsiDisk2.vhdx -Size 200GB

기본적으로 Size 매개변수에 지정한 값과 관계없이 4,096KB 크기의 동적 디스크가 생성되며, 이 디스크는 필요에 따라 자동으로 확장됩니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

생성 시점에 물리적 드라이브의 공간을 미리 예약하는 고정 크기 디스크를 사용하려면 UseFixed 매개변수를 추가합니다.

New-IscsiVirtualDisk -Path c:\iSCSIVirtualDisks\iscsiDisk2.vhdx -Size 200GB –UseFixed

참고: IOPS 요구가 높고 쓰기 작업이 빈번한 디스크에는 고정 크기 VHDX 파일을 사용하는 것이 좋습니다. 동적 디스크는 증분 확장 작업 시 추가적인 시스템 리소스를 소비하기 때문입니다.

iSCSI 타겟 생성 및 확인

이제 타겟 이름을 지정합니다. 이 단계에서 이니시에이터 서버의 IP 주소를 통해 접근을 허용할 수 있습니다.

New-IscsiServerTarget -TargetName "iscsiTarget33" -InitiatorId @("IPAddress:172.17.244.8")

IP 주소 대신 IQN 이름(네트워크 내에서 고유한 iSCSI 장치 식별자)을 사용할 수도 있습니다.

New-IscsiServerTarget -TargetName iscsiTarget33 -InitiatorIds "IQN:1991-05.com.microsoft:win2019test.ddd.com"

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

설정이 완료되면 아래 명령으로 결과를 확인하는 것이 좋습니다.

Get-IscsiServerTarget | fl TargetName, LunMappings

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

Get-IscsiTarget cmdlet으로 전체 타겟 이름을 조회한 후, 해당 타겟에 연결할 수 있습니다.

Connect-IscsiTarget -NodeAddress iqn.1991-05.com.microsoft:win2019test-iscsitarget33-target

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

Windows Server에 iSCSI 이니시에이터 설치 및 구성하기

다음 단계는 두 번째 서버(이니시에이터)에서 앞서 생성한 가상 iSCSI 디스크에 연결하는 것입니다. 제어판을 열어 iSCSI 이니시에이터를 실행하거나, iscsicpl.exe 명령을 실행합니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

서비스 관리 콘솔(services.msc)에서 Microsoft iSCSI Initiator Service의 시작 유형을 자동으로 설정하거나, 아래 명령을 사용합니다.

Set-Service -Name MSiSCSI -StartupType Automatic

타겟 포털 검색 및 연결

검색(Discovery) 탭에서 포털 검색을 클릭하고 첫 번째 서버(iSCSI 타겟)의 IP 주소를 입력합니다. 스토리지 트래픽을 특정 네트워크 인터페이스로 라우팅하려면 고급을 클릭한 후 드롭다운 목록의 기본값을 다음과 같이 변경합니다.

  • 로컬 어댑터 → Microsoft iSCSI Initiator
  • 이니시에이터 IP → 172.17.244.8

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

참고: iSCSI 스토리지에 연결하려면 Windows 방화벽에서 TCP 포트 8603260을 열어 두어야 합니다.

이후 대상(Targets) 탭으로 이동하면 새로운 연결이 표시됩니다. 연결 → 고급을 클릭하고, 드롭다운 목록에서 원하는 값을 선택한 뒤 CHAP 로그온 사용에 체크하고 사용자 이름과 12자 암호를 입력합니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

디스크 초기화 및 포맷

연결된 iSCSI 디스크는 초기에 오프라인 상태이므로 초기화가 필요합니다. 디스크 관리 콘솔에서 새 디스크를 마우스 오른쪽 버튼으로 클릭한 후 온라인디스크 초기화를 차례로 선택합니다. 이어서 새 디스크에 하나 이상의 파티션을 생성하고 드라이브 문자와 레이블을 할당한 뒤, 볼륨을 NTFS로 포맷합니다.

새 디스크를 빠르게 초기화하고 포맷하려면 다음 PowerShell 한 줄 명령을 활용할 수 있습니다.

Get-Disk |Where-Object PartitionStyle -eq 'RAW' |Initialize-Disk -PartitionStyle MBR -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume -FileSystem NTFS -Confirm:$false

주의: iSCSI 디스크는 ReFS 파일 시스템을 지원하지 않습니다.

이제 iSCSI를 통해 연결된 가상 디스크를 다른 서버에서 일반 로컬 드라이브처럼 자유롭게 사용할 수 있습니다.

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

이러한 가상 iSCSI 디스크는 Windows Server에서 메모리 기반의 가상 RAM 드라이브를 구성하는 용도로도 활용할 수 있습니다.

PowerShell로 iSCSI 이니시에이터 연결하기

이니시에이터 호스트에서도 PowerShell을 사용해 iSCSI 디스크에 연결할 수 있습니다. 먼저 Get-iSCSITarget cmdlet으로 타겟 IQN을 조회합니다.

그다음 아래 명령으로 iSCSI 타겟에 연결합니다(IQN 입력 필요).

Connect-IscsiTarget –IsPersistent $False

Windows Server에서 iSCSI 디스크 구성 및 연결하는 방법 완벽 가이드

추가로 CHAP 인증을 사용하는 경우, 아래 명령으로 인증 자격 증명을 함께 전달합니다.

Get-iScsiTarget | Connect-iScsitarget –AuthenticationType ONEWAYCHAP –ChapUserName <username> -ChapSecret <secret>

고가용성 및 부하 분산 팁: iSCSI 디스크에 고가용성과 부하 분산을 제공하려면 중복된 네트워크 구성 요소(네트워크 어댑터, 네트워크 스위치 등)를 여러 개 구성하고 MPIO(Multipath I/O) 모듈을 함께 사용하는 것이 좋습니다.