내 CentOS VM에서 연결이 종료되고 있습니다. 문제를 해결하는 가장 좋은 방법은 무엇입니까?

내 CentOS VM에서 연결이 종료되고 있습니다. 문제를 해결하는 가장 좋은 방법은 무엇입니까?

3개의 VM(CentOS6에 1개의 애플리케이션 서버, CentOS7에 2개의 데이터베이스 서버)이 설정되어 있습니다. 지난 1~2주 동안 데이터베이스 서버에 연결할 때(그리고 클러스터에 있는 두 서버 사이에) 시간 초과 문제가 발생했습니다.

데이터베이스 공급자(Couchbase)는 로그에서 연결이 강제로 종료되었음을 확인할 수 있습니다.

WARN com.couchbase.endpoint - [com.couchbase.endpoint][UnexpectedEndpointDisconnectedEvent] The remote side disconnected the endpoint unexpectedly

또한 로그에는 다음과 같이 패키지가 삭제되었음을 표시합니다.

[warn] Interface ‘ens32’ (removedip) failures: RX:2863 / TX:0 - Details:
- RX packets:308,593,167 errors:0
dropped:2,863 overruns:0 frame:0

VM은 VMware ESXi(버전 6.5)인 동일한 호스트에서 호스팅됩니다. 그래서 그들은~해야 한다서로 좋은 관계를 맺을 수 있다.

그리고 지난 몇 주 동안 어떤 변화가 있었나요? VM OS 및 데이터베이스 서버 버전(6.6.0에서 7.0.0으로)에 대한 보안 업데이트입니다. 데이터베이스 업그레이드해서는 안 된다네트워크에서 무엇이든 변경할 수 있지만 분명히 이것이 제가 처음 데이터베이스 공급자에게 연락한 이유입니다...

범인을 찾는 어떤 아이디어라도 높이 평가됩니다 :-)

편집하다:

Camerons의 제안에 따라 저는 짧은 네트워크 추적을 실행하고 이를 로컬 컴퓨터의 Wireshark에 로드했습니다. 그런 다음 "전문가 정보"를 열고 다음을 얻었습니다. Wireshark - 전문가 정보 애플리케이션 서버 앞에 Nginx 프록시 서버가 있다고 말하고 싶습니다. SSL을 처리하고 앱을 실행하기 전에 "해제"합니다. 섬기는 사람. 정보만 보면 두 개의 "빨간색" 블록이 앱이 아닌 외부에서 들어오는 요청과 관련이 있을 것으로 예상됩니다. 서버에서 데이터베이스 서버로.

하지만 결과에서 무엇을 찾아야 할지 잘 모르겠습니다. - 그리고 조금 더 운영해야 할 것 같아요 - 하지만 외부로부터의 정보 없이는 가능할까요?

편집 2

앉아서 보는 동안 실제로 문제가 발생했습니다... - 그래서 빨리 tcpdump를 다시 시작했습니다. 따라서 결과에는 근본 원인이 포함되지 않을 수 있지만 첫 번째 결과보다 관련성이 더 높아야 합니다. Wireshark - 전문가 정보(2) 제가 확장한 블록은 데이터베이스 서버 중 하나와의 통신과 관련된 것 같습니다.... :-)

하지만 이러한 결과는 무엇을 의미하며 원인을 찾는 데 더 가까워지려면 어떻게 해야 합니까?

답변1

서버 결함에 오신 것을 환영합니다.

나이를 감안할 때; CentOS 6은 이제 지원이 중단되므로 SSL/TLS 비호환성 문제를 겪고 있을 가능성이 매우 높습니다. 물론 당신이 그것을 통해 연결하고 있다고 가정합니다. SSL2 등이 기본적으로 점진적으로 비활성화됨에 따라 RHEL6을 사용하는 동안 우리는 이러한 이벤트를 많이 경험했습니다. 다양한 Java 포인트 버전과 마찬가지로(1.7 시리즈의 일부 포인트 릴리스는 특히 까다롭습니다)

ESXi에서 CentOS 워크로드를 실행할 때 발생할 수 있는 또 다른 이유는 엔트로피가 부족하여 실행될 수 있기 때문입니다. 이로 인해 차단 동작이 발생하여 시간 초과 및 클러스터 문제가 발생하여 연결이 중단될 수 있습니다. Java 8 내에서는 Java가 특히 이에 취약했습니다. 시간이 지남에 따라 /proc/sys/kernel/random/entropy_avail을 살펴보면 이것이 문제인지 판단할 수 있습니다. 128 이하로 떨어지고 다시 돌아오지 않으면 엔트로피 기아 상태입니다. 키보드-마우스 활동이 없는 VM에서는 일반적입니다. 이 경우 엔트로피 수집 데몬을 실행해 볼 수 있습니다.

그런데, 나는 그 로그에서 [다른 것]이 적극적으로 연결을 강제로 닫고 있다는 결론을 내리지 않을 것입니다. 단지 한 당사자가 예상하지 못한 시간에 연결이 종료된 것일 뿐입니다. 이는 시간 초과, 예외, 프로세스 충돌 등으로 인해 발생할 수 있습니다.

데이터베이스 서버가 업그레이드됐다고 하더군요.. CentOS 6에서 OS를 업그레이드한 건가요? 애플리케이션도 업그레이드되었습니까, 아니면 리프트 앤 시프트되었습니까?

건배, 카메론

관련 정보