设为首页 收藏本站
查看: 1101|回复: 0

[经验分享] elk5.x环境搭建与常用插件安装

[复制链接]

尚未签到

发表于 2019-1-28 13:37:29 | 显示全部楼层 |阅读模式
  ELK 5.X 环境搭建与常用插件安装
  环境介绍:
  ip: 192.168.250.131
  os: CentOS 7.1.1503 (Core)
  内存不要给的太低,至少4G吧,否则elasticsearch启动会报错。
  软件及其版本 这里软件包都解压在了/opt下,注意!
  logstash-5.4.0.tar.gz
  elasticsearch-5.4.0.tar.gz
  kibana-5.4.0-linux-x86_64.tar.gz
  jdk-8u92-linux-x64.tar.gz
  安装前准备:
  (把jdk1.8以下的都要卸载掉,否则elasticsearch会报错的)

  cat /etc/profile 添加以下内容
  export jdk=/opt/jdk
  export PATH=$jdk/bin:$PATH
  export elasticsearch=/opt/elasticsearch
  export PATH=$elasticsearch/bin:$PATH
  export logstash=/opt/logstash
  export PATH=$logstash/bin:$PATH
  export kibana=/opt/kibana
  export PATH=$kibana/bin:$PATH
  环境设置
  /etc/security/limits.conf 文件中添加以下内容
  *               soft    nofile          65536
  *               hard    nofile          65536
  *               soft    memlock         unlimited
  *               hard    memlock         unlimited
  /etc/sysctl.conf  添加以下内容 sysctl -p 生效
  fs.file-max = 183723   (l7版本中默认的)
  vm.max_map_count = 262144
  cat /etc/hosts
  192.168.250.131 elk.cluster1.com
  192.168.250.128 elk.cluster2.com
  192.168.250.127 elk.cluster3.com
  一、安装部署软件,依次是elasticsearch、logstash、kibana
  elasticsearch:
  useradd elasticsearch
  chown -R elasticsearch. elasticsearch
  /opt/elasticsearch/config/elasticsearch.yml 修改配置文件(注意,“:”后必须要有空格,否则会有语法错误,vim打开写对时,会变色)
  cluster.name: elk-cluster            #自定义集群名,相同集群内的节点设置相同的集群名
  node.name: elk.cluster1.com          #自定义节点名,建议统一采用节点hostname
  path.data: /opt/elasticsearch         #定义elasticsearch家目录
  path.logs: /opt/elasticsearch/logs      #定义elasticsearch日志目录
  bootstrap.memory_lock: true           #ES的mlockall属性允许ES节点不交换内存
  network.host: 192.168.250.131          #es监听地址,也可采用”0.0.0.0”,允许所有设备访问
  http.port: 9200                   #es监听端口,可不取消注释,默认即此端口
  discovery.zen.ping.unicast.hosts: ["elk.cluster1.com","elk.cluster2.com","elk.cluster2.com","elk.cluster2.com"]  #集群节点发现列表,也可采用ip的形式
  discovery.zen.minimum_master_nodes: 3    #集群可做master的最小节点数
  以下两个是为安装head插件做准备:
  http.cors.enabled: true             #开启跨域访问支持,默认为false
  http.cors.allow-origin: "*"           #跨域访问允许的域名地址,使用正则表达式
  su - elasticsearch -c "/opt/elasticsearch/bin/elasticsearch -d" 启动服务
  测试是否安装成功
  curl 192.168.250.131:9200

  为elasticsearch安装head插件
  yum -y install git npm xz #npm,xz在安装插件的时候会用到
  1、下载插件 git clone git://github.com/mobz/elasticsearch-head.git
  2、第二步,安装node
  ①由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包。(npm可以理解为maven)
  去官网下载nodejs,https://nodejs.org/en/download/

  

  ②然后解压nodejs的安装包:在/opt下
  mv node-v6.10.3-linux-x64 node
  # set node environmentexport in /etc/profile
  export NODE_HOME=/opt/node
  export PATH=$PATH:$NODE_HOME/bin
  source /etc/profile

  测试一下
  echo $NODE_HOME
  node -v
  v6.10.3
  
  npm -v
  3.10.10
  安装head插件
cd /opt/elasticsearch-head
  npm install
  3、安装grunt
  grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.X里的head插件就是通过grunt启动的。
  cd /opt/elasticsearch-head/node_modules/grunt/bin
  [root@elk bin]# ls
  grunt
  [root@elk bin]#./grunt -V
  grunt-cli v1.2.0
  grunt v1.0.1
  备注:我们在执行npm install 的时候,默认已经安装,如果自己安装的话,需要执行npm installgrunt-cli

  4、修改head源码
  由于head的代码还是2.6版本的,直接执行有很多限制,比如无法跨机器访问。因此需要用户修改两个地方:
①修改服务器监听地址
  vim /opt/elasticsearch-head/Gruntfile.js    #添加下面的内容

  connect: {
  server: {
  options: {
  port: 9100,
  hostname: "*",
  base: '.',
  keepalive: true
  }
  }
  }
  });
  增加hostname属性,设置为*
vim /opt/elasticsearch-head/_site/app.js   #修改head的连接地址
  this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.250.131:9200";    ##localhost修改成你es的服务器地址
  5、运行head
  然后在head目录中,执行npm install 下载以来的包:
  pwd
  /opt/elasticsearch-head
  [root@elk elasticsearch-head]# npm install
  

  重启你的elasticsearch
  su - elasticsearch -c "/opt/elasticsearch/bin/elasticsearch -d"
  启动nodejs
  cd /opt/elasticsearch-head/node_modules/grunt/bin
  nohup ./grunt server &   或者 -d 选项 后台运行
  这个时候,访问http://192.168.250.131:9100就可以访问head插件了.
  
使用RESTful API进行交互
查看当前索引和分片情况,稍后会有插件展示
  curl -i -XGET 'http://192.168.3.159:9200/?pretty' -d '{
  "query" {
  "match_all": {}
  }
  }'
  

  logstash:
  

  kibana:
  /opt/kibana/config/kibana.yml
  server.host: "192.168.250.131"
  server.maxPayloadBytes: 1048576
  server.name: "elk.cluster1.com"
  elasticsearch.url: "http://192.168.250.131:9200"
  nohup kibana -c kibana.yml &




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-668763-1-1.html 上篇帖子: elk系统搭建并收集nginx日志 下篇帖子: ELK+syslog+nginx访问日志收集+分词处理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表