10.4. iSCSI 대상 구성
스토리지 관리자는 gwcli
명령줄 유틸리티를 사용하여 타겟, LUN 및 클라이언트를 구성할 수 있습니다. iSCSI 타겟의 성능을 최적화하고 gwcli reconfigure
하위 명령을 사용할 수도 있습니다.
Red Hat은 gwcli
와 같은 Ceph iSCSI 게이트웨이 툴에서 내보낸 Ceph 블록 장치 이미지 관리를 지원하지 않습니다. 또한 rbd
명령을 사용하여 Ceph iSCSI 게이트웨이에서 내보낸 RBD 이미지의 이름을 바꾸거나 제거하면 스토리지 클러스터가 불안정해질 수 있습니다.
iSCSI 게이트웨이 구성에서 RBD 이미지를 제거하기 전에 운영 체제에서 스토리지 장치를 제거하기 위한 표준 절차를 따르십시오. 자세한 내용은 Red Hat Enterprise Linux 7용 스토리지 관리 가이드 의 스토리지 장치 제거 장 또는 Red Hat Enterprise Linux 8용 시스템 설계 가이드 를 참조하십시오.
10.4.1. 사전 요구 사항
- Ceph iSCSI 게이트웨이 소프트웨어 설치.
10.4.2. 명령줄 인터페이스를 사용하여 iSCSI 대상 구성
Ceph iSCSI 게이트웨이는 iSCSI 대상 노드이자 Ceph 클라이언트 노드이기도 합니다. 독립 실행형 노드에서 Ceph iSCSI 게이트웨이를 구성하거나 Ceph OSD(오브젝트 스토리지 장치) 노드와 함께 배치합니다.
이 문서 또는 Red Hat 지원 센터에 명시되어 있지 않는 한 gwcli reconfigure
하위 명령을 사용하여 다른 옵션을 조정하지 마십시오.
사전 요구 사항
- Ceph iSCSI 게이트웨이 소프트웨어 설치.
절차
호스트에서 실행 중인 iSCSI 컨테이너의 정보를 검색합니다.
예제
[root@iscsigw ~]# podman ps [root@iscsigw ~]# podman exec -it 4b5ffb814409 /bin/bash
iSCSI 게이트웨이 명령줄 인터페이스를 시작합니다.
[root@iscsigw ~]# gwcli
iscsi-targets
디렉터리로 이동합니다.예제
/>cd /iscsi-targets
IPv4 또는 IPv6 주소를 사용하여 iSCSI 게이트웨이를 생성합니다.
구문
/>iscsi-targets create iqn.2003-01.com.redhat.iscsi-gw:_TARGET_NAME_ > goto gateways > create ISCSI_GW_NAME IP_ADDR_OF_GW > create ISCSI_GW_NAME IP_ADDR_OF_GW
예제
/>iscsi-targets create iqn.2003-01.com.redhat.iscsi-gw:ceph-igw > goto gateways > create ceph-gw-1 10.172.19.21 > create ceph-gw-2 10.172.19.22
Ceph 블록 장치를 추가합니다.
구문
> cd /disks />disks/ create POOL_NAME image=IMAGE_NAME size=IMAGE_SIZE_m|g|t
예제
> cd /disks />disks/ create rbd image=disk_1 size=50g
참고풀 또는 이미지 이름에 마침표(
.
)를 사용하지 마십시오.클라이언트를 생성합니다.
구문
> goto hosts > create iqn.1994-05.com.redhat:_client_name_ > auth username=USER_NAME password=PASSWORD
예제
> goto hosts > create iqn.1994-05.com.redhat:rh7-client > auth username=iscsiuser1 password=temp12345678
중요Red Hat은 클라이언트 혼합을 지원하지 않으며 일부 CHAP가 비활성화되어 있습니다. 모든 클라이언트는 CHAP를 활성화하거나 CHAP를 비활성화해야 합니다. 기본 동작은 이니시에이터 이름으로만 이니시에이터를 인증하는 것입니다.
이니시에이터가 대상에 로그인하지 못하면 일부 이니시에이터에 대해 CHAP 인증이 올바르게 구성되지 않을 수 있습니다. 예를 들면 다음과 같습니다.
o- hosts ................................ [Hosts: 2: Auth: MISCONFIG]
hosts
수준에서 다음 명령을 사용하여 모든 CHAP 인증을 재설정합니다./> goto hosts /iscsi-target...csi-igw/hosts> auth nochap ok ok /iscsi-target...csi-igw/hosts> ls o- hosts ................................ [Hosts: 2: Auth: None] o- iqn.2005-03.com.ceph:esx ........... [Auth: None, Disks: 4(310G)] o- iqn.1994-05.com.redhat:rh7-client .. [Auth: None, Disks: 0(0.00Y)]
클라이언트에 디스크를 추가합니다.
구문
/>iscsi-target..eph-igw/hosts > cd iqn.1994-05.com.redhat:_CLIENT_NAME_ > disk add POOL_NAME/IMAGE_NAME
예제
/>iscsi-target..eph-igw/hosts > cd iqn.1994-05.com.redhat:rh7-client > disk add rbd/disk_1
Ceph ISCSI 게이트웨이가 작동하는지 확인합니다.
/> goto gateways /iscsi-target...-igw/gateways> ls o- gateways ............................ [Up: 2/2, Portals: 2] o- ceph-gw-1 ........................ [ 10.172.19.21 (UP)] o- ceph-gw-2 ........................ [ 10.172.19.22 (UP)]
상태가
UNKNOWN
이면 네트워크 문제 및 잘못된 구성이 있는지 확인합니다. 방화벽을 사용하는 경우 적절한 TCP 포트가 열려 있는지 확인합니다. iSCSI 게이트웨이가trusted_ip_list
옵션에 나열되는지 확인합니다.rbd-target-api
서비스가 iSCSI 게이트웨이 노드에서 실행 중인지 확인합니다.선택적으로
max_data_area_mb
옵션을 재구성하십시오.구문
/>disks/ reconfigure POOL_NAME/IMAGE_NAME max_data_area_mb NEW_BUFFER_SIZE
예제
/>disks/ reconfigure rbd/disk_1 max_data_area_mb 64
참고max_data_area_mb
옵션은 각 이미지가 iSCSI 대상과 Ceph 클러스터 간에 SCSI 명령 데이터를 전달하는 데 사용할 수 있는 메가바이트 단위의 메모리 양을 제어합니다. 이 값이 너무 작으면 과도한 대기열을 완전히 재시도하여 성능에 영향을 줄 수 있습니다. 값이 너무 크면 시스템 메모리를 너무 많이 사용하는 하나의 디스크가 생성되어 다른 하위 시스템에 할당 오류가 발생할 수 있습니다.max_data_area_mb
옵션의 기본값은8
입니다.- iSCSI 이니시에이터 구성.
추가 리소스
- 자세한 내용은 iSCSI 게이트웨이 설치를 참조하십시오.
- 자세한 내용은 iSCSI 이니시에이터 구성 섹션을 참조하십시오.
10.4.3. iSCSI 대상의 성능 최적화
iSCSI 타겟에서 네트워크를 통해 데이터를 전송하는 방법을 제어하는 여러 설정이 있습니다. 이러한 설정을 사용하여 iSCSI 게이트웨이의 성능을 최적화할 수 있습니다.
Red Hat 지원 부서에 지시하거나 이 문서에 명시된 대로만 설정을 변경합니다.
gwcli reconfigure
하위 명령은 iSCSI 게이트웨이의 성능을 최적화하는 데 사용되는 설정을 제어합니다.
iSCSI 대상의 성능에 영향을 주는 설정
max_data_area_mb
- 설명
- 커널 데이터 링 버퍼 크기(MB)입니다.
- 유형
- 정수
- Default
-
8
cmdsn_depth
- 설명
- 최대 I/O를 제어하는 큐의 깊이를 나타냅니다.
- 유형
- 정수
- Default
-
128
immediate_data
- 설명
-
이니시에이터에서 새 세션을 설정할 때마다 즉시 데이터를 전송하도록 타겟에서 권한을 요청하는지 나타냅니다. 이 값이
Yes
이면 이니시에이터에서 새 세션을 설정할 때마다 즉각적인 데이터를 전송하도록 타겟의 권한을 요청합니다. - 유형
- 부울
- Default
-
있음
initial_r2t
- 설명
-
새 세션을 설정할 때마다 HBA(호스트 버스 어댑터) 이니시에이터가 타겟에서 권한을 요청하여 원하지 않는 SCSI 데이터를 전송할지 여부를 나타냅니다. 이 멤버가
Yes
이면 HBA 이니시에이터가 새 세션을 설정할 때마다 의도하지 않은 SCSI 데이터를 전송하도록 타겟에서 권한을 요청합니다. - 유형
- 부울
- Default
-
있음
max_outstanding_r2t
- 설명
- 작업을 시작하는 첫 번째 R2T를 제외하고 각 작업에 대한 R2T(전송 준비) 요청의 최대 수입니다.
- 유형
- 정수
- Default
-
1
first_burst_length
- 설명
- 단일 SCSI 명령을 실행하는 동안 iSCSI 이니시에이터에서 타겟으로 보낼 수 있는 원하지 않는 최대 데이터 양입니다.
- 유형
- 바이트 단위의 정수
- Default
-
262144
max_burst_length
- 설명
- 입력 PDU 시퀀스 또는 요청된 출력 PDU 시퀀스의 최대 SCSI 데이터 페이로드입니다.
- 유형
- 바이트 단위의 정수
- Default
-
524288
max_recv_data_segment_length
- 설명
- 이니시에이터가 타겟의 iSCSI PDU에서 수신할 수 있는 최대 데이터 바이트 수입니다.
- 유형
- 바이트 단위의 정수
- Default
-
262144
max_xmit_data_segment_length
- 설명
- 이니시에이터가 iSCSI PDU에서 대상에 전송하는 최대 데이터 바이트 수입니다.
- 유형
- 바이트 단위의 정수
- Default
-
0
추가 리소스
-
gwcli 재구성
을 사용하여 조정하는 방법을 보여주는 예제를 포함하여max_data_area_mb
에 대한 정보는 명령줄 인터페이스를 사용하여 iSCSI 대상 구성 섹션에 있습니다.
10.4.4. 명령줄 인터페이스를 사용하여 iSCSI 호스트 그룹 구성
Ceph iSCSI 게이트웨이는 동일한 디스크 구성을 공유하는 여러 서버를 관리하도록 호스트 그룹을 구성할 수 있습니다. iSCSI 호스트 그룹은 그룹의 각 호스트에서 액세스할 수 있는 호스트와 디스크의 논리적 그룹을 생성합니다.
여러 호스트에 디스크 장치를 공유하려면 클러스터를 인식하는 파일 시스템을 사용해야 합니다.
사전 요구 사항
- Ceph iSCSI 게이트웨이 소프트웨어 설치.
- Ceph iSCSI 게이트웨이 노드에 대한 루트 수준 액세스.
절차
호스트에서 실행 중인 iSCSI 컨테이너의 정보를 검색합니다.
예제
[root@iscsigw ~] podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4b5ffb814409 registry.redhat.io/rhceph-alpha/rhceph-5-rhel8:latest 2 hours ago Up 2 hours ago ceph-f838eb7a-597c-11eb-b0a9-525400e2439c-iscsi.iscsi.cephLab2-node-01.anaahg
iSCSI 컨테이너 ID를 사용하여 컨테이너에 들어갑니다.
예제
[root@iscsigw ~]# podman exec -it 4b5ffb814409 /bin/bash
gwcli
명령을 실행합니다.[ceph: root@iscsigw /]# gwcli
새 호스트 그룹을 생성합니다.
구문
cd iscsi-targets/ cd IQN/host-groups create group_name=GROUP_NAME
예제
/> cd iscsi-targets/ /iscsi-targets> cd iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/host-groups/ /iscsi-target.../host-groups> create group_name=igw_grp01
호스트 그룹에 호스트를 추가합니다.
중요호스트 그룹 otheriwse에 호스트를 추가하기 전에 호스트에 추가된 모든 디스크를 제거했는지 확인합니다. 호스트를 호스트 그룹에 추가할 수 없습니다.
구문
cd GROUP_NAME host add client_iqn=CLIENT_IQN
예제
> cd igw_grp01 /iscsi-target.../host-groups/igw_grp01> host add client_iqn=iqn.1994-05.com.redhat:rh8-client
이 단계를 반복하여 그룹에 호스트를 추가합니다.
호스트 그룹에 디스크를 추가합니다.
구문
cd /disks/ /disks> create pool=POOL image=IMAGE_NAME size=SIZE cd /IQN/host-groups/GROUP_NAME disk add POOL/IMAGE_NAME
예제
> cd /disks/ /disks> create pool=rbd image=rbdimage size=1G /> cd iscsi-targets/iqn.2003-01.com.redhat.iscsi-gw:ceph-igw/host-groups/igw_grp01/ /iscsi-target...s/igw_grp01> disk add rbd/rbdimage
이 단계를 반복하여 그룹에 디스크를 추가합니다.
10.4.5. 추가 리소스
- Red Hat Ceph Storage 대시보드를 사용하여 iSCSI 대상을 구성하는 방법에 대한 자세한 내용은 Red Hat Ceph Storage 대시보드 가이드의 iSCSI 대상 만들기 섹션을 참조하십시오.