elasticsearch - 如何从 minikube 连接到主机上安装的 elasticsearch(本地开发和 kvm2)

标签 elasticsearch kubernetes kibana minikube

在 Ubuntu 18 上,我在我的电脑上安装了 elasticsearch 和 kibana 作为服务。此外,安装了 minikube(使用 kvm2 驱动程序)。我正在关注关于 kubernetes (Add logging and metrics to the PHP / Redis Guestbook example) 的教程,但我无法连接到我的外部托管 Elasticsearch 和 kibana。

如何在 minikube 中配置 elasticsearch/kibana 和 kube-state-metrics?

最佳答案

首先必须将 elasticsearch & kibana 绑定(bind)到 minikube “可以看到”的特定主机 ip。

获取ip:

minikube ssh "route -n | grep ^0.0.0.0 | awk '{ print \$2 }'"

In my case it returns 192.168.122.1



更新 elastic & kibana 配置 & 重启:
sudo nano /etc/elasticsearch/elasticsearch.yml
network.host: 192.168.122.1
cluster.initial_master_nodes: ["node-1","node-2"]

sudo nano /etc/kibana/kibana.yml
server.host: 192.168.122.1
elasticsearch.hosts: ["http://192.168.122.1:9200"]

sudo systemctl restart elasticsearch.service
sudo systemctl restart kibana.service

验证服务器是否正在运行:
curl 192.168.122.1:9200
curl 192.168.122.1:5601
curl 192.168.122.1:5601/api/status

sudo journalctl -u kibana
sudo journalctl -u elasticsearch

从 minikube 内部验证连通性:
minikube ssh
                         _             _            
            _         _ ( )           ( )           
  ___ ___  (_)  ___  (_)| |/')  _   _ | |_      __  
/' _ ` _ `\| |/' _ `\| || , <  ( ) ( )| '_`\  /'__`\
| ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )(  ___/
(_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____)

$ curl 192.168.122.1:9200
$ curl 192.168.122.1:5601/api/status

现在我们只需要在 kubernetes 的 secret 配置中使用这个 ip kubernetes secret configuration for filebeat :

ELASTICSEARCH_HOSTS
["http://192.168.122.1:9200"]

KIBANA_HOSTS
"192.168.122.1:5601"

关于elasticsearch - 如何从 minikube 连接到主机上安装的 elasticsearch(本地开发和 kvm2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59892896/

相关文章:

java - 有没有一种简单的方法可以使用 Java 将术语插入到 Elasticsearch QueryDSL 中?

node.js - 如何修复 "Document mapping type name can' t 从 '_' 开始,找到 : [_create]_"elasticsearch?

elasticsearch - 使用kibana 4时可以将其全部从elasticsearch中删除

elasticsearch - 如何在Kibana中进行编辑

json - 如何批量插入600MB大json文件到elasticsearch?

java - elasticsearch 中索引是如何存储的

docker - Kubernetes imagePullSecrets 不工作;得到 "image not found"

kubernetes - 如何在traefik中配置上传大文件速度限制?

docker - Kubernetes 服务无法在 docker 中自行 curl

elasticsearch - 结合使用query_string和聚合