네트워크, 하드웨어 및 플랫폼 문제 해결
StorageGRID 네트워크, 하드웨어 및 플랫폼 문제와 관련된 문제의 원인을 파악하는 데 도움이 되는 몇 가지 작업을 수행할 수 있습니다.
"'422:처리할 수 없는 엔티티'" 오류 문제 해결
422:처리할 수 없는 엔터티는 여러 상황에서 발생할 수 있습니다. 오류 메시지를 확인하여 문제의 원인을 파악합니다.
나열된 오류 메시지 중 하나가 표시되면 권장 조치를 취하십시오.
오류 메시지 | 근본 원인 및 수정 조치 |
---|---|
422: Unprocessable Entity Validation failed. Please check the values you entered for errors. Test connection failed. Please verify your configuration. Unable to authenticate, please verify your username and password: LDAP Result Code 8 "Strong Auth Required": 00002028: LdapErr: DSID-0C090256, comment: The server requires binds to turn on integrity checking if SSL\TLS are not already active on the connection, data 0, v3839 |
이 메시지는 Windows AD(Active Directory)를 사용하여 ID 페더레이션을 구성할 때 TLS(Transport Layer Security)에 대해 TLS * 사용 안 함 옵션을 선택한 경우에 발생할 수 있습니다. LDAP 서명을 적용하는 AD 서버에서는 * TLS 사용 안 함 * 옵션을 사용할 수 없습니다. STARTTLS* 사용 옵션 또는 TLS에 대한 * LDAPS* 사용 옵션을 선택해야 합니다. |
422: Unprocessable Entity Validation failed. Please check the values you entered for errors. Test connection failed. Please verify your configuration.Unable to begin TLS, verify your certificate and TLS configuration: LDAP Result Code 200 "Network Error": TLS handshake failed (EOF) |
이 메시지는 지원되지 않는 암호화를 사용하여 StorageGRID에서 페더레이션 또는 클라우드 스토리지 풀을 식별하는 데 사용되는 외부 시스템으로 TLS(전송 계층 보안) 연결을 하려고 할 때 나타납니다. 외부 시스템에서 제공하는 Cipherer를 확인한다. 시스템은 StorageGRID 관리 지침에 나와 있는 것처럼 발신 TLS 연결에 대해 StorageGRID에서 지원하는 암호 중 하나를 사용해야 합니다. |
Grid Network MTU 불일치 알림 문제 해결
그리드 네트워크 인터페이스(eth0)에 대한 최대 전송 단위(MTU) 설정이 그리드의 노드 간에 상당히 다를 경우 * Grid Network MTU mismatch * 경고가 트리거됩니다.
MTU 설정의 차이는 일부(전기는 아님) eth0 네트워크가 점보 프레임에 맞게 구성되었다는 것을 나타낼 수 있습니다. MTU 크기가 1000보다 크면 네트워크 성능 문제가 발생할 수 있습니다.
-
모든 노드의 eth0에 대한 MTU 설정을 나열합니다.
-
Grid Manager에 제공된 쿼리를 사용합니다.
-
로 이동합니다
primary Admin Node IP address/metrics/graph
다음 쿼리를 입력합니다.node_network_mtu_bytes{interface='eth0'}
-
-
모든 노드의 그리드 네트워크 인터페이스(eth0)와 동일한지 확인하기 위해 필요에 따라 MTU 설정을 수정합니다.
-
어플라이언스 노드의 경우 어플라이언스의 설치 및 유지보수 지침을 참조하십시오.
-
Linux 및 VMware 기반 노드의 경우 다음 명령을 사용합니다.
/usr/sbin/change-mtu.py [-h] [-n node] mtu network [network...]
-
예 *:
change-mtu.py -n node 1500 grid admin
-
참고 *: Linux 기반 노드에서 컨테이너에 있는 네트워크에 대해 원하는 MTU 값이 호스트 인터페이스에 이미 구성된 값을 초과하는 경우, 먼저 원하는 MTU 값을 사용하도록 호스트 인터페이스를 구성한 다음 를 사용해야 합니다
change-mtu.py
컨테이너에서 네트워크의 MTU 값을 변경하는 스크립트입니다.
Linux 또는 VMware 기반 노드에서 MTU를 수정하려면 다음 인수를 사용하십시오.
-
위치 인수 설명 mtu
설정할 MTU입니다. 1280 ~ 9216 범위에 있어야 합니다.
network
MTU를 적용할 네트워크입니다. 다음 네트워크 유형 중 하나 이상을 포함합니다.
-
그리드
-
관리자
-
클라이언트
+
선택적 인수입니다 설명 -h, – help
도움말 메시지를 표시하고 종료합니다.
-n node, --node node
노드. 기본값은 로컬 노드입니다.
-
NRER(Network Receive Error) 알람 문제 해결
네트워크 수신 오류(NRER) 경보는 StorageGRID와 네트워크 하드웨어 간의 연결 문제로 인해 발생할 수 있습니다. 경우에 따라 NRER 오류는 수동 개입 없이 해결할 수 있습니다. 오류가 지워지지 않으면 권장 조치를 취하십시오.
NRER 경보는 StorageGRID에 연결되는 네트워크 하드웨어의 다음과 같은 문제로 인해 발생할 수 있습니다.
-
정방향 오류 수정(FEC)이 필요하며 사용되지 않습니다
-
스위치 포트와 NIC MTU가 일치하지 않습니다
-
높은 링크 오류율
-
NIC 링 버퍼 오버런
-
네트워크 구성 시 NRER 알람의 모든 잠재적 원인에 대한 문제 해결 단계를 따르십시오.
-
FEC 불일치로 인해 오류가 발생한 경우 다음 단계를 수행하십시오.
-
참고 *: 이러한 단계는 StorageGRID 장비의 FEC 불일치로 인한 NRER 오류에만 적용됩니다.
-
StorageGRID 어플라이언스에 연결된 스위치에 있는 포트의 FEC 상태를 확인합니다.
-
제품에서 스위치로 연결되는 케이블의 물리적 무결성을 점검하십시오.
-
NRER 경보를 해결하기 위해 FEC 설정을 변경하려면 먼저 StorageGRID 어플라이언스 설치 프로그램의 링크 구성 페이지에서 어플라이언스가 * AUTO * 모드로 구성되어 있는지 확인하십시오(어플라이언스 설치 및 유지 관리 지침 참조). 그런 다음 스위치 포트의 FEC 설정을 변경합니다. 가능한 경우 StorageGRID 어플라이언스 포트가 FEC 설정을 일치하도록 조정합니다.
(StorageGRID 어플라이언스에서 FEC 설정을 구성할 수 없습니다. 대신 어플라이언스는 연결된 스위치 포트에서 FEC 설정을 검색하고 미러링하려고 합니다. 링크가 25GbE 또는 100GbE의 네트워크 속도로 강제 적용되는 경우 스위치와 NIC가 일반적인 FEC 설정을 협상하지 못할 수 있습니다. 일반 FEC 설정이 없으면 네트워크는 "no-FEC" 모드로 되돌아갑니다. FEC를 사용하지 않으면 전기 노이즈로 인해 발생한 오류가 연결에 더 취약합니다.)
-
-
참고 *: StorageGRID 어플라이언스는 FEC뿐만 아니라 FC(Firecode) 및 RS(Reed Solomon) FEC도 지원합니다.
-
-
스위치 포트 및 NIC MTU 불일치로 인해 오류가 발생한 경우 노드에 구성된 MTU 크기가 스위치 포트의 MTU 설정과 동일한지 확인합니다.
노드에 구성된 MTU 크기가 노드가 연결된 스위치 포트의 설정보다 작을 수 있습니다. StorageGRID 노드가 MTU보다 큰 이더넷 프레임을 수신하는 경우, 이 구성에서 NRER 알람이 보고될 수 있습니다. 이러한 상황이 발생하는 것으로 판단될 경우 전체 MTU 목표 또는 요구 사항에 따라 스위치 포트의 MTU를 StorageGRID 네트워크 인터페이스 MTU와 일치하도록 변경하거나 StorageGRID 네트워크 인터페이스의 MTU를 스위치 포트에 맞게 변경합니다.
최상의 네트워크 성능을 얻으려면 모든 노드를 그리드 네트워크 인터페이스에서 유사한 MTU 값으로 구성해야 합니다. 개별 노드의 그리드 네트워크에 대한 MTU 설정에 상당한 차이가 있을 경우 * Grid Network MTU mismatch * 경고가 트리거됩니다. MTU 값은 모든 네트워크 유형에 대해 같을 필요는 없습니다.
MTU 설정을 변경하려면 어플라이언스의 설치 및 유지보수 설명서를 참조하십시오. -
링크 오류율이 높아 오류가 발생한 경우 다음 단계를 수행하십시오.
-
FEC가 아직 활성화되지 않은 경우 FEC를 활성화합니다.
-
네트워크 케이블 연결 품질이 양호하며 손상되었거나 잘못 연결되지 않았는지 확인합니다.
-
케이블이 문제가 아닌 경우 기술 지원 부서에 문의하십시오.
전기 소음이 많은 환경에서 높은 오류율을 느낄 수 있습니다.
-
-
오류가 NIC 링 버퍼 오버런인 경우 기술 지원 부서에 문의하십시오.
링 버퍼는 StorageGRID 시스템이 과부하되어 적시에 네트워크 이벤트를 처리할 수 없을 때 오버런될 수 있습니다.
-
-
기본 문제를 해결한 후 오류 카운터를 재설정합니다.
-
지원 * > * 도구 * > * 그리드 토폴로지 * 를 선택합니다.
-
site_ * > *GRID node * > * SSM * > * Resources * > * Configuration * > * Main * 을 선택합니다.
-
수신 오류 수 재설정 * 을 선택하고 * 변경 내용 적용 * 을 클릭합니다.
-
시간 동기화 오류 문제 해결
시간 동기화와 관련된 문제가 그리드에 나타날 수 있습니다.
시간 동기화 문제가 발생하면 각각 Stratum 3 이상의 참조를 제공하는 외부 NTP 소스를 4개 이상 지정했으며 모든 외부 NTP 소스가 정상적으로 작동하고 StorageGRID 노드에서 액세스할 수 있는지 확인합니다.
프로덕션 수준 StorageGRID 설치에 외부 NTP 소스를 지정할 때 Windows Server 2016 이전 버전의 Windows에서는 Windows 시간(W32Time) 서비스를 사용하지 마십시오. 이전 버전의 Windows의 시간 서비스는 정확하지 않으며 StorageGRID와 같은 고정밀 환경에서 사용하기 위해 Microsoft에서 지원되지 않습니다. |
Linux: 네트워크 연결 문제
Linux 호스트에서 호스팅되는 StorageGRID 그리드 노드의 네트워크 연결 문제가 발생할 수 있습니다.
MAC 주소 복제
경우에 따라 MAC 주소 클로닝을 사용하여 네트워크 문제를 해결할 수 있습니다. 가상 호스트를 사용하는 경우 노드 구성 파일에서 각 네트워크의 MAC 주소 클로닝 키 값을 "참"으로 설정합니다. 이 설정으로 인해 StorageGRID 컨테이너의 MAC 주소가 호스트의 MAC 주소를 사용하게 됩니다. 노드 구성 파일을 만들려면 해당 플랫폼의 설치 가이드에 있는 지침을 참조하십시오.
Linux 호스트 OS에서 사용할 별도의 가상 네트워크 인터페이스를 생성합니다. Linux 호스트 OS 및 StorageGRID 컨테이너에 동일한 네트워크 인터페이스를 사용하면 하이퍼바이저에서 Promiscuous 모드가 활성화되지 않은 경우 호스트 OS에 연결할 수 없게 될 수 있습니다. |
MAC 클로닝 활성화에 대한 자세한 내용은 해당 플랫폼 설치 안내서의 지침을 참조하십시오.
무차별 모드
MAC 주소 클로닝을 사용하지 않고 모든 인터페이스가 하이퍼바이저에 의해 할당된 것이 아닌 MAC 주소에 대한 데이터를 수신 및 전송하도록 허용하는 경우, 가상 스위치 및 포트 그룹 수준의 보안 속성이 Promiscuous Mode, MAC Address 변경 및 Forged 전송에 대해 * Accept * 로 설정되어 있는지 확인합니다. 가상 스위치에 설정된 값은 포트 그룹 수준의 값으로 재정의할 수 있으므로 두 위치에서 설정이 동일한지 확인합니다.
리눅스: 노드 상태가 ""고아""입니다.
고립된 상태의 Linux 노드는 대개 StorageGRID 서비스나 노드의 컨테이너를 제어하는 StorageGRID 노드 데몬이 예기치 않게 종료되었음을 나타냅니다.
Linux 노드가 분리된 상태에 있다고 보고하는 경우 다음을 수행해야 합니다.
-
로그에서 오류 및 메시지를 확인합니다.
-
노드를 다시 시작하려고 합니다.
-
필요한 경우 Docker 명령을 사용하여 기존 노드 컨테이너를 중지합니다.
-
노드를 다시 시작합니다.
-
서비스 데몬과 분리된 노드에 대한 로그에서 예기치 않은 종료에 대한 명백한 오류 또는 메시지를 확인합니다.
-
호스트에 루트로 로그인하거나 sudo 권한이 있는 계정을 사용합니다.
-
다음 명령을 실행하여 노드를 다시 시작하려고 합니다.
$ sudo storagegrid node start node-name
$ sudo storagegrid node start DC1-S1-172-16-1-172
노드가 분리된 경우 응답은 입니다
Not starting ORPHANED node DC1-S1-172-16-1-172
-
Linux에서 Docker 컨테이너 및 제어 StorageGrid 노드 프로세스를 중지합니다.
sudo docker stop --time secondscontainer-name
용 `seconds`에서 컨테이너가 중지될 때까지 대기할 시간(초)을 입력합니다(일반적으로 15분 이하).
sudo docker stop --time 900 storagegrid-DC1-S1-172-16-1-172
-
노드를 다시 시작합니다.
storagegrid node start node-name
storagegrid node start DC1-S1-172-16-1-172
Linux: IPv6 지원 문제 해결
Linux 호스트에 StorageGRID 노드를 설치한 경우 커널에서 IPv6 지원을 활성화해야 하며, IPv6 주소가 예상대로 노드 컨테이너에 할당되지 않은 것을 확인할 수 있습니다.
Grid Manager의 다음 위치에서 그리드 노드에 할당된 IPv6 주소를 볼 수 있습니다.
-
노드 * 를 선택하고 노드를 선택합니다. 그런 다음 개요 탭에서 * IP 주소 * 옆에 * 더 보기 * 를 클릭합니다.
-
지원 * > * 도구 * > * 그리드 토폴로지 * 를 선택합니다. 그런 다음 *NODE * > * SSM * > * Resources * 를 선택합니다. IPv6 주소가 할당된 경우 * 네트워크 주소 * 섹션의 IPv4 주소 아래에 나열됩니다.
IPv6 주소가 표시되지 않고 노드가 Linux 호스트에 설치된 경우 다음 단계에 따라 커널에서 IPv6 지원을 활성화합니다.
-
호스트에 루트로 로그인하거나 sudo 권한이 있는 계정을 사용합니다.
-
다음 명령을 실행합니다.
sysctl net.ipv6.conf.all.disable_ipv6
root@SG:~ # sysctl net.ipv6.conf.all.disable_ipv6
결과는 0이어야 합니다.
net.ipv6.conf.all.disable_ipv6 = 0
결과가 0이 아닌 경우 운영 체제 설명서를 참조하여 변경합니다 sysctl
설정. 그런 다음 계속하기 전에 값을 0으로 변경합니다. -
StorageGRID 노드 컨테이너 입력:
storagegrid node enter node-name
-
다음 명령을 실행합니다.
sysctl net.ipv6.conf.all.disable_ipv6
root@DC1-S1:~ # sysctl net.ipv6.conf.all.disable_ipv6
결과는 1이어야 합니다.
net.ipv6.conf.all.disable_ipv6 = 1
결과가 1이 아닌 경우 이 절차는 적용되지 않습니다. 기술 지원 부서에 문의하십시오. -
컨테이너를 종료합니다.
exit
root@DC1-S1:~ # exit
-
루트로 다음 파일을 편집합니다.
/var/lib/storagegrid/settings/sysctl.d/net.conf
.sudo vi /var/lib/storagegrid/settings/sysctl.d/net.conf
-
다음 두 줄을 찾아 주석 태그를 제거합니다. 그런 다음 파일을 저장하고 닫습니다.
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
-
다음 명령을 실행하여 StorageGRID 컨테이너를 다시 시작합니다.
storagegrid node stop node-name
storagegrid node start node-name