elasticsearch安装使用

elasticsearch是支持Linux和window系统的,elasticsearch官网上最新的稳定版本是6,2,4,该版本不支持jdk8以下的,所以需要在你的系统下安装好jdk。
安装步骤:

1、下载elasticsearch的rpm包:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.2-x86_64.rpm

2. 安装elasticsearch

rpm install -y elasticsearch-7.4.2-x86_64.rpm

3. 启动

systemctl start elasticsearch
或者
/etc/init.d/elasticsearch start

4. 验证是否启动

运行
curl http://localhost:9200/
在PowerShell运行
Invoke-RestMethod http://localhost:9200

5.配置elasticsearch

[root@linux-node1 elasticsearch]# grep '^[a-Z]' /etc/elasticsearch/elasticsearch.yml
cluster.name: elk-cluster1 #集群名称
path.data: /elk/data/ # 配置路径
path.logs: /elk/logs/
node.name: elk-node1 #节点名称
network.host: 192.168.1.1 #配置本地IP地址获域名
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.1.1", "192.168.1.2"] #配置广播范围

6. 配置路径 问题解决

mkdir /elk
chown elasticsearch.elasticsearch /elk 给elk目录授权给elasticsearch
重启 systemctl restart elasticsearch

elasticsearch-head 配置使用

git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start & or grunt server &
open http://localhost:9100/

配置elasticsearch 允许elasticsearch-head连接elasticsearch

http.cors.enabled: true   # 开启http访问
http.cors.allow-origin: “*” # 可访问的IP地址

elasticsearch内存优化

查看elasticsearch状态

[root@linux-node1 ~]# ps -ef |grep elasticsearch
elastic+ 3964 1 2 10:58 ? 00:00:53 /bin/java -Xms2g -Xmx2g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+Us
eCMSInitiatingOccupancyOnly -XX:+AlwaysPreTouch -server -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -Djdk.io.permissi
onsUseCanonicalPath=true -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dlog4j.shutdo
wnHookEnabled=false -Dlog4j2.disable.jmx=true -Dlog4j.skipJansi=true -XX:+HeapDumpOnOutOfMemoryError -Des.path.home=/usr/share/elasticsearch -cp
/usr/share/elasticsearch/lib/* org.elasticsearch.bootstrap.Elasticsearch -p /var/run/elasticsearch/elasticsearch.pid --quiet -Edefault.path.logs=
/var/log/elasticsearch -Edefault.path.data=/var/lib/elasticsearch -Edefault.path.conf=/etc/elasticsearch
root 4083 1539 0 11:40 pts/0 00:00:00 grep --color=auto elasticsearch

可以看到elasticsearch可使用的最小和最大内存都是2G

官方文档

https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html

修改启动脚本

vim /usr/lib/systemd/system/elasticsearch.service
# 最下面添加
LimitMEMLOCK=infinity systemctl daemon-reload
systemctl restart elasticsearch

修改elastic配置文件锁定内存,这样在后期数据量比较大的时候,运行速度会比较快

vim /etc/elasticsearch/elasticsearch.yml

bootstrap.memory_lock: true

更改jvm.options 根据自己电脑的配置增加运行内存  最大32G

vim /etc/elasticsearch/jvm.options

# add code

-Xms3g
-Xmx3g

获取节点状态值

curl -sXGET http://192.168.56.12:9200/_cluster/health?pretty=true

使用脚本获取节点状态值  然后可以和zabbix结合报警

import json
import subprocess
false = "false"
obj = subprocess.Popen(("curl -sXGET http://192.168.56.12:9200/_cluster/health?pretty=true"),shell=True,st
dout=subprocess.PIPE)
data = obj.stdout.read()
data1 = json.loads(data)
status=data1.get("status")
if status == "green":
print("")
else:
print("")

最新文章

  1. Linux下的C Socket编程 -- 简介与client端的处理
  2. linux下内存泄露检测工具Valgrind介绍
  3. maven-腾讯SDK(QQ)接口java引入pom配置
  4. SPFA+Dinic HDOJ 3416 Marriage Match IV
  5. android html 与webview属性从冲突
  6. 前端与php的sublime text3常用插件
  7. 深入浅出Attribute (转载)
  8. try...catch...finally中try块发生的事件顺序
  9. PHPDocumentor代码注释规范说明
  10. 团队项目(spring会议)
  11. 使用Eclipse开发及测试Spark的环境搭建及简单测试
  12. css盒模型研究
  13. [日常] Codeforces Round #441 Div.2 实况
  14. 牛刀小试之用pytorch实现LSTM
  15. Django--CRM--菜单展示, 删除合并, 权限展示
  16. git学习小游戏
  17. 0 vs工程添加sdk
  18. day11 匿名函数
  19. sql server 拼接字段
  20. Windows关闭开机自启项

热门文章

  1. vscode左侧栏显示
  2. iOS UIView视图的图层控制
  3. GitLab初识以及代码迁移
  4. 分布式session的几种实现方式
  5. klia linux tools 使用方法整理
  6. java--反射的基本概念
  7. Centos7安装教程
  8. C#解析多层Json数据
  9. 用js刷剑指offer(字符串的排列)
  10. IoC与DI的理解