繁体   English   中英

Elasticsearch Kubernetes pod - 无法连接到端口 9300

[英]Elasticsearch Kubernetes pod - can't connect to port 9300

我正在尝试将我的弹性搜索 Pod 连接到端口 9200 和 9300。当我去:

http://localhost:$IP_FROM_KUBECTL_PROXY(usually 8001)/api/v1/namespaces/default/pods/$POD_NAME/proxy/

我看到以下错误:

Error: 'net/http: HTTP/1.x transport connection broken: malformed HTTP status code "is"'
Trying to reach: 'http://172.17.0.5:9300/'

我所做的是,运行:

kubectl run elasticsearch --image=elasticsearch:6.6.1 -labels="elasticsearch" --env="discovery.type=single-node" --port=9200 --port=9300

并运行以下服务:

kind: Service
apiVersion: v1
metadata:
  name: elasticsearch
spec:
  selector:
    host: elasticsearch
    subdomain: for-kibana
    app: elasticsearch
  ports:
  - protocol: TCP
    name: serving
    port: 9200
    targetPort: 9200
  - protocol: TCP
    name: node2node
    port: 9300
    targetPort: 9300

这很奇怪,因为当我只使用端口 9200 时,一切正常,但是当我使用 9300 运行时,它失败了。

端口 9300 是二进制协议(不是 http),用于节点通信。 只有端口 9200 暴露了 Rest Api

文档

两个 Java 客户端都使用本地 Elasticsearch 传输协议通过端口 9300 与集群通信。 集群中的节点也通过端口 9300 相互通信。如果此端口未打开,您的节点将无法形成集群。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM