ElasticSearch.docx
- 文档编号:16260387
- 上传时间:2023-07-12
- 格式:DOCX
- 页数:14
- 大小:121.73KB
ElasticSearch.docx
《ElasticSearch.docx》由会员分享,可在线阅读,更多相关《ElasticSearch.docx(14页珍藏版)》请在冰点文库上搜索。
ElasticSearch
ElasticSearch
安装
内网访问
1.下载elasticsearch-6.1.3.tar.gz
2.解压Tar–zxvfelasticsearch-6.1.3.tar.gz
3.注意ES不支持JDK9
4.直接用./elasticsearch会出错,因为安全问题elasticsearch不让用root用户直接运行,所以要创建新用户
第一步:
liunx创建新用户adduserXXX然后给创建的用户加密码passwdXXX输入两次密码。
adduseres
第二步:
切换刚才创建的用户suXXX然后执行elasticsearch会显示Permissiondenied权限不足。
第三步:
给新建的XXX赋权限,chmod777*这个不行,因为这个用户本身就没有权限,肯定自己不能给自己付权限。
所以要用root用户登录付权限。
第四步:
root给XXX赋权限,chown-RXXX/你的elasticsearch安装目录。
chown-Res./elasticsearch-6.1.3
5../elasticsearch启动
6.使用/查看是否运行
外网访问
1.此时外网可能访问不了
elasticsearch默认restful-api的端口是9200不支持Ip地址,只能在本机用http:
//localhost:
9200来访问。
如果需要改变,需要修改配置文件。
默认情况下Elasticsearch的RESTful服务只有本机才能访问,也就是说无法从主机访问虚拟机中的服务。
为了方便调试,可以修改/etc/elasticsearch/config/elasticsearch.yml文件,加入以下两行:
network.bind_host:
“0.0.0.0”
network.publish_host:
_nonloopback:
ipv4
或去除network.host和http.port之前的注释,并将network.host的IP地址修改为本机外网IP。
然后重启,Elasticsearch关闭方法(输入命令:
ps-ef|grepelasticsearch,找到进程,然后kill掉就行了。
如果外网还是不能访问,则有可能是防火墙设置导致的。
2.启动时又你妈报错了,maxfiledescriptors[4096]forelasticsearchprocesslikelytoolow,increasetoatleast[65536]
以下网上找的方法没有卵用
于是我临时提高了vm.max_map_count的大小
*此操作需要root权限
[root@localhost~]#sysctl-wvm.max_map_count=262144
查看修改结果
[root@localhost~]#sysctl-a|grepvm.max_map_count
或者永久性修改
[root@localhost~]#cat/etc/sysctl.conf|grep-v"vm.max_map_count">/tmp/system_sysctl.conf
[root@localhost~]#echo"vm.max_map_count=262144">>/tmp/system_sysctl.conf
[root@localhost~]#mv/tmp/system_sysctl.conf/etc/sysctl.conf
mv:
是否覆盖"/etc/sysctl.conf"?
y
[root@localhost~]#cat/etc/sysctl.conf
#Systemdefaultsettingslivein/usr/lib/sysctl.d/00-system.conf.
#Tooverridethosesettings,enternewsettingshere,orinan/etc/sysctl.d/
#
#Formoreinformation,seesysctl.conf(5)andsysctl.d(5).
vm.max_map_count=262144
[root@localhost~]#sysctl-p
vm.max_map_count=262144
上面还有一个错误是关于jvm内存分配的问题heapsize[268435456]notequaltomaximumheapsize[2147483648],需要修改的jvm配置
[seven@localhostbin]$vim/usr/java/elasticsearch/config/jvm.options
用此方法改
[root@localhost~]#cp/etc/security/limits.conf/etc/security/limits.conf.bak
[root@localhost~]#cat/etc/security/limits.conf|grep-v"es">/tmp/system_limits.conf
[root@localhost~]#echo"eshardnofile65536">>/tmp/system_limits.conf
[root@localhost~]#echo"essoftnofile65536">>/tmp/system_limits.conf
[root@localhost~]#mv/tmp/system_limits.conf/etc/security/limits.conf
3.又有新的错误:
maxnumberofthreads[1024]foruser[es]istoolow,increasetoatleast[4096]
Vi/etc/security/limits.d/90-nproc.conf
softnproc1024改成4096
4.systemcallfiltersfailedtoinstall;checkthelogsandfixyourconfigurationordisablesystemcallfiltersatyourownrisk,问题原因:
因为Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动
解决方法:
在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:
bootstrap.memory_lock:
false
bootstrap.system_call_filter:
false
关闭防火墙
1.还是访问不了虚机的话,检查防火墙如开启要关掉
#查看防火墙状态serviceiptablesstatus
#关闭防火墙serviceiptablesstop
#查看防火墙开机启动状态chkconfigiptables--list
#关闭防火墙开机启动chkconfigiptablesoff
maxfiledescriptors[4096]forelasticsearchprocessistoolow,increasetoatleast[65536]
sysctl-wvm.max_map_count=655360
sysctl-a|grep"vm.max_map_count"
maxnumberofthreads[3818]foruser[es]istoolow,increasetoatleast[4096]
。
修改配置文件/etc/security/limits.conf,增加配置
* soft nproc 4096
* hard nproc 4096
可通过命令查看
ulimit-Hu
ulimit–Su
ulimit-Hn
ulimit–Sn
#========================ElasticsearchConfiguration=========================
#
#NOTE:
Elasticsearchcomeswithreasonabledefaultsformostsettings.
#Beforeyousetouttotweakandtunetheconfiguration,makesureyou
#understandwhatareyoutryingtoaccomplishandtheconsequences.
#
#Theprimarywayofconfiguringanodeisviathisfile.Thistemplatelists
#themostimportantsettingsyoumaywanttoconfigureforaproductioncluster.
#
#Pleaseconsultthedocumentationforfurtherinformationonconfigurationoptions:
#https:
//www.elastic.co/guide/en/elasticsearch/reference/index.html
#
#----------------------------------Cluster-----------------------------------
#
#Useadescriptivenameforyourcluster:
#
cluster.name:
es
#
#------------------------------------Node------------------------------------
#
#Useadescriptivenameforthenode:
#
node.name:
node-2
#
#Addcustomattributestothenode:
#
#node.attr.rack:
r1
#
#-----------------------------------Paths------------------------------------
#
#Pathtodirectorywheretostorethedata(separatemultiplelocationsbycomma):
#
path.data:
/opt/logs/es/data
#
#Pathtologfiles:
#
path.logs:
/opt/logs/es/log
#
#-----------------------------------Memory-----------------------------------
#
#Lockthememoryonstartup:
#
bootstrap.memory_lock:
false
#
#Makesurethattheheapsizeissettoabouthalfthememoryavailable
#onthesystemandthattheowneroftheprocessisallowedtousethis
#limit.
#
#Elasticsearchperformspoorlywhenthesystemisswappingthememory.
#
#----------------------------------Network-----------------------------------
#
#SetthebindaddresstoaspecificIP(IPv4orIPv6):
#
network.host:
192.168.11.20
#
#SetacustomportforHTTP:
#
http.port:
9200
#
#Formoreinformation,consultthenetworkmoduledocumentation.
#
#---------------------------------Discovery----------------------------------
#
#Passaninitiallistofhoststoperformdiscoverywhennewnodeisstarted:
#Thedefaultlistofhostsis["127.0.0.1","[:
:
1]"]
#
discovery.zen.ping.unicast.hosts:
["node1:
9300","node2:
9300","node3:
9300"]
#
#Preventthe"splitbrain"byconfiguringthemajorityofnodes(totalnumberofmaster-eligiblenodes/2+1):
#
discovery.zen.minimum_master_nodes:
3
#
#Formoreinformation,consultthezendiscoverymoduledocumentation.
#
#----------------------------------Gateway-----------------------------------
#
#BlockinitialrecoveryafterafullclusterrestartuntilNnodesarestarted:
#
#gateway.recover_after_nodes:
3
#
#Formoreinformation,consultthegatewaymoduledocumentation.
#
#----------------------------------Various-----------------------------------
#
#Requireexplicitnameswhendeletingindices:
#
#action.destructive_requires_name:
true
#
#network.bind_host:
"0.0.0.0"
#network.publish_host:
_nonloopback:
ipv4
启动
1.启动提示UnsupportedOperationException:
seccompunavailable:
requireskernel3.5+with
解决方案:
1、重新安装新版本的Linux系统
2、警告不影响使用,可以忽略
2../elasticsearch
HEAD插件
安装
注意:
ES5以后head不要放到plugins目录下,否则启动ES出现:
property[elasticsearch.version]ismissingforplugin
1.安装git插件
yum-yinstallgit
2.安装node.js
yum-yinstallwget
wgethttp:
//cdn.npm.taobao.org/dist/node/latest-v4.x/node-v4.4.3-linux-x86.tar.gz
3.解压
tar-zxvfnode-v4.4.3-linux-x86.tar.gz
4.设置环境变量vi/etc/profile
#zookeeper
ZOOKEEPER_HOME=/opt/test/zookeeper-3.4.11
#node
NODE_HOME=/opt/test/node-v4.4.3-linux-x86
#setjavaenvironment
JAVA_HOME=/opt/test/jdk1.8.0_161
JRE_HOME=/opt/test/jdk1.8.0_161/jre
FLUME_HOME=/opt/test/apache-flume-1.8.0-bin
CLASS_PATH=.:
$JAVA_HOME/lib/dt.jar:
$JAVA_HOME/lib/tools.jar:
$JRE_HOME/lib:
$ZOOKEEPER_HOME/lib
PATH=$PATH:
$JAVA_HOME/bin:
$JRE_HOME/bin:
$ZOOKEEPER_HOME/bin:
$FLUME_HOME/bin:
$NODE_HOME/bin
exportJAVA_HOMEJRE_HOMECLASS_PATHPATH
5.编译使配置立即生效source/etc/profile
6.验证是否安装成功
node–v
npm-v
如果报错
登录:
下载:
libgcc-4.4.7-18.el6.i686.rpm和libstdc++-4.4.7-18.el6.i686.rpm
安装:
rpm-ivhrpm-ivhlibgcc-4.4.7-18.el6.i686.rpm和rpm-ivhlibstdc++-4.4.7-18.el6.i686.rpm
如果安装出错,请执行yuminstallglibc.i686
7.安装head插件
gitclone
cdelasticsearch-head
8.执行npminstall
如果出错:
npmERR!
unabletogetlocalissuercertificate
执行:
npmconfigsetstrict-sslfalse
9.在elasticsearch-head目录下node_modules/grunt下如果没有grunt二进制程序,需要执行
cdelasticsearch-head
npminstallgrunt--save
10.修改head配置viGruntfile.js加入hostname
11.修改head的连接地址viGruntfile.js
启动
12.启动
cd./node_modules/grunt/bin/
前台启动:
./gruntserver
后台启动:
nohup./gruntserver&
如果出现notconnected
请修改elasticsearch.yml
http.cors.enabled:
true
http.cors.allow-origin:
"*"
KIBANA
安装
1.下载kibana-6.1.3-linux-x86_64.tar.gz
2.解压tar-zxvfkibana-6.1.3-linux-x86_64.tar.gz
3.修改config下vikibana.yml
server.port:
5601
server.host:
"0.0.0.0"
elasticsearch.url:
http:
//192.168.223.40:
9200
kibana.index:
".kibana"
启动
1.cd/opt/test/kibana-6.1.3-linux-x86_64/bin启动./kibana
2.访问url:
http:
//192.168.223.40:
5601
Logstash
安装
1.下载logstash-6.2.2.tar.gz
2.解压tar-zxvflogstash-6.2.2.tar.gz
3.的config下创建vikafka-logstash-es.conf
input{
kafka{
bootstrap_servers=>["192.168.223.40:
9092"]
group_id=>"1"
topics=>["kafkatopic"]
consumer_threads=>5
decorate_events=>true
codec=>"json"
}
}
output{
stdout{
codec=>rubydebug
}
elasticsearch{
user=>es
password=>es
hosts=>["192.168.223.40:
9200"]
index=>"test"
codec=>"json"
}
}
启动
1.启动命令bin/logstash-f/logstash安装位置/logstash-6.0.0/config/kafka-logstash-es.conf&
cd/opt/test/logstash-6.2.2/bin
./logstash-f../config/kafka-logstash-es.conf
2.访问KIBANAurl:
http:
//192.168.223.40:
5601
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ElasticSearch