ISCSI Diskless System – Preview

iscsi_메인배너

 

안녕하세요. 이번시간부터 ISCSI를 이용한 디스크리스 시스템을 구축해보도록 해보겠습니다.

디스크리스 시스템이 전반적으로 설정하기가 쉽지 않으니 천천히 따라오시면 좋겠습니다.

 

개념

 

 

제가 기본적으로 설정한 환경은 192.168.0.0/24 대역에서 공유기(라우터)가 DHCP 서버를 뿌려주고 있습니다.

그리고 그 하단에 192.168.0.104인 윈도우 서버 2012와 192.168.0.70, 192.168.0.71의 클라이언트 PC들이 물려있습니다.

 

제가 다루는 강좌의 원리를 간단히 설명하자면,

공유기가 뿌려주는 DHCP 서버 외에 윈도우 서버 2012 자체의 DHCP 서버를 추가로 만들어서

ISCSI diskless 부팅이 가능하도록 만들어주는 것입니다.

 

저는 기본적으로 윈도우서버 2012가 ESXi 서버 내에 설치가 되어 있으므로 각종 추가적인 설정(티밍 등)은 ESXi를 기반으로 진행합니다.

윈도우 2012가 기본인 분들은 그쪽에서 티밍 설정 등을 하셔야 합니다.

또한 클라이언트 컴퓨터에는 ISCSI로 부팅할 수 있도록 도와주는 IPXE라는 USB 또는 CD로 부팅이 되어야됩니다.

(몇 일 사용하다보니 윈도우 서버에서 DHCP서버를 또 설정할 경우 공유기의 DHCP 서버는 죽는 것 같습니다. 참고하시면 좋겠습니다.)

 

 

수 구축 준비물

 

1. NIC가 여러 개 설치 되어있고 디스크 속도가 빠른 윈도우 서버 2012, R2 서버

=> NIC가 여러 개 있어야 트래픽이 분산이 되며, 디스크 속도가 느리면 ISCSI Diskless를 꾸미는 의미가 없습니다.

티밍된 것

ESXi 내에서 물리적 어댑터 4개를 연결함으로서 4Gbps로 대역폭을 늘려서 필자는 사용중입니다.

 

2. 비교적 최근에 출시 된 2GB 이상의 USB 메모리 또는 CD (USB 권장)

=> 오래 된 USB의 경우 메인보드에 꽂았음에도 IPXE 부팅이 안되는 경우가 발생됩니다.

 

3. HDD 또는 SSD에 OS가 탑재 된 클라이언트

=> 디스크리스 시스템 구축 후에도 클라이언트에 있었던 HDD나 SSD는 포맷하거나 다른 곳에 쓰지말고 보관하세요.

 

4. 리눅스 기반의 PC

=> USB에 IPXE를 다운로드 할 경우 반드시 필요합니다.

 

 

 

# IPXE 부팅 USB 또는 CD 만들기

 

부팅 USB 또는 CD가 있어야 IPXE로 부팅을 하여 서버의 ISCSI 디스크의 정보를 불러와서 부팅이 가능하게 됩니다.

 

1) 부팅 USB 만들기

 

usb 디스크 만들기

 

USB를 리눅스 머신에 꽂습니다.

 

git clone git://git.ipxe.org/ipxe.git

cd ipxe/src

make

make bin/ipxe.usb

dd if=bin/ipxe.usb of=/dev/usb 위치

 

다음의 명령어를 터미널에서 입력하면 끝입니다.

usb 위치는 sda, sdb, sdc처럼 usb를 꽂으면 임의로 나오는 위치입니다.

위치를 알려면 리눅스의 디스크 관리를 들어가서 디스크 정보를 보시면 됩니다.

 

 

2) 부팅 CD 만들기

 

부팅 CD를 만들 때는 리눅스가 필요없습니다.

http://boot.ipxe.org/ipxe.iso 에서 iso 파일을 다운 받은 후 CD에 구워주면 됩니다.

 

 

이제 대강 준비는 끝났습니다.

