这篇文章给大家分享的是Linux中ElasticSearch的详细安装部署教程,相信大部分人都还不知道怎么安装部署,为了让大家学会,给大家总结了以下内容,话不多说,一起往下看吧。
成都创新互联公司于2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元拜泉做网站,已为上家服务,为拜泉各地企业和个人服务,联系电话:189820811081. 操作系统:CentOS 7.4
2. 安装Elasticsearch前提条件:JDK1.8及以上,我这里使用的版本是 jdk1.8.0_181
3. 目前Elasticsearch最新的版本是 7.5.1,我这里使用的版本是 5.2.2
说明:ElasticSearch的运行不能用root执行,必须普通用户来启动。
一、jdk 安装
JDK安装
二、elasticsearch安装1.创建用户 [root@test-01 ~]# groupadd elastic [root@test-01 ~]# useradd elastic -g elastic -m
2.下载安装 [root@test-01 ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz [root@test-01 ~]# tar zxvf elasticsearch-5.2.2.tar.gz [root@test-01 ~]# mv elasticsearch-5.2.2 /usr/loca/elasticsearch //创建数据及日志目录 [root@test-01 ~]# mkdir -p /data/elasticsearch/data [root@test-01 ~]# mkdir -p /data/elasticsearch/logs //添加权限 [root@test-01 ~]# chown elastic:elastic elasticsearch /usr/loca/elasticsearch -R [root@test-01 ~]# chown elastic:elastic elasticsearch /data/elasticsearch/logs -R [root@test-01 ~]# chown elastic:elastic elasticsearch /data/elasticsearch/data -R
3.修改配置文件(修改方法参考如下:)集群配置文件略同 [root@test-01 ~]# cat /usr/local/elasticsearch/config/elasticsearch.ym l egrep -v '^(#|$)' cluster.name: es_cluster node.name: node-01 //随机定义 node.master: true //主true 从false node.data: true path.data: /data/elasticsearch/data path.logs: /data/elasticsearch/logs network.host: 192.168.0.164 http.port: 9200 transport.tcp.port: 9300 discovery.zen.ping.unicast.hosts: ["192.168.0.165", "192.168.0.164"] discovery.zen.minimum_master_nodes: 1 xpack.security.enabled: true http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-headers: Authorization,Content-Type xpack.security.authc: accept_default_password: true
解释说明: bootstrap.memory_lock: false bootstrap.system_call_filter: false 一看就知道是关于内用访问的方面的配置 cluster.name 集群名字,同一个集群中使用相同名字,单机就随意 node.name: node-01 节点名字 node.master: 是否为集群的master机器 node.data: true 是否作为数据节点 network.host: 192.168.0.164 这个不用自然是配置ip地址的,也可以配置成0.0.0.0 http.port: 9200 端口号,不配置的话默认9200 discovery.zen.ping.unicast.hosts: [“192.168.0.165”,”192.168.0.164”] 这个就是配置集群的时候要用的到了,[]中填上集群中其他集群的ip的地址,如果是master的话请把所有salve的机器地址填上 discovery.zen.minimum_master_nodes: 1 关于这个值配置多少合适的话大家去搜一下,自己权衡一下集群,这里我用了3台机器模拟集群,所以填上2。 http.cors.enabled: true 这个参数的设置和下面一个配置就关于ip的访问策略了,如果你发现其他ip地址访问不了就有可以这参数没有配置
4.调整系统参数 [root@test-01 ~]# vim /etc/security/limits.conf root soft nofile 65535 root hard nofile 65535 * soft nofile 65536 * hard nofile 131072 * soft nproc 2048 [root@test-01 ~]# vim /etc/sysctl.conf vm.max_map_count=662144 vm.overcommit_memory = 1 执行命令,使配置文件生效 [root@test-01 ~]# sysctl –p
5.启动与停止 [root@test-01 ~]# su elastic -c "/usr/local/elasticsearch/bin/elasticsearch -d" [root@test-01 ~]# kill -9 `ps aux|grep [e]lasticsearch |grep -v tail|awk '{print $2}'`
三、安装head插件 一般安装在/usr/local/elasticsearch/elasticsearch-head路径下 1.安装node 源码安装方法如下: [root@test-01 ~]# yum -y install gcc make gcc-c++ openssl-devel 下载源码及解压: [root@test-01 ~]# wget http://nodejs.org/dist/v4.4.7/node-v4.4.7-linux-x64.tar.gz [root@test-01 ~]# tar zxvf node-v4.4.7-linux-x64.tar.gz [root@test-01 ~]# mv node-v4.4.7-linux-x64 /usr/local/node [root@test-01 ~]# ln -s /usr/local/node/bin/node /usr/local/bin/node [root@test-01 ~]# ln -s /usr/local/node/bin/npm /usr/local/bin/npm [root@test-01 ~]# node -v 2.安装grunt grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.2里的head插件就是通过grunt启动的。因此需要安装一下grunt: [root@test-01 ~]# git clone git://github.com/mobz/elasticsearch-head.git [root@test-01 ~]# cd elasticsearch-head [root@test-01 ~]# npm install -g grunt-cli //执行后会生成node_modules文件夹 [root@test-01 ~]# npm install 注意:5.0以上,elasticsearch-head 不能放在elasticsearch的 plugins、modules 目录下,否则elasticsearch启动会报错。 修改vim Gruntfile.js文件:增加hostname属性,设置为*
3.启动grunt [root@test-01 ~]# grunt server & 不安装 grunt 也可以启动: [root@test-01 ~]# npm run start &
看完这篇文章,你们学会在Linux中ElasticSearch的安装部署了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。