1、安装JAVA1.8 – 用于运行环境
yum install java-1.8.0-openjdk*
2、安装elasticsearch,目前版本为 7.8 – 用于日志存放容器会根据要求对日志进行索引归集.
# 下载并安装公共签名密钥
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
# 创建 yum 源文件
vim /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
# 安装
yum install -y elasticsearch
2.1 配置
# 配置文件都在 /etc/elasticsearch/ 目录下
vi /etc/elasticsearch/elasticsearch.yml
# 集群名称
cluster.name: jhxxb
# 节点名称
node.name: node-1
# 数据文件与日志文件存放目录
path.data: /home/esData/es
path.logs: /home/esData/log
# 网络设置
network.host: 0.0.0.0
http.port: 9200
# 集群设置
cluster.initial_master_nodes: ["node-1"]
# 修改配置中目录的用户与用户组,不然无法启动
chown -R elasticsearch:elasticsearch /home/esData/log/
chown -R elasticsearch:elasticsearch /home/esData/es/
2.2 启动
# 启动
systemctl start elasticsearch.service
# 开机自启
systemctl enable elasticsearch.service
# 查看状态
systemctl status elasticsearch.service
3、安装 Kibana --更直观展示日志数据信息,查看和分析日志
# 下载并安装公共签名密钥
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
# 添加源
vim /etc/yum.repos.d/kibana.repo
[kibana-7.x]
name=Kibana repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
# 安装
yum install -y kibana
# 配置
vim /etc/kibana/kibana.yml
server.host: "0.0.0.0"
# 不要用 127.0.0.1,可能会提示 Kibana server is not ready yet
elasticsearch.hosts: ["http://192.168.8.41:9200"]
i18n.locale: "zh-CN"
# 刷新服务配置
systemctl daemon-reload
# 开机自启
systemctl enable kibana.service
# 启动
systemctl start kibana.service
# 查看状态
systemctl status kibana.service
4、安装 kafka 类似于redis 用于日志队列缓冲(比redis稍好)。
架构上简化 必然不能满足复杂的业务需求和突发情况. 我记得logstash没秒吐出超过8000的时候 就不能保证时效性了,你可以起多台logstash 去吞吐 这时候 你就需要redis或者Kafka来保证多个logstash不拿重复。而且一般遇到一些系统上的尖峰,我很难提前预估出这个瞬时的体量是平时几倍或者几十倍。而且个缓存层 也便于不同部门之间的协作管理.
5、安装 logstash --从redis或kafka相应对列里面取出日志,对日志进进行加工后输出到elasticsearch中。