部署Elasticsearch集群详细步骤参考本人:
https://blog.csdn.net/m0_59933574/article/details/134605073?spm=1001.2014.3001.5502https://blog.csdn.net/m0_59933574/article/details/134605073?spm=1001.2014.3001.5502
kibana部署
es集群设备
安装软件 | 主机名 | IP地址 | 系统版本 | 配置 |
---|---|---|---|---|
Elasticsearch | elk-1 | 192.168.231.245 | centos7.5.1804 | 3核4G |
Elasticsearch | es1 | 192.168.231.246 | centos7.5.1804 | 2核4G |
Elasticsearch | es2 | 192.168.231.247 | centos7.5.1804 | 2核4G |
软件版本:kibana-7.13.2-linux-x86_64.tar.gz
三台机器都启动Elasticsearch,elk-1还启动head
1. 安装配置Kibana
只在elk-1上安装
安装,解压
有包直接上传到/root
rz
解压
[root@elk-1 ~]# tar zxf kibana-7.13.2-linux-x86_64.tar.gz -C /usr/local/
2.配置
[root@elk-1 ~]# cat /usr/local/kibana-7.13.2-linux-x86_64/config/kibana.yml
server.port: 5601
server.host: "192.168.231.245"
elasticsearch.hosts: ["http://192.168.231.245:9200"]
kibana.index: ".kibana"
i18n.locale: "zh-CN"
server.port 监听端口 5601
server.host 本机的IP
elasticsearch.hosts : 查询es节点的URL
3. 配置项含义
server.port kibana服务端口,默认5601
server.host kibana主机IP地址,默认localhost
elasticsearch.url 用来做查询的ES节点的URL,默认http://localhost:9200
kibana.index kibana在Elasticsearch中使用索引来存储保存的searches, visualizations和dashboards,默认.kibana
4.启动
[root@elk-1 ~]# cd /usr/local/kibana-7.13.2-linux-x86_64/
kibana不能使用root用户启动
正确启动
5.观察kibana
http://192.168.231.245:5601
如果出现Kibana server is not ready yet
将es集群全部启动即可
6.再次访问web端
安装配置nginx反向代理
还是在elk-1那台服务器做实验
1. 配置yum源
[root@elk-1 ~]# rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2. 下载nginx
[root@elk-1 ~]# yum -y install nginx
3.安装httpd-tools
用于生成nginx认证访问的用户密码文件
[root@elk-1 ~]# yum install -y nginx httpd-tools
4. 配置反向代理
[root@elk-1 ~]# cat /etc/nginx/nginx.conf
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
worker_rlimit_nofile 65535;
events {
worker_connections 65535;
use epoll;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
server_names_hash_bucket_size 128;
autoindex on;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 120;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
#gzip模块设置
gzip on; #开启gzip压缩输出
gzip_min_length 1k; #最小压缩文件大小
gzip_buffers 4 16k; #压缩缓冲区
gzip_http_version 1.0; #压缩版本(默认1.1,前端如果是squid2.5请使用1.0)
gzip_comp_level 2; #压缩等级
gzip_types text/plain application/x-javascript text/css application/xml; #压缩类型,默认就已经包含textml,所以下面就不用再写了,写上去也不会有问题,但是会有一个warn。
gzip_vary on;
#开启限制IP连接数的时候需要使用
#limit_zone crawler $binary_remote_addr 10m;
#tips:
#upstream bakend{#定义负载均衡设备的Ip及设备状态}{
# ip_hash;
# server 127.0.0.1:9090 down;
# server 127.0.0.1:8080 weight=2;
# server 127.0.0.1:6060;
# server 127.0.0.1:7070 backup;
#}
#在需要使用负载均衡的server中增加 proxy_pass http://bakend/;
server {
listen 80;
server_name 192.168.231.245;
#charset koi8-r;
# access_log /var/log/nginx/host.access.log main;
access_log off;
location / {
auth_basic "Kibana"; #可以是string或off,任意string表示开启认证,off表示关闭认证。
auth_basic_user_file /etc/nginx/passwd.db; #指定存储用户名和密码的认证文件。
proxy_pass http://192.168.231.245:5601;
proxy_set_header Host $host:5601;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Via "nginx";
}
location /status {
stub_status on; #开启网站监控状态
access_log /var/log/nginx/kibana_status.log; #监控日志
auth_basic "NginxStatus"; }
location /head/ {
auth_basic "head";
auth_basic_user_file /etc/nginx/passwd.db;
proxy_pass http://192.168.231.245:9100/;
proxy_set_header Host $host:9100;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Via "nginx";
}
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
修改事项:
将worker_processes改成auto
将server_name改成本机IP
location内的所有proxy_pass 改成本机的IP
5. 配置授权用户和密码
[root@elk-1 ~]# htpasswd -cm /etc/nginx/passwd.db kibana
[root@elk-1 ~]# htpasswd -m /etc/nginx/passwd.db head
第一次加c,第二次不加c。如果第二次也+c,会将第一次添加的覆盖掉
6. 启动nginx
[root@elk-1 ~]# systemctl start nginx
访问,只访问http://192.168.231.245 那么会跳转到kibana
访问head,输入http://192.168.231.245/head
访问status,访问http://192.168.231.245/status
介绍:
Kibana是一个开源的数据可视化和分析平台,它是弹性搜索栈(Elastic Stack)的一部分,旨在帮助用户以更直观和交互式的方式分析和查询数据。Kibana提供了丰富的可视化选项,包括图表、地图和仪表板,可以对弹性搜索集群中的数据进行实时分析和可视化。Kibana还提供强大的查询工具和聚合框架,可以针对大规模的数据集进行高效的查询和分析。Kibana还支持实时协作和数据共享,可以获取团队内共享的仪表板和可视化项目。