[英]Kibana4 to listen on Port 80 instead of Port 5601
我在运行 RHEL7 的 Amazo EC2 实例上运行了 elasticsearch 1.4 和 kibana4。
Kibana4 作为独立进程运行,并未部署在 nginx 等 Web 容器中。它正在侦听端口 5601(默认端口)。 我想让 kibana 监听 80 端口。
这可以在不使用 nginx 的情况下实现吗? 如果是如何?
编辑文件 {kibana-directory}/config/kibana.yml。 找到这一行:
port: 5601
并将其更改为:
port: 80
您需要设置功能CAP_NET_BIND_SERVICE
以将非 root 进程绑定到特权端口 (<1024)
让 kibana 监听 80 端口:
1- 在 /etc/kibana/kibana.yml 中编辑 kibana 端口
server.port : "80"
2-运行以下命令:
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/bin/kibana
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/bin/kibana-plugin
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/bin/kibana-keystore
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/node/bin/node
在配置文件中设置端口 80 将触发以下错误kibana[11777]: FATAL Error: listen EACCES: permission denied 0.0.0.0:80
由于 kibana 服务默认在用户 kibana 下执行
您可以将用户更改为 root,但这会触发以下警告kibana[11639]: Kibana should not be run as root. Use --allow-root to continue.
kibana[11639]: Kibana should not be run as root. Use --allow-root to continue.
所以不推荐在 root 用户下运行 kibana 服务。 如果您有 Web 服务器,最好制定端口转发规则或 HTTP 重定向。
完整设置在这里: https : //www.elastic.co/guide/en/kibana/current/settings.html
这应该添加到 config/kibana.yml server.port: 80
并使用 sudo 运行 kibana 服务器。 确保没有进程同时使用端口 80。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.