运维.索引引擎ElasticSearch.记录一个小异常:received plaintext http traffic on an https channel

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 运维.索引引擎ElasticSearch.记录一个小异常:received plaintext http traffic on an https channel

1. 日常日志

[2024-05-23T09:45:03,336][WARN ][o.e.h.n.Netty4HttpServerTransport] [DESKTOP-6GQSTBC] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/[0:0:0:0:0:0:0:1]:9200, remoteAddress=/[0:0:0:0:0:0:0:1]:63881}
[2024-05-23T10:06:12,670][WARN ][o.e.h.n.Netty4HttpServerTransport] [DESKTOP-6GQSTBC] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/[0:0:0:0:0:0:0:1]:9200, remoteAddress=/[0:0:0:0:0:0:0:1]:50163}

2. 原因分析

这两条日志的关键信息如下:

  1. 日志级别为WARN,表示有异常情况
  2. 日志来自o.e.h.n.Netty4HttpServerTransport,即ElasticsearchHTTP服务器组件
  3. 日志内容提示"received plaintext http traffic on an https channel",即在HTTPS通道上接收到了明文HTTP流量
  4. Elasticsearch的应对措施是"closing connection",即关闭了这个连接

所以可以判断,Elasticsearch服务器期望客户端使用HTTPS发送请求,但实际收到的是明文HTTP请求,因此拒绝了这些请求。


同时日志中也提到了请求的源地址和目标地址,这里都是[0:0:0:0:0:0:0:1],即IPv6环回地址,相当于IPv4的127.0.0.1,表示请求来自本机。目标端口为9200,即Elasticsearch的默认端口。

3. 如何处理

3.1 方案1:使用HTTPS请求(√)

使用HTTPS协议访问Elasticsearch而不是HTTP

例如你向创建一个名为test_index的索引,之前你PUT访问的是

http://localhost:9200/test_index,现在将设你如将请求的URL改为https://localhost:9200/test_index,并确保Elasticsearch配置了正确的SSL证书。开发环境下可以直接请求。

3.2 方案2:启用HTTP

默认只能用HTTPS。将Elasticsearch配置为允许HTTP明文通信。可以在elasticsearch.yml配置文件中添加以下内容来启用HTTP

http.port: 9200

找到该位置取消注释即可:

3.2 方案3:设置允许HTTP明文通信(×不推荐)

或者,如果你是在本地开发环境中使用Elasticsearch,也可以考虑禁用SSL以方便使用。这通常很没必要,就算你实在不想用HTTPS请求,你启动HTTP就可以了,而不是禁用SSL。可以在elasticsearch.yml中添加以下配置:

xpack.security.http.ssl:
  enabled: false
...
xpack.security.transport.ssl:
  enabled: false
...


这两种修改配置的方式,需要在修改后重启Elasticsearch服务。不过一帮这样配置只适合开发环境,生产环境中还是要启用SSL以保证安全。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
2月前
|
运维 Prometheus 监控
🎉 WatchAlert - 开源多数据源告警引擎【运维研发必备能力】
WatchAlert 是一个开源的多数据源告警引擎,支持从 Prometheus、Elasticsearch、Kubernetes 等多种数据源获取监控数据,并根据预定义的告警规则触发告警。它具备多数据源支持、灵活的告警规则、多渠道告警通知、可扩展架构和高性能等核心特性,帮助团队更高效地监控和响应问题。项目地址:https://github.com/opsre/WatchAlert
🎉 WatchAlert - 开源多数据源告警引擎【运维研发必备能力】
|
3月前
|
机器学习/深度学习 数据采集 人工智能
智能化运维:提升IT系统稳定性与效率的新引擎####
本文探讨了智能化运维(AIOps)在现代IT管理中的应用,重点分析了其如何通过集成人工智能、机器学习与大数据分析技术,显著提升IT系统的稳定性与运维效率。不同于传统运维的被动响应模式,智能化运维能够预测潜在故障,实现主动维护,从而减少停机时间,优化资源配置。文章还概述了实施智能化运维的关键步骤与面临的挑战,为读者提供了一个全面了解智能化运维价值的窗口。 ####
|
3月前
|
前端开发 JavaScript Java
如何捕获和处理HTTP GET请求的异常
如何捕获和处理HTTP GET请求的异常
|
3月前
|
机器学习/深度学习 人工智能 运维
智能化运维:提升IT服务效率的新引擎###
本文深入浅出地探讨了智能化运维(AIOps)如何革新传统IT运维模式,通过大数据、机器学习与自动化技术,实现故障预警、快速定位与处理,从而显著提升IT服务的稳定性和效率。不同于传统运维依赖人工响应,AIOps强调预测性维护与自动化流程,为企业数字化转型提供强有力的支撑。 ###
|
5月前
|
自然语言处理 搜索推荐 数据库
高性能分布式搜索引擎Elasticsearch详解
高性能分布式搜索引擎Elasticsearch详解
121 4
高性能分布式搜索引擎Elasticsearch详解
|
4月前
|
自然语言处理 搜索推荐 关系型数据库
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
这篇文章是关于Elasticsearch全文搜索引擎的学习指南,涵盖了基本概念、命令风格、索引操作、分词器使用,以及数据的增加、修改、删除和查询等操作。
57 0
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
|
4月前
|
存储 运维 监控
实时计算Flink版在稳定性、性能、开发运维、安全能力等等跟其他引擎及自建Flink集群比较。
实时计算Flink版在稳定性、性能、开发运维和安全能力等方面表现出色。其自研的高性能状态存储引擎GeminiStateBackend显著提升了作业稳定性,状态管理优化使性能提升40%以上。核心性能较开源Flink提升2-3倍,资源利用率提高100%。提供一站式开发管理、自动化运维和丰富的监控告警功能,支持多语言开发和智能调优。安全方面,具备访问控制、高可用保障和全链路容错能力,确保企业级应用的安全与稳定。
74 0
|
4月前
|
开发框架 监控 搜索推荐
GoFly快速开发框架集成ZincSearch全文搜索引擎 - Elasticsearch轻量级替代为ZincSearch全文搜索引擎
本文介绍了在项目开发中使用ZincSearch作为全文搜索引擎的优势,包括其轻量级、易于安装和使用、资源占用低等特点,以及如何在GoFly快速开发框架中集成和使用ZincSearch,提供了详细的开发文档和实例代码,帮助开发者高效地实现搜索功能。
299 0
|
6月前
|
缓存 运维 监控
打造稳定高效的数据引擎:数据库服务器运维最佳实践全解析
打造稳定高效的数据引擎:数据库服务器运维最佳实践全解析
|
6月前
|
运维 算法 应用服务中间件
运维系列.Nginx中使用HTTP压缩功能(一)
运维系列.Nginx中使用HTTP压缩功能(一)
130 1