ELK集群
一、复制虚拟机、修改主机名和主机列表
1.网络地址
(1)输入:vi /etc/sysconfig/network-script/ifcfg-enp0s3
修改网络ip地址
2.主机名
(1)hostnamectl set-hostname bigdata01
(2)输入命令vi /etc/hostname
进入内容,也可以修改为bigdata01
(3)重启虚拟机: reboot
(4连接moba
3.主机列表
(1)vi /etc/hosts 内容增加 主机的ip地址 主机名
二、配置免密登录
1.ssh-keygen -t rsa -P ""
生成私钥
2.cat .ssh/id_rsa.pub >> .ssh/authorized_keys
复制私钥到公钥
ssh-copy-id -i .ssh/id_rsa.pub -p22 root@bigdata01
远程复制到另一台机器
3.ssh root@bigdata01
远程登录验证,不需要输入密码即可
注:配置完,把每台虚拟机,切换至自身的主机名下。
三、配置elasticsearch集群
1.输入:vi /opt/es622/config/elasticsearch.yml
修改节点名,ip地址,主机列表
第一台主机配置如下:
cluster.name : bigdata
node.name : master
node.master : true
network.host : 192.168.56.105
discovery.zen.ping.unicast.hosts : ["192.168.56.105","192.168.56.106","192.168.56.107"]
http.cors.enabled : true
第二三台,修改地方如下:
node.name : test01
node.master : false
2.切换用户:su es
在/opt目录下输入:./es622/bin/elasticsearch
启动ES;
底部出现 started即是启动成功
cd /opt/es622
进入文件夹下删除data和logs目录,再进入eshead目录下,npm run start
运行。
logstash实例
1.输入:cd /opt/logstash622
进入logstash的安装目录
2.输入:./bin/logstash -e 'input { stdin{} } output { stdout{} }'
来测试logstash是否正常工作
3.输入:./bin/logstash -e 'input { stdin{} } output { stdout{ codec => json } }'
把控制台输入的数据转换成json格式的数据,也可以替换成rubydebug类型的
4../bin/logstash -e 'input { stdin{} } output { stdout{ codec => json } elasticsearch { hosts => ["192.168.56.105:9200"] } }'
把控制台输入的数据转换成rubydebug类型的数据,同时上传到es服务器,可以在对应192.168.56.110:9100的页面进行查看
5.使用logstash读取文件
在文件夹logstash622下,建一个测试文件夹:tmp;
在tmp中,创建一个demo.conf和test.txt文件。
运行:./bin/logstash -f demo.conf
demo.conf 的内容代码如下:
input{
file{
path => "/opt/logstash622/tmp/test.txt"
start_position => "beginning"
sincedb_path => "/dev/null"
}
}
output{
stdout{
codec => rubydebug
}
elasticsearch{
hosts => ["192.168.56.105:9200"]
}
}
使用命令:./bin/logstash -f temp/logstash.conf
启动