ES在linux系统配置安装

一、准备工作

1. linux系统准备

  1. linux系统已安装jdk并进行环境配置

2. 资料准备

  1. 准备好相关数据包(可以远程下载)
  2. 我用的数据包
    elasticsearch-6.2.2.tar.gz
    elasticsearch-head-master.zip
    elasticsearch-analysis-ik-6.2.2.zip
    logstash-6.2.2.tar.gz
    注意:相关版本保持一致(6.2.0)

二、配置安装

1. 目录管理

  1. 目录管理(建立目录存放安装包和安装文件)
    指令:cd /opt/install
    指令:mkdir elk
    将elk安装包文件,传输到 opt/install/elk 中
    elasticsearch-6.2.2.tar.gz
    elasticsearch-head-master.zip
    elasticsearch-analysis-ik-6.2.2.zip
    logstash-6.2.2.tar.gz
    注意:主虚拟机4个都传输;从虚拟机(客机)传输3个,logstash-6.2.2.tar.gz 不传。
    指令:cd /opt/bigdata
    指令:mkdir elk

2. 配置ES

  1. 解压 elasticsearch-6.2.2.tar.gz 至 指定目录 opt/bigdata/elk
    指令:cd /opt/install/elk ls
    指令:tar -zxvf elasticsearch-6.2.2.tar.gz -C /opt/bigdata/elk
  2. 重命名别名
    指令:cd /opt/bigdata/elk ls
    指令:mv elasticsearch-6.2.2/ es6.2.2 ls
  3. 修改安装文件所有者权限(运行时不允许root权限)
    指令:cd /opt/bigdata/elk ls -la
    指令:cat /etc/passwd |tail -5 查看除root外其他用户
    指令:chown -R 用户名:root es6.2.2/
    递归修改所有者权限
  4. 修改相关配置信息
    指令:cd /opt/bigdata/elk/es6.2.2 ls -la
    cd config/
    指令:vi elasticsearch.yml 或者
    vi /opt/bigdata/elk/elas6.2.2/config/elasticsearch.yml
    **主虚拟机(主节点)**配置如下:
    指令:/cluster i
    指令: cluster.name: mastersearch
    配置es的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
    指令:/node i
    指令:node.name: master
    配置节点名,默认随机指定一个name列表中名字,该列表在es的jar包中config文件夹里name.txt文件中。
    node.master: true
    指定该节点是否资格被举成为node,默认是true,es是默认集群中的第一台机器为master,如果这台机挂了就会重新选举master。
    node.data: true
    指定该节点是否存储索引数据,默认为true。
    指令:/network.host i
    指令:network.host: vmmaster(master_hostname 或 IP地址)
    同时设置bind_host和publish_host两个参数。
    指令:/http.port
    http.port: 9200
    设置对外服务的http端口,默认为9200。
    http.cors.enabled: true
    http.cors.allow-origin: “"
    指令:/discovery.zen i
    discovery.zen.ping.unicast.hosts: [“master_hostname”,…, “alave_hostname”]
    设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。
    指令: :x
    从虚拟机(从节点)配置如下:
    指令:/cluster i
    指令: cluster.name: mastersearch
    配置es的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
    指令:/node i
    指令:node.name: slave1
    配置节点名,默认随机指定一个name列表中名字,该列表在es的jar包中config文件夹里name.txt文件中。
    node.master: false
    指定该节点是否资格被举成为node,默认是true,es是默认集群中的第一台机器为master,如果这台机挂了就会重新选举master。
    node.data: true
    指定该节点是否存储索引数据,默认为true。
    指令:/network.host i
    指令:network.host: vmslave1(slave_hostname 或 IP地址)
    同时设置bind_host和publish_host两个参数。
    指令:/http.port
    http.port: 9200
    设置对外服务的http端口,默认为9200。
    http.cors.enabled: true
    http.cors.allow-origin: "

    指令:/discovery.zen.ping.unicast.hosts
    discovery.zen.ping.unicast.hosts: [“master_hostname”,…, “alave_hostname”]
    设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。
    指令: :x
    指令:vi /etc/sysctl.conf
    指令:+g i
    vm.max_map_count=655360 虚拟机内存
    指令: :x
    指令:vi /etc/security/limits.conf
    指令:+g i
    * soft nofile 65536
    * hard nofile 65536
    * soft nproc 4096
    * hard nproc 4096
    指令: :x
    指令:sysctl -p 配置生效
  5. 安装分词器插件
    分词器插件:elasticsearch-annlysis-ik-6.2.2.zip
    a)将分词器插件加载到安装包目录下 /opt/install/elk/
    b) 将分词器插件解压安装到安装目录 /opt/bigdata/elk/es6.2.2/plugins/
    unzip elasticsearch-analysis-ik-6.2.2.zip -d /opt/bigdata/elk/elas6.2.2/plugins/
    c) 查看解压结果
    cd /opt/bigdata/elk/es6.2.2/plugins/
    ls
    d) 重命名分词器安装文件
    mv elasticsearch/ ik
    e) 配置从虚拟机分词器
    1)进入分析器安装目录
    cd /opt/bigdata/elk/es6.2.2/plugins/
    2)将分词器配置到其他远程主机
    a) 确保文件损失,将分词器安装文件制成压缩包。 tar -zcvf 压缩后名字(压缩格式) 被压缩文件
    tar -zcvf ik.tar.gz ik/
    b) 压缩包拷贝配置到远程主机
    前提:远程主机开启状态
    scp ik.tar.gz 当前用户名@远程主机别名:/opt/bigdata/elk/es6.2.2/plugins
    3) 切换至远程主机,检查分词器拷贝结果
    a) 进入写入分词器配置文件的位置
    cd /opt/bigdata/elk/es6.2.2/plugins ls
    b)将配置文件压缩包解压到当前位置
    tar -zxvf ik.tar.gz
    4)删除所有主机下的分词器安装压缩包
    rm -rf ik.tar.gz
    f) 重启虚拟机
    reboot
  6. 运行ES
    指令:su 用户名 切换用户
    指令:cd /opt/bigdata/elk/es6.2.2/bin
    指令: ./elasticsearch 前台手动启动
    ./elasticsearch -d 后台启动
    具体见 Shell 脚本的shell脚本运行。
    注意:1)后台启动可能遇到weilai.log 权限问题,修改权限即可
    指令; chown -R weilai:weilai es6.2.2
    指令: chmod 622 path 根据路径确认权限修改为622
    2)关闭后台启动的进程
    指令:ps -ef |grep $USER 查看用户进程
    指令:lsof -i:9200 根据端口号9200查进程
    若不能用, 指令:yum install -y lsof
    或 ps -ef |grep “9200”
    指令:kill -9 pid 根据pid结束进程

