ELK集群搭建
文章目录
1.环境准备
安装软件 | ip地址 | 主机名字 | 系统版本 | 配置 |
---|---|---|---|---|
Elasticsearch | 192.168.37.90 | ELK | centos8 | 4核4G |
Elasticsearch | 192.168.37.91 | es1 | centos8 | 4核4G |
Elasticsearch | 192.168.37.92 | es2 | centos8 | 4核4G |
Kibana | 192.168.37.93 | kibana | centos8 | 1核2G |
关闭防火墙,selinux开始实验
2.Elasticsearch环境搭建
1.创建es账户并设置密码
(三台机器都要执行)
useradd es
echo "密码" | passwd --stdin "es"
2.选择对应版本进行下载
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q7YLwQWW-1720670904019)(https://i-blog.csdnimg.cn/direct/a9b35dece3814fb08672cefc1809b14d.jpeg#pic_center)]
解压后并把文件夹改名成es
[root@ELK ~]# ls
anaconda-ks.cfg elasticsearch-8.14.2-linux-x86_64.tar.gz
[root@ELK ~]# tar xf elasticsearch-8.14.2-linux-x86_64.tar.gz -C /usr/local/
[root@ELK ~]# cd /usr/local/
[root@ELK local]# mv elasticsearch-8.14.2 es
[root@ELK local]# ls
bin es etc games include lib lib64 libexec sbin share src
3.编辑配置文件
[root@ELK es]# vim config/elasticsearch.yml
全部删除,编辑以下内容
cluster.name: bjbpe01-elk (集群名称)
cluster.initial_master_nodes: ["192.168.37.90","192.168.37.91","192.168.37.92"] (这一条填写集群服务器的所有ip,ip越靠左权重越高)
node.name: elk01 (集群中名字不能相同)
node.master: true
node.data: true
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
#单节点模式下,将discovery开头的行注释
discovery.seed_hosts: ["192.168.37.91","192.168.37.92"] (填写另外两个es主机的ip)
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping_timeout: 150s
discovery.zen.fd.ping_retries: 10
client.transport.ping_timeout: 60s
http.cors.enabled: true
http.cors.allow-origin: "*"
4.设置JVM堆大小 #7.0默认为4G
sed -i 's/## -Xms4g/-Xms4g/' /usr/local/es/config/jvm.options
sed -i 's/## -Xmx4g/-Xmx4g/' /usr/local/es/config/jvm.options
确保堆内存最小值(Xms)与最大值(Xmx)的大小相同,防止程序在运行时改变堆内存大小。
如果系统内存足够大,将堆内存最大和最小值设置为31G,因为有一个32G性能瓶颈问题。
堆内存大小不要超过系统内存的50%
5.创建es数据及日志存储目录
mkdir -p /data/elasticsearch/data
mkdir -p /data/elasticsearch/logs
6.修改安装目录和存储目录权限
chown -R es.es /data/elasticsearch
chown -R es.es /usr/local/es
3.系统优化
1.增加最大文件打开数
永久生效
[root@ELK ~]# echo "* soft nofile 65536" >> /etc/security/limits.conf
2.增加最大进程数
echo "* soft nproc 65536" >> /etc/security/limits.conf
3.增加最大内存映射数
[root@ELK ~]# echo "vm.max_map_count=262144" >> /etc/sysctl.conf
[root@ELK ~]# sysctl -p
vm.max_map_count = 262144
4.启动
启动命令
su - es -c "cd /usr/local/es && nohup bin/elasticsearch "
[root@ELK ~]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 2048 *:9200 *:*
LISTEN 0 2048 *:9300 *:*
LISTEN 0 128 [::]:22 [::]:*
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nQJ3uz1k-1720670904021)(https://i-blog.csdnimg.cn/direct/ff6b403921e142ee991148c4e0916a5c.png#pic_center)]
验证,访问:本机ip:9200
5.安装kibana主机
1. 安装配置Kibana
[root@kibana ~]# tar xf kibana-7.13.2-linux-x86_64.tar.gz -C /usr/local/
[root@kibana ~]# vim /usr/local/kibana-7.13.2-linux-x86_64/config/kibana.yml
添加以下内容
server.port: 5601 #访问端口
server.host: "192.168.37.93" #本机ip
elasticsearch.hosts: ["http://192.168.37.90:9200"] #用来做查询的ES节点的URL
kibana.index: ".kibana"
i18n.locale: "zh-CN"
2.启动
cd /usr/local/kibana-7.13.2-linux-x86_64/
启动命令
./bin/kibana
如果报错为Kibana should not be run as root. Use --allow-root to continue. 在命令后加--allow-root即可
3.访问
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rj0WB78V-1720670904021)(https://i-blog.csdnimg.cn/direct/fd4b58449d344ade9f09076626f4ed42.png#pic_center)]