Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- minikube
- CloudWatch
- AI
- kotlin coroutine
- Java
- Pinpoint
- 공부
- CKA 기출문제
- 정보처리기사실기 기출문제
- IntelliJ
- aws
- 정보처리기사 실기
- CKA
- kotlin
- PETERICA
- 티스토리챌린지
- 기록으로 실력을 쌓자
- mysql 튜닝
- 코틀린 코루틴의 정석
- Linux
- Kubernetes
- MySQL
- 정보처리기사 실기 기출문제
- Spring
- Elasticsearch
- 오블완
- kotlin querydsl
- APM
- kotlin spring
- AWS EKS
Archives
- Today
- Total
피터의 개발이야기
[Elasticsearch] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel 해결 방법 본문
DevOps/Elasticsearch
[Elasticsearch] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel 해결 방법
기록하는 백앤드개발자 2024. 8. 4. 10:10반응형
ㅁ 들어가며
ㅇ [Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기을 하면서 발생한 https 에러를 해결하는 과정을 정리하였다.
ㅇ 이 해결방법은 로컬 개발환경에서 테스트를 위한 해결방법이다. 그래서 운영환경에서는 인증서 설치 과정을 수행해야 한다.
ㅁ 에러 상황
# 통신 수행
$ curl -X GET "localhost:9200/?pretty"
# 에러 내용
received plaintext http traffic on an https channel, closing connection Netty4HttpChannel
# row logs
{"@timestamp":"2024-07-28T21:48:38.081Z", "log.level": "WARN", "message":"received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/172.17.0.5:9200, remoteAddress=/192.168.65.1:41538}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[2ca4c63624e0][transport_worker][T#8]","log.logger":"org.elasticsearch.http.netty4.Netty4HttpServerTransport","elasticsearch.cluster.uuid":"DDQp4X9eR8yEQPDkdORyoA","elasticsearch.node.id":"WPoCqk7RStCRbpVOzaCwaQ","elasticsearch.node.name":"2ca4c63624e0","elasticsearch.cluster.name":"docker-cluster"}
ㅇ https에 대한 보안 설정으로 인해 에러가 발생하였다.
ㅁ 해결방법
# 설정파일 확인
/config/elasticsearch.yml
# 보안 설정 변경
xpack.security.enabled: false
xpack.security.enrollment.enabled: false
xpack.security.http.ssl: enabled: false
xpack.security.transport.ssl: enabled: false
ㅇ elasticsearch의 설정에서 security 설정을 해제하면 된다.
ㅇ 하지만 편집에 문제가 발생했다.
ㅇ Docker 컨테이너에는 VI가 설치되어 있지 않았다.
#로컬로 설정파일 복사
$ docker cp es01:/usr/share/elasticsearch/config/elasticsearch.yml elasticsearch.yml ✔ 8811 07:02:36
Successfully copied 2.56kB to /Users/peterseo/test/es/elasticsearch.yml
# elasticsearch.yml
cluster.name: "docker-cluster"
network.host: 0.0.0.0
#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------
#
# The following settings, TLS certificates, and keys have been automatically
# generated to configure Elasticsearch security features on 26-07-2024 06:09:26
#
# --------------------------------------------------------------------------------
# Enable security features
xpack.security.enabled: true <==== 여기 수정
xpack.security.enrollment.enabled: true <==== 여기 수정
# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
enabled: true <==== 여기 수정
keystore.path: certs/http.p12
# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
enabled: true <==== 여기 수정
verification_mode: certificate
keystore.path: certs/transport.p12
truststore.path: certs/transport.p12
#----------------------- END SECURITY AUTO CONFIGURATION -------------------------
ㅇ 로컬에 복사된 설정파일을 수정하였다.
# 수정된 설정파일을 다시 복사한다.
$ docker cp elasticsearch.yml es01:/usr/share/elasticsearch/config/elasticsearch.yml ✔ 8813 07:06:18
Successfully copied 2.56kB to es01:/usr/share/elasticsearch/config/elasticsearch.yml
# 재기동
$ docker restart es01
es01
ㅇ 다시 컨테이너 안으로 복사를 하고 컨테이너를 재기동하였다.
ㅁ 정상 확인
$ curl -X GET "localhost:9200/?pretty"
{
"name" : "2ca4c63624e0",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "DDQp4X9eR8yEQPDkdORyoA",
"version" : {
"number" : "8.9.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "8aa461beb06aa0417a231c345a1b8c38fb498a0d",
"build_date" : "2023-07-19T14:43:58.555259655Z",
"build_snapshot" : false,
"lucene_version" : "9.7.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}
ㅁ 함께 보면 좋은 사이트
반응형
'DevOps > Elasticsearch' 카테고리의 다른 글
[Elasticsearch] Kibana Query Language 사용법 정리 (0) | 2024.08.06 |
---|---|
[Elasticsearch] Elasticsearch + Kibana 설치하기 with Docker (0) | 2024.08.05 |
[Elasticsearch] Docker로 Elasticsearch 설치 및 테스트하기 (0) | 2024.08.03 |
[Elasticsearch] 클러스터의 높은 메모리 사용률에 대한 원인 분석 방법 정리 (1) | 2024.07.01 |
[Elasticsearch] Data Node 볼륨 병목현상 확인 및 처리 (0) | 2023.01.16 |
Comments