Elasticsear搭建
2.1:创建用户:
(elasticsearch不能使用root用户)
useradd angel
passwd angel
2.2:解压安装包
tar -zxvf elasticsearch-5.5.2.tar.gz
2.3:修改配置文件
2.3.1:修改内存参数:
vim /config/jvm.options
将内存参数修改为:
-Xms512m
-Xmx512m
2.3.2:修改elasticsearch的集群参数
vim /config/elasticsearch.yml
cluster.name : cluster_es
node.name : es_1
path.data : /home/angel/elasticsearch-5.5.2/es_data/data
path.logs : /home/angel/elasticsearch-5.5.2/es_data/log
network.host : 192.168.77.10
discovery.zen.ping.unicast.hosts : ["192.168.77.10","192.168.77.11","192.168.77.12"]
bootstrap.memory_lock : false
bootstrap.system_call_filter : false
http.cors.enabled: true
http.cors.allow-origin: "*"
#xpack.security.enabled : false
字段解释:
bootstrap.memory_lock:设置为true来锁住内存。因为当jvm开始swapping时es的效率会降低,所以要保证它不swap,可以把ES_MIN_MEM和ES_MAX_MEM两个环境变量设置成同一个值,并且保证机器有足够的内存分配给es。同时也要允许elasticsearch的进程可以锁住内存
【注意】:当前的centos6.x版本不适用:bootstrap.memory_lock
bootstrap.system_call_filter检测操作系统是否支持:SecComp;false标识不检测,linux的一种安全机制(减少系统对外暴露的)
head插件可以访问es:
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled x-pack是否要进行安全认证,false标识不认证
xpack.monitoring.enabled 是否进行x-pack进行监控 false表示不认证
discovery.zen.ping.unicast.host:集群的节点
network.host:(当前节点的域名或者ip)
cluster.name:集群的名字
2.4:创建es的数据目录和日志文件目录
配置完es信息之后,在es的配置的路径下创建文件下:
path.data : /home/angel/elasticsearch-5.5.2/es_data/data
path.logs : /home/angel/elasticsearch-5.5.2/es_data/log
2.5:将es发送到其他机器上
cd /home/angel/
scp -r elasticsearch-5.5.2/ hadoop02:$PWD
scp -r elasticsearch-5.5.2/ hadoop03:$PWD
2.5:同时修改其他两台机器的配置
vim /config/elasticsearch.yml
node.name
network.host
2.6:安装elasticsearch的WEB插件
注意:elasticsearch的web插件是展示当前集群信息的WEB插件,因此只需要在一台机器上安装即可
2.6.1:解压elasticsearch-head插件安装包
需要将master.zip解压到elasticsearch/bin目录下
unzip master.zip
会生成elasticsearch-head-master

2.6.2:安装前端的node插件
1):cp node-v4.4.7-linux-x64.tar.gz /home/angel/elasticsearch-5.5.2/bin/
2):tar -zxvf node-v4.4.7-linux-x64.tar.gz

3):配置node的环境变量
export NODE_HOME=/home/angel/elasticsearch-5.5.2/bin/node-v4.4.7-linux-x64
export PATH=$PATH:$NODE_HOME/bin
export NODE_PATH=$NODE_HOME/lib/node_modules
注意:安装完环境变量,一定要source /etc/profile
2.6.3:安装启动es前端WEB插件的Grunt
1):cd /home/angel/elasticsearch-5.5.2/bin/elasticsearch-head-master
2):下载grunt:npm install grunt
注意:默认去国外的镜像源下载,所以为了提高速度,可以将镜像源修改:
npm config set registry http://registry.cnpmjs.org
npm info underscore

3):npm install -g grunt-cli

4):在输入命令:grunt (查看还有那些依赖没有下载)

5):根据缺少的依赖进行下载
npm install grunt-contrib-clean grunt-contrib-concat grunt-contrib-watch grunt-contrib-connect grunt-contrib-copy
(注意: grunt-contrib-jasmine是下载不下来的,因为系统版本是不对应的,但是不用管理它,对本课程无影响)
6):检查安装是否成功

