如何修复etcd集群“错误”tls:第一条记录看起来不像是TLS握手“”

问题描述 投票:0回答:2

我创建了一个三节点etcd集群,config和start已经可以,但是当我查看/var/log/messages时,它显示

etcd:拒绝来自“172.17.0.3:43192”的连接(错误“tls:第一条记录看起来不像TLS握手”,ServerName“”)

我该如何解决?

我检查了etcd的健康状况:

member 48b0dff99d5c867e is healthy: got healthy result from https://172.17.0.9:2379
member 646dab89331aabab is healthy: got healthy result from https://172.17.0.8:2379
member b45603216bfac234 is healthy: got healthy result from https://172.17.0.10:2379

这显示确定,但是当我cat /var/log/messages时,它总是显示此错误:

1月12日20:08:57 master etcd:拒绝来自“172.17.0.3:43160”的连接(错误“tls:第一条记录看起来不像TLS握手”,ServerName“”) 1月12日20:08:57 master etcd:拒绝来自“172.17.0.3:43162”的连接(错误“tls:收到超长记录,长度为21536”,ServerName“”)

ssl kubernetes etcd
2个回答
0
投票

我方没有任何解决方案可以完全帮助您解决问题,但我发现了一些可能有助于您进一步调查的链接。仔细阅读,尝试解决方案,我希望你能解决问题。

  1. Github question #9917:检查ETCDCTL_API变量,特别是确保--endpoints配置了https。
  2. Runtime reconfiguration:尝试通过更新/删除/添加etcs成员来重新配置你。
  3. nginx ingresscheck your nginx ingress annotations以防您使用nginx
  4. google groups TLS handshake topic:查看此主题,尤其是与VAULT_ADDR变量相关的注释。我将复制粘贴帖子的最后评论:

在理解了权限问题之后,我们能够让一切工作正常。

您问:“请在初始化Vault之前确认您是否看到服务器错误消息”进一步检查后,我确定在初始化Vault之前未发生错误。

问题最终与VAULT_ADDR无关,我们使用了值:“http://127.0.0.1:8200

我有脚本化的安装操作,似乎并非所有内容都以适当的权限运行。起初我使用“sudo”命令运行脚本,导致失败。我发现证书密钥的权限受到限制,我的用户无法访问该文件。可能还有其他许可问题。但是一旦我将用户切换到root并运行脚本,一切都表现正常。

谢谢


0
投票

对我帮助

listen       443 ssl http2;
ssl on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
ssl_prefer_server_ciphers on;

在nginx配置中

© www.soinside.com 2019 - 2024. All rights reserved.