博客
关于我
EKL相关(一)、安装环境
阅读量:215 次
发布时间:2019-02-28

本文共 3243 字,大约阅读时间需要 10 分钟。

在CentOS 7.7上安装ELK堆栈(Elasticsearch、Logstash、Kibana)

系统环境

  • 操作系统:CentOS 7.7.1908 (Core)
  • Java环境:确保系统中可用java8命令,建议检查java -version版本是否为1.8或更高。

1. 安装并启动Elasticsearch

1.1 下载Elasticsearch

  • 访问Elasticsearch官方网站,下载适用于Linux的最新版本(如6.4.2)。
  • 右键复制下载链接,使用wget命令下载到本地目录:
    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2-linux-x86_64.tar.gz
  • 解压包文件:
    tar -zxvf elasticsearch-6.4.2-linux-x86_64.tar.gz

1.2 配置Elasticsearch

  • 进入配置目录:
    cd elasticsearch-6.4.2/config
  • 打开elasticsearch.yml文件,添加以下配置:
    network.host: 0.0.0.0http.port: 9200http.cors.enabled: truehttp.cors.allow-origin: "*"
  • 由于Elasticsearch通常不建议直接以root用户启动,建议创建并切换到elasticsearch用户:
    groupadd elasticsearchuseradd elasticsearch -g elasticsearch -p elasticsearchchown -R elasticsearch:elasticsearch elasticsearch-6.4.2su elasticsearchcd elasticsearch-6.4.2/binsh elasticsearch &

1.3 解决启动错误

  • 如果遇到文件描述符或线程数不足错误:

    • 修改/etc/security/limits.conf
      * soft nofile 65536* hard nofile 65536* soft nproc 4096* hard nproc 4096
    • 更新并重新登录生效。
  • 如果遇到虚拟内存问题:

    • 修改/etc/sysctl.conf
      vm.max_map_count=262144
    • 更新并重启系统。

2. 安装并配置Kibana

2.1 下载Kibana

  • 下载适用于当前Elasticsearch版本的Kibana(如6.4.2):
    wget https://artifacts.elastic.co/downloads/kibana/kibana-6.4.2-linux-x86_64.tar.gz
  • 解压:
    tar -zxvf kibana-6.4.2-linux-x86_64.tar.gz

2.2 配置Kibana

  • 打开kibana-6.4.2/config/kibana.yml文件,添加以下配置:
    server.port: 5601server.host: "192.168.1.40"server.name: "kibana"elasticsearch.hosts: ["http://192.168.1.40:9200"]
  • 启动Kibana:
    nohup ./bin/kibana > nohup.out 2>&1 &

3. 安装Logstash

3.1 下载Logstash

  • 下载适用于当前Elasticsearch版本的Logstash(如6.4.2):
    wget https://artifacts.elastic.co/downloads/logstash/logstash-6.4.2-linux-x86_64.tar.gz
  • 解压:
    tar -zxvf logstash-6.4.2-linux-x86_64.tar.gz

3.2 配置Logstash

  • 创建配置文件logstash-6.4.2/config/logstash.conf
    input {  file {    path => "/usr/share/tomcat/logs/*.log"    start_position => "beginning"  }}filter {  # 可根据需要添加过滤逻辑}output {  elasticsearch {    hosts => "localhost:9200"    index => "logstash_logs"    document_id => "%{document_id}"  }}
  • 启动Logstash:
    sh logstash-6.4.2/bin/logstash -f logstash.conf --path.data=/home/elk/logstash-6.4.2/logs

4. 配置Logstash与数据库同步

4.1 下载MySQL驱动

  • 下载适用于当前Logstash版本的MySQL驱动(如5.1.46):
    wget https://cdn.mysql.com/Downloads/Connector-J/mysql-connector-java-5.1.46.zipunzip mysql-connector-java-5.1.46.zip
  • mysql-connector-java-5.1.46-bin.jar复制到Logstash的bin目录。

4.2 配置Logstash日志同步

  • 创建配置文件logstash-6.4.2/config/mysql-logstash.cnf
    input {  jdbc {    jdbc_driver_library => "mysql-connector-java-5.1.46-bin.jar"    jdbc_driver_class => "com.mysql.jdbc.Driver"    jdbc_connection_string => "jdbc:mysql://ip:3306/mydb"    jdbc_user => "logstash_user"    jdbc_password => "logstash_password"    schedule => "* * * * *"    statement => "SELECT * FROM logs WHERE timestamp >= :sql_last_value"    use_column_value => true    tracking_column_type => "timestamp"    tracking_column => "timestamp"    last_run_metadata_path => "sync_point"  }}output {  elasticsearch {    hosts => "localhost:9200"    index => "mysql_logs"    document_id => "%{id}"  }}
  • 停止当前运行的Logstash:
    ps -aux | grep logstashkill -f pid
  • 启动Logstash:
    sh logstash-6.4.2/bin/logstash -f mysql-logstash.cnf --path.data=/home/elk/logstash-6.4.2/logs

5. 验证安装

  • 访问Kibana控制台:http://服务器IP:5601
  • 检查Elasticsearch状态:http://服务器IP:9200_status`
  • 查看Kibana日志是否正确接收数据

转载地址:http://ylfi.baihongyu.com/

你可能感兴趣的文章
Objective-C实现Luhn (Mod 10)Algorithm算法(附完整源码)
查看>>
Objective-C实现LZW编码(附完整源码)
查看>>
Objective-C实现MAC桌面暗水印(附完整源码)
查看>>
Objective-C实现mandelbrot曼德勃罗特集算法(附完整源码)
查看>>
Objective-C实现markov chain马尔可夫链算法(附完整源码)
查看>>
Objective-C实现MATLAB中Filter函数功能(附完整源码)
查看>>
Objective-C实现matrix exponentiation矩阵求幂算法(附完整源码)
查看>>
Objective-C实现MatrixMultiplication矩阵乘法算法 (附完整源码)
查看>>
Objective-C实现max non adjacent sum最大非相邻和算法(附完整源码)
查看>>
Objective-C实现max subarray sum最大子数组和算法(附完整源码)
查看>>
Objective-C实现max sum sliding window最大和滑动窗口算法(附完整源码)
查看>>
Objective-C实现MaxHeap最大堆算法(附完整源码)
查看>>
Objective-C实现MaximumSubarray最大子阵列(Brute Force蛮力解决方案)算法(附完整源码)
查看>>
Objective-C实现MaximumSubarray最大子阵列(动态规划解决方案)算法(附完整源码)
查看>>
Objective-C实现maxpooling计算(附完整源码)
查看>>
Objective-C实现max_difference_pair最大差异对算法(附完整源码)
查看>>
Objective-C实现max_heap最大堆算法(附完整源码)
查看>>
Objective-C实现MD5 (附完整源码)
查看>>
Objective-C实现md5算法(附完整源码)
查看>>
Objective-C实现MeanSquareError均方误差算法 (附完整源码)
查看>>