7):修改head插件的源码
修改Gruntfile.js
vim elasticsearch-5.5.2/bin/elasticsearch-head-master/Gruntfile.js

8):修改连接地址:elasticsearch-5.5.2/bin/elasticsearch-head-master/_site/app.js

2.7:运行es
2.7.1:运行命令
/home/angel/elasticsearch-5.5.2/bin/elasticsearch
2.7.2:启动后如果服务器报错,需要修改如下信息
在启动过程中如果出现如下错误,则说明需要修改服务器的文件打开数和进程数和线程数的限制:
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max number of threads [1024] for user [angel] is too low, increase to at least [2048]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决:切换到root用户
1):修改服务器的文件打开数和进程数
vi /etc/security/limits.conf
* soft nofile 65536 单个用户可用的最大进程数量(软限制)
* hard nofile 65536 单个用户可用的最大进程数量(硬限制)
* soft nproc 65536 可打开的文件描述符的最大数(软限制)
* hard nproc 65536 可打开的文件描述符的最大数(硬限制)

2):修改单个JVM下可支撑的最大线程数
vi /etc/sysctl.conf (添加下面配置)
vm.max_map_count = 262144

并执行命令:sysctl -p
3):修改用户的最大进程数
vim /etc/security/limits.d/90-nproc.conf
* soft nproc 1024
* soft nproc 2048

2.8:运行elasticsearch的web插件
在elasticsearch-head-master目录下运行:
grunt server

2.9:登录es的WEB页面
访问页面:http://hadoop01:9100

Elasticsear搭建的更多相关文章
- 小记---------Elasticsear搭建
Elasticsear搭建 创建用户: useradd elasticsearch passwd elasticsearch 1.解压 tar -zxvf elasticsearch-5.5.2. ...
- Online Judge(OJ)搭建(第一版)
搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...
- Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境
一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- Angular企业级开发(5)-项目框架搭建
1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...
- 【分享】标准springMVC+mybatis项目maven搭建最精简教程
文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...
- 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题
千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
随机推荐
- 更新到.netcore3.0后找不到dotnet-ef的解决办法
在项目根目录下建立global.json文件 { "sdk": { "version": "2.2.402" } } 或使用命令 dotne ...
- 拼音检查python
#coding=utf-8 #!/usr/bin/python import sys, re, collections #读入文件 def read_file(filename): try: fp = ...
- memset函数及注意事项
memset函数的原型为:void * memset(void *ptr,int value,size_t num);用于为地址ptr开始的num个字节赋值value. memset函数的头文件为:C ...
- map member functions
http://www.cplusplus.com 搜了才发现map的成员函数这么多orz,跟着cplusplus按字典序走一遍叭(顺序有微调orz <1> map::at (c++11) ...
- Python字符串和正则表达式中的反斜杠('\')问题
在Python普通字符串中 在Python中,我们用'\'来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用 abc defg ...
- PHP 模拟http 请求
php 模拟请求类 <?php /** * fangdasheng * http 模拟请求 */ class Myhttp { private $apiUrl; // 构造函数 public f ...
- 使用Idea部署SSM项目后,访问路径为url:8080/项目名_war_exploded的解决方案
在tomcat配置页的Deployment下,修改Application context为/,即可直接使用url:8080访问项目主页.
- poj2186--tarjan+缩点(有向图的强连通分量中点的个数)
题目大意: 每一头牛的愿望就是变成一头最受欢迎的牛.现在有N头牛,给你M对整数(A,B),表示牛A认为牛B受欢迎. 这 种关系是具有传递性的,如果A认为B受欢迎,B认为C受欢迎,那么牛A也 ...
- Chrome之谷歌插件开发
最近碰到一个需求,需要在某个平台上批量的添加好友,如果是人工点击,可以操作,但是效率并不高,人工成本较高.就打算使用浏览器插件的方式来完成这件重复性的工作. 介绍: Chrome插件的本质就是一个由 ...
- var与let变量for遍历的问题
var Liarry = document.getElementsByTagName('li'); /**方法一*描述:自执行函数,将变量当参数传入(闭包的思想,保存当前的值).*/ for (var ...