三、安装elastic-head-master

  1. 将安装包加载到 /opt/install/elk/ 下
  2. 安装 zip 命令
    yum install -y unzip zip
  3. 安装包解压到指定安装目录 /opt/bigdata/elk/
    unzip elasticsearch-head-master.zip -d /opt/bigdat/elk
  4. 查看解压安装结果
    cd /opt/bigdata/elk
    ls
  5. 重命名安装文件
    mv elasticsearch-head-master/ elash

四、NODE安装

1.安装和配置

  1. 将node安装包加载到 /opt/install/elk/ 目录下
    或者 进入 /opt/install/elk/ 目录
    cd /opt/install/elk
    wget https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.xz
  2. 将node安装包解压到指定目录
    xz -d node-v8.11.1-linux-x64.tar.xz
    tar -xvf node-v8.11.1-linux-x64.tar -C /opt/bigdata/elk
  3. 查看解压安装结果
    cd /opt/bigdata/elk ls
  4. 重命名 安装文件
    mv node-v8.11.1-linux-x64/ nodejs8.11 ls
  5. 查看文件路径
    cd nodejs8.11/ pwd
  6. 配置环境变量
    vi /etc/profile
    +g i
    配置信息:
    export NODEHOME=/opt/bigdata/elk/nodejs8.11
    export PATH=P A T H : PATH:PATH:NODEHOME/bin
    :x
  7. 激活配置
    source /etc/profile
  8. 查看安装结果
    echo $NODEHOME
    node -v

2.准备

  1. 切换国内镜像
    npm config set registry https://registry.npm.taobao.org
  2. 验证镜像设置是否成功
    npm config get registry
  3. 在 elash 根目录下 安装npm
    cd /opt/bigdata/elk/elash/
    npm install
    若果报错的话:npm install --ignore scripts
  4. elash 目录下grunt 工具包安装
    a) 安装grunt 客户端工具
    npm install -g grunt-cli
    b) 检查当前目录下 npm 安装情况
    npm list --depth=0
  5. 启动 grunt
    在 elash 根目录下 cd /opt/bigdata/elk/elash/
    a) 正常启动: npm run start
    b) 后台启动: nohup grunt server & 记录PID
    关闭进程 kill -9 PID

3.访问

打开浏览器,地址栏输入URL
1. http://网络IP地址:9100


版权声明:本文为Hugh_Guan原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。