다음에는 서버에서의 설정과 클라이언트에서의 설정을 해보도록 하겠습니다.

 

 

<ISCSI DIskless 시스템 만들기>

1. 서버 및 클라이언트 설정

2. 서버 및 클라이언트 설정 2

 

15 Replies to “ISCSI Diskless System – Preview

  1. 공유기에서 망내에 다른 DHCP가 있을 때 기능정지 설정을 끄시고, 공유기와 DHCP서버의 할당 대역을 나누어 주시면 둘 다 운용 가능합니다.

    1. dlink 공유기 사용중인데 dhcp를 키고 끄는 옵션만 있지 말씀하신 옵션은 없네요..

      말씀하신 부분은 공유기 제조사의 펌웨어에 따라 상이할 것으로 보입니다.
      답변 감사합니다.

      1. 작성하신 글을 보면, 서버와 공유기 모두에서 dhcp를 enable로 해두신 상태라서요. 서로 다른 대역의 ip를 관리하게 나눠주면 문제가 없다는 말씀입니다. 단일 공유기에서 굳이 나누는 기능을 제공하는 경우는 없을 것 같습니다. ^^

        1. 공유기는 ~50 까지 나눠주고
          서버는 110~254까지 나눠주게 했는데도

          우선적으로 서버에 할당이 되버립니다.

          1. 죽진 않았어요.
            서버 dhcp를 키기 전 공유기 dhcp 대역을 받은 클라이언트는 죽지 않고 계속 해당 대역 주소를 받고 있으니깐요.

            서버에 “우선적으로” 할당이 됩니다.
            서버 dhcp를 끄면 공유기 dhcp 대역이 먼저 할당되겠죠,,,

  2. 올려주신 대로 다 작업하고 부팅중에 블루스크린을 목도하고 있습니다. ㅎㅎ
    아직 네트워크 구축의 문제로 속도가 느리긴 하지만 블루스크린이라니..
    어쨌든 올려주신 글로 많이 배우고 갑니다. 감사합니다..

    1. 그게 대부분은 iscsi 볼륨에 제대로 권한이 안 생겨서 그러더라구요.
      서버 관리자 들어가셔서 혹시 오류가 떴는지 확인해보세요.

      대개 특정 iscsi 볼륨에 권한이 없는 클라이언트가 접속하려고 했다 하는 문구가 보입니다.

      1. 권한 관련 내용은 못 찾겠습니다.
        iqn을 잘못 입력(클라이언트 것을 서버에… ㅋ)해서 부팅이 안되다가,(이벤트에 잘못된 요청을 거부했다고 하네요)
        서버 iqn으로 수정하고 나서는 부팅 막바지쯤… 블루스크린..이 뜨는데, 이벤트는 없네요.. VSS가 그 관련인지 모르겠습니다만. ㅠㅜ
        윈도우상에서는 정상적으로 포맷후 reflect 까지 했는데 권한 문제라면 어떻게 해결해야 하는 것일까요.

        1. 보통 막바지 블루스크린이 뜰 때
          이벤트에 잘못된 요청을 거부했다고 나옵니다.

          그런데 블루스크린이 뜰 때 시간에 해당 이벤트가 없다면…
          글쎄요… 이상하네요.
          제가 직접 보지 않는 이상 뭐라 말하기 어려울 것 같습니다.

          1. 이벤트 ID : 12292
            심각도 : 오류
            원본: VSS
            내용 : 볼륨 섀도 복사본 서비스 오류: CLSID {463948d2-….생략…..}(으)로 섀도 복사본 공급자 COM 클래스를 만드는 동안 오류가 발생했습니다[0x80070005, 액세스가 거부되었습니다.].

            라고 나오네요.
            권한 오류가 맞는 것 같은데, 해결 방법이 있는 건가요?

  3. 아이쿠.. 해결했습니다.
    윈도우 핫픽스 두 종류가 필수 였네요…
    둘 다 해야 하는지 하나만 해야 하는지는 모르지만,
    아래 두개 fix를 깔고 부팅되었습니다.
    2550978
    976042

댓글 남기기