
네 개의 네트워크 인터페이스를 갖춘 FreeNAS 서버가 있습니다. iSCSI 트래픽은 두 개의 인터페이스를 통과하며 각 인터페이스는 서로 다른 서브넷에 하나의 IP 주소를 갖습니다. 예를 들면:
igb0: 192.168.10.1/24 igb1: 192.168.11.1/24
iSCSI 트래픽 전용 인터페이스가 하나만 있는 3개의 XenServer 호스트가 있습니다. 따라서 회로도에는 스토리지에 2개의 인터페이스가 있고 호스트에 총 3개의 인터페이스가 있습니다.
내 계획은 호스트당 1Gbit로 제한되어 호스트와 최대 2Gbit 연결을 달성하는 것이었습니다.
문제는 다른 서브넷에서 시작됩니다. XenServer 호스트의 동일한 네트워크 인터페이스에 두 개의 서로 다른 IP 주소를 배치하는 방법을 모르겠습니다. XenCenter에서는 이 작업을 수행할 수 없습니다. 또 다른 아이디어는 이러한 종류의 트래픽을 다양한 VLAN으로 격리하는 것이었습니다. 괜찮지만 이것도 작동하지 않는 것 같습니다.
편집: 불행하게도 LACP는 예상대로 작동하지 않습니다. FreeNAS 문서에 더 많은 정보가 있습니다. "LACP 및 다른 형태의 링크 집계는 일반적으로 가상화 솔루션에서 잘 작동하지 않습니다. 가상화된 환경에서는 다음을 생성하여 iSCSI MPIO를 사용하는 것을 고려하십시오. iSCSI 포털을 사용하면 iSCSI 이니시에이터가 대상에 대한 여러 링크를 인식하여 이를 활용하여 대역폭이나 중복성을 높일 수 있습니다. 이 방법에는 ESXi에서 MPIO를 구성하기 위한 지침이 포함되어 있습니다.
그래서 스토리지에 2Gbit/s를 달성하기 위해 VLAN 및 해킹을 사용하여 MPIO를 설정하려고 합니다.
답변1
각 호스트에 iSCSI용 인터페이스가 하나만 있는 경우 여기에 설명된 설정으로는 MPIO를 사용할 수 없습니다. 그러나 LACP(Link Aggregation)를 사용하도록 FreeNAS 시스템을 구성할 수 있어야 두 호스트를 각각 1Gb(FreeNAS에서 총 2Gb)로 동시에 서비스할 수 있습니다. MPIO 대신 LACP를 살펴보세요(또는 각 호스트에 대해 두 번째 NIC를 얻습니다).
편집: LACP가 일반적으로 가상화에 권장되지 않는 이유는 사람들이 기대하는 대로 작동하지 않기 때문입니다. 그들은 일반적으로 호스트에 2개의 NIC를 배치하고 스토리지에 2개의 NIC를 배치함으로써 단일 VM(또는 해당 호스트의 여러 VM에서도)의 스토리지에 대한 대역폭을 두 배로 늘릴 수 있다고 기대합니다. 그런 식으로 작동하지 않지만 MPIO는 올바르게 구성되면 작동합니다.하지만, 이것은 분명히 당신이 하려는 일이 아닙니다. 원래 질문을 올바르게 읽으면 스토리지 상자에 2개의 1Gb NIC가 있고 각 XenServer 호스트에 1개의 1Gb NIC가 있습니다(스토리지의 경우 적어도 당분간 다른 네트워크 연결은 무시하겠습니다). 당신이 원하는 것은 각 호스트가 동시에 스토리지 박스에 대한 연결을 포화시킬 수 있는 것입니다.여기서는 스토리지 박스의 LACP가 딱 맞는 솔루션입니다.(XenServer 호스트에는 각각 하나의 NIC만 있으므로 LACP가 필요하지 않습니다.)
MPIO를 사용하여 이 작업을 수행하려는 의지가 있다면 수행할 수 있지만 끔찍한 더티 해킹이 될 것입니다. 기본적으로 더미 NIC를 사용하여 각 호스트를 구성해야 합니다.다른스토리지 네트워크를 선택한 다음 MPIO 구성에서 두 개의 NIC를 사용하도록 XenServer에 지시합니다. XenCenter에서는 그런 식으로 구성할 수 없으므로 명령줄에서 해킹해야 합니다. 그 방법을 알려주지는 않겠습니다.잘못된해야 할 일. 구성을 변경하면 중단될 가능성이 높으며 XenServer를 업그레이드하면 거의 확실하게 중단됩니다.
커뮤니티를 신뢰하십시오. 스토리지 상자에만 LACP를 구성하면 여기서 원하는 것을 얻을 수 있습니다. 마음을 정하기 위해 유사한 구성이 필요한 경우 FreeNAS 상자에 2Gb NIC를 설치하는 것으로 생각하십시오. (물론, 다른 해결책은 FreeNAS 상자에 10Gb NIC를 추가하고 이를 호스트가 연결된 스위치의 10Gb 포트에 연결하는 것입니다. 하지만 귀하의 스위치는 그렇지 않은 것 같습니다. 10Gb 포트가 있습니다.)
답변2
NFS에는 LACP를 사용합니다. iSCSI에는 MPIO를 사용합니다.
하이퍼바이저 호스트에 스토리지 인터페이스 중복성이 없는 경우그건어디에 주의를 집중해야 하는지; 해킹도 없고 헛소리도 없습니다. 호스트에 추가 NIC를 추가하고 MPIO를 구성합니다.
답변3
LACP
링크 결합은 IP 계층(L3)이 아닌 이더넷 계층(L2)에서 발생합니다. LACP 프로토콜에는 L2 해시, L3 해시 또는 심지어 L4 해시(예: TCP/UDP 포트 번호 조사)일 수 있는 해시가 포함되며 이 해시(설계상)는 단일 물리적 인터페이스 이상에 걸쳐 단일 세션이 발생하는 것을 방지합니다. 따라서 LACP 전체에서 하나의 대상에 대한 하나의 단일 iSCSI 세션은 기껏해야 하나의 인터페이스 속도만 제공합니다.
MPIO
주어진 IP 주소에서 단일 개시자와 단일 대상 간에 여러 세션을 여는 것이 가능하며, 이것이 LACP 본드 연결을 통해 이동하는 경우 그렇게 할 이유가 있습니다. 안타깝게도 개시자와 대상의 모든 조합이 이를 지원하는 것은 아닙니다. Citrix XenServer 6.2(고급 버전이 아닌 무료로 다운로드할 수 있는 설치 프로그램)로 테스트한 결과 다중 경로 IO가 활성화되면 찾을 수 있는 각 IP 주소에 대해 정확히 하나의 세션이 열리는 것으로 나타났습니다. 따라서 여러 경로를 원하는 경우 여러 인터페이스에 여러 IP 주소를 설정해야 합니다.
최신 버전의 Linux open-iscsi에는 추가 기능이 있으므로 Xenserver도 어느 단계에서는 이 기능도 갖게 될 것이라고 추측합니다.