zoukankan      html  css  js  c++  java
  • 日志搜集之ELK

    二、 部署安装

    环境:

    1、jdk环境:

    [root@openstack-node7 local]# java -version
    java version "1.8.0_121"
    Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
    
    

    2、

    7.102 es kibana
    7.108 es logstash
    7.109 es filebast
    

    3、版本均为6.8.9

    2.3.安装es(所有节点操作)

    1、选择版本

    官网:https://www.elastic.co/cn/downloads/past-releases#elasticsearch

    配置hosts文件

    192.168.7.102 master-node
    192.168.7.108 data-node1
    192.168.7.109 data-node2
    

    2、获取安装包

    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.9.tar.gz
    

    3、解压并建立软连接

    mkdir /usr/local/elk
    tar zxf elasticsearch-6.8.0.tar.gz
    ln -sv /usr/local/src/elasticsearch-6.8.9 /usr/local/elk/es
    

    4、新建安装目录和并授权elk用户

    
    useradd elk
    chown -R elk.elk /usr/local/elk/es/
    

    image-20200606143832784

    5、配置文件描述符和内核参数

    vim /etc/security/limits.conf
    
    # End of file
    * soft nofile 65536
    * hard nofile 131072
    * soft nproc 65536
    * hard nproc 131072
    
    vim /etc/sysctl.conf
    
    vm.max_map_count = 655360
    
    sysctl -p
    

    设置用户资源参数

    vi /etc/security/limits.d/20-nproc.conf
    
    elk    soft    nproc     65536
    

    6、修改配置文件

    vim /config/elasticsearch.yml
    
    [root@master-node es]# egrep -v "^$|^#" config/elasticsearch.yml 
    cluster.name: es-linux37
    node.name: master-node
    path.data: /data/es/data
    path.logs: /logs/es/logs
    network.host: 192.168.7.102
    http.port: 9200
    discovery.zen.ping.unicast.hosts: ["192.168.7.108", "192.168.7.109","192.168.7.102"]
    discovery.zen.minimum_master_nodes: 3
    http.cors.enabled: true    #解决跨域无法访问问题
    http.cors.allow-origin: "*"
    

    7、新建文件夹

    mkdir /logs/es/logs -pv 
    mkdir /data/es/data -pv
    chown elk.elk /logs/es/ -R
    chown elk.elk  /data/es/ -R
    

    8、启动文件(如果log有输出,即正常启动成功)

    su - elk
    cd /usr/local/elk/es
    ./bin/elasticseach
    

    image-20200606145459862

    #这是提示找不到足够的节点应该是3个节点

    其他节点只要修改node.name:和network.host:,都改成自己的IP地址

    9、后台执行

    #所有节点用elk用户启动服务,后台运行,现在就要看日志看看有什么问题了。root用户启动会报错的得非root用户启动

    ./bin/elasticsearch -d 
    

    节点启动后:日志输出如下为成功启动

    image-20200606152222960

    在102查看日志,如没有报错即可

    image-20200606152746083

    9、查看端口

    image-20200606153214621

    10、浏览器访问测试并查看

    #每个节点都可以通过:IP:9200端口查看的,如下图

    image-20200606153447157

    #可以看到所有节点的json信息

    image-20200606153620399

    复制然后通过json.cnz转义

    网址:json.cn

    image-20200606153727273

    lsof -i :9300 #每个节点都跟其他节点进行着连接

    image-20200606153901273

    2.2.安装head插件

    ElasticSearch-Head 是一个与Elastic集群(Cluster)相交互的Web前台

    ES-Head主要作用

    它展现ES集群的拓扑结构,并且可以通过它来进行索引(Index)和节点(Node)级别的操作
    它提供一组针对集群的查询API,并将结果以json和表格形式返回
    它提供一些快捷菜单,用以展现集群的各种状态
    

    安装npm

    由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包

    官方网址:https://nodejs.org/en/download/

    使用二进制文件节省时间

    wget https://nodejs.org/dist/v14.4.0/node-v14.4.0-linux-x64.tar.xz
    ln -sv /usr/local/src/node-v14.4.0-linux-x64/bin/node /usr/bin/node
    ln -sv /usr/local/src/node-v14.4.0-linux-x64/bin/npm /usr/bin/npm
    

    验证版本

    [root@master-node src]# npm -v 
    6.14.5
    [root@master-node src]# node -v 
    v14.4.0
    

    安装Head插件

    github网址:https://github.com/mobz/elasticsearch-head

    cd /usr/local/elk/es/plugins
    yum install git 
    git clone git://github.com/mobz/elasticsearch-head.git
    
    

    修改npm镜像

    国外镜像会很慢 ,所以要修改成国内的

    npm congfig get registry  #查看镜像
    
    npm config set registry https://registry.npm.taobao.org #set命令更改阿里镜像
    

    image-20200606171029998

    安装Head

    npm install 
    npm run start
    

    修改配置文件

    mkdir /usr/local/elk/plugin

    cp -rf mv elasticsearch-head /usr/local/elk/plugin/head

    chown -R elk.elk /usr/local/elk/plugin/head

    $ vim /home/elk/plugin/head/Gruntfile.js

    connect: {
                            server: {
                                    options: {
                                            port: 9100,
                                            hostname: '*',      #增加此行
                                            base: '.',
                                            keepalive: true
    

    $ vim /head/_site/app.js

    this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.7.102:9200";
    

    $ cd /home/elk/plugin/head/ #一定要进入此目录下启动命令啊

    image-20200606171224036

    放到后台运行

    yum install -y screen
    screen -S  head #创建一个head窗口,执行上图启动命令
    ctrl A+D #退出窗口
    screen -list
    screen -r head #进入head窗口
    

    登陆验证

    image-20200606181553341

  • 相关阅读:
    Android 中常用代码片段
    查看oracle中的中文所占字节数
    order by 中 使用decode
    Oracle select 中case 的使用以及使用decode替换case
    pyqt5 'QWidget' object has no attribute 'setCentralWidget'(转)
    程序员之路:python3+PyQt5+pycharm桌面GUI开发(转)
    QT5入门之23 -QT串口编程(转)
    xpath-helper: 谷歌浏览器安装xpath helper 插件
    mysql给root开启远程访问权限
    Vmware无法获取快照信息 锁定文件失败
  • 原文地址:https://www.cnblogs.com/pansn/p/13055873.html
Copyright © 2011-2022 走看看