logstash(收集)、elasticsearch(存储+搜索)、kibana(展示),这三个组合起来的技术称之为ELKStack
1.下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.15.2-linux-x86_64.tar.gz wget https://artifacts.elastic.co/downloads/kibana/kibana-7.15.2-linux-x86_64.tar.gz wget https://artifacts.elastic.co/downloads/logstash/logstash-7.15.2-linux-x86_64.tar.gz
下载这三个版本必须统一,例如这个统一是7.15.2
windows下载解压即可用 端口默认9200
Windows下熟悉目录方便
bin 启动目录
config 配置文件
log4j2 日志文件
jvm.options java虚拟机配置用
进入bin目录双击 :elasticsearch.bat 浏览器进入9200端口就可以看到版本信息!
2.Linux下解压
tar -zxvf elasticsearch-7.15.2.tar.gz -C /usr/local/ #解压到/uer/local/下面
[root@dlb ~]# cd /usr/local/elasticsearch-7.15.2/bin/ #切换到安装目录的bin文件夹下面 [root@dlb bin]# ./elasticsearch #启动······此时报错了!如果是jdk8建议卸载安装11版本
#提示不能用root权限账户启动
3.创建新用户
[root@dlb bin]# adduser ela #ela 是自定义的用户名 [root@dlb bin]# passwd ela #修改用户ela的密码 Changing password for user ela. #提示 New password: #第一次输入密码,看不到 Retype new password: #第二次输入密码 passwd: all authentication tokens updated successfully. #提示修改成功 [root@dlb bin]# chown -R ela elasticsearch-7.15.2 #给ela用户赋予权限 提示找不到文件夹 chown: cannot access ‘elasticsearch-7.15.2’: No such file or directory [root@dlb bin]# cd /usr/local/ #切换到安装目录的父目录上面 [root@dlb local]# chown -R ela elasticsearch-7.15.2 #再次操作 [root@dlb local]# su ela #切换用户 [ela@dlb local]$ cd elasticsearch-7.15.2/ [ela@dlb elasticsearch-7.15.2]$ cd bin/ [ela@dlb bin]$ ./elasticsearch #启动 此时成功
[ela@dlb bin]$ ./elasticsearch -d #后台启动
启动报错
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决办法:切换账户root 直接编辑文件
[root@dlb config]# vim /etc/sysctl.conf
vm.max_map_count=262144 #添加
[root@dlb config]# sysctl -p #执行一下,重启es就行了
4.重启es
[ela@dlb bin]$ ps -ef | grep elastic #查找进程 [ela@dlb bin]$ kill -9 1595 #干掉 [ela@dlb bin]$ ./elasticsearch -d #启动
测试是否成功?!
[root@dlb bin]# curl localhost:9200
4.远程访问
默认是本地访问的
修改配置文件
vim elasticsearch.yml
修改这三个地方,保存即可
node.name: node-1 #放开注释 在23行 network.host: 0.0.0.0 #ip也可以自己设定独立访问,设置为0就是所有IP都可以访问 cluster.initial_master_nodes: ["node-1"] #设置为主节点不然会报错的
到了这里终于可以在浏览器上访问了 ,接下来可以安装kibanna了
http://公网ip:9200
5.配置文件
第四步就是配置这文件的,如果熟练了,可以直接用下面的
cluster.name 集群名称,各节点配成相同的集群名称。 node.name 节点名称,各节点配置不同。 node.master 指示某个节点是否符合成为主节点的条件。 node.data 指示节点是否为数据节点。数据节点包含并管理索引的一部分。 path.data 数据存储目录。 path.logs 日志存储目录。 bootstrap.memory_lock 内存锁定,是否禁用交换。 bootstrap.system_call_filter 系统调用过滤器。 network.host 绑定节点IP。 http.port 端口。 discovery.zen.ping.unicast.hosts 提供其他 Elasticsearch 服务节点的单点广播发现功能。 discovery.zen.minimum_master_nodes 集群中可工作的具有Master节点资格的最小数量,官方的推荐值是(N/2)+1,其中N是具有master资格的节点的数量。 discovery.zen.ping_timeout 节点在发现过程中的等待时间。 discovery.zen.fd.ping_retries 节点发现重试次数。 http.cors.enabled 是否允许跨源 REST 请求,表示支持所有域名,用于允许head插件访问ES。 http.cors.allow-origin 允许的源地址。
cluster.name: elk node.name: elkyjssjm 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 http.cors.enabled: true http.cors.allow-origin: "*"