本文共 2887 字,大约阅读时间需要 9 分钟。
文章目录
在CentOS7上以rpm方式安装Kibana 7.4.0
前言
在 一文中,描述了如何在CentOS7上安装Elasticsearch 7.4.0。本文描述了如何在CentOS7上以rpm方式安装Kibana,使得可以通过Kibana的Web控制台来方便地操作Elastcisearch。
环境:
- CentOS7 x86_64
- Elastichsearch 7.4.0
- Nginx
- Kibana 7.4.0
下载Kibana
官方文档:
Kibana 7.4.0:
Kibana最新版:
下载Kibana 7.4.0的rpm包和sha512校验和文件:
# download rpm packagewget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.0-x86_64.rpm# download rpm sha512wget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.0-x86_64.rpm.sha512
检查sha512校验和:
sha512sum -c kibana-7.4.0-x86_64.rpm.sha512
安装Kibana
以rpm方式安装Kibana:
rpm -ivh kibana-7.4.0-x86_64.rpm
以服务方式启动Kibana
以服务方式启动Kibana:
sudo systemctl daemon-reloadsudo systemctl enable kibanasudo systemctl start kibana
查看Kibana服务状态:
sudo systemctl status kibana -l
查看服务的详细日志:
journalctl -xefu kibana
Kibana目录
配置目录为/etc/kibana
,其中:
kibana.yml
为Kibana配置文件
程序目录为/usr/share/kibana
,其中:
-
plugins
为插件目录 -
bin
为执行文件目录
数据目录为/var/lib/kibana
。
Kibana日志默认输出到控制台,可以修改/etc/kibana/kibana.yml
,将日志输出到指定文件,比如/var/log/kibana/kibana.log
。
设置Kibana的反向代理和安全访问
因为Kibana不能设置用户名和密码,可以通过Nginx反向代理和htpasswd工具来设置访问Kibana的用户名和密码。
但是这种机制仍然不够安全,在实际应用中,应该严格限制Elasticsearch和Kibana的网络访问,比如网络隔离、代理访问和设置IP白名单等。
安装http-tools
如果已安装Nginx,则只需要安装httpd-tools
:
# 安装epel-release yum repo (如果还没有安装)sudo yum -y install epel-release# 安装httpd-toolssudo yum -y install httpd-tools
设置访问Kibana的用户名和密码
设置专门用于访问Kibana的用户名和密码。
为安全起见,需要起一个不容易猜测的用户名和强度较高的密码(比如8位以上包含了大小写字母、数字和特殊字符)。
sudo htpasswd -c /etc/nginx/htpasswd.users
配置Kibana的Nginx反向代理
配置Kibana的Nginx反向代理配置文件/etc/nginx/conf.d/kibana.conf
:
server { listen 80; server_name kibana.xdevops.cn; auth_basic "Restricted Access"; auth_basic_user_file /etc/nginx/htpasswd.users; location / { proxy_pass http://localhost:5601; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; }}
测试和重新加载Nginx配置:
nginx -tnginx -s reload
在浏览器中访问,根据提示输入前面设置的用户名和密码后,就可以访问Kibana的Web控制台了。
需要将kibana.xdevops.cn替换为你自己的二级域名,并添加一条对应的DNS解析A记录。
新增加的DNS解析可能需要一段时间后才会生效。
配置Kibana
参见:
编辑/etc/kibana/kibana.yml
。
修改前:
#server.port: 5601#server.host: "localhost"#server.basePath: ""#server.name: "your-hostname"#elasticsearch.hosts: ["http://localhost:9200"]#kibana.index: ".kibana"#elasticsearch.username: "kibana"#elasticsearch.password: "pass"#server.ssl.enabled: false#server.ssl.certificate: /path/to/your/server.crt#server.ssl.key: /path/to/your/server.key#elasticsearch.ssl.certificate: /path/to/your/client.crt#elasticsearch.ssl.key: /path/to/your/client.key#elasticsearch.ssl.certificateAuthorities: [ "/path/to/your/CA.pem" ]#logging.dest: stdout
在本例中,因为Elasticsearch和Kibana安装在同一台机器,且通过Nginx反向代理HTTP请求到Kibana,因此不用修改默认设置。
如果修改Kibana配置,则需要重启Kibana服务:
sudo systemctl restart kibana
后记
关于Elasticsearch和Kibana的安全话题,比如X-PACK,后续再用专门的文章来说明。
参考文档
转载地址:https://cookcode.blog.csdn.net/article/details/109127415 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!