ES5 单机和集群安装+head+cerebo

安装Elasticsearch

在es 5.0以后的版本需要java版本为1.8以上。否则启动时就会报错。

学习ES第一步就是安装运行它!

JAVA安装地址:www.java.com

ES下载地址:https://www.elastic.co/downloads/elasticsearch

tar xf elasticsearch-*.zip ;cd elasticsearch-*

执行以下命令可在前台启动:

./bin/elasticsearch

启动后,如果只有本地可以访问,尝试修改配置文件 elasticsearch.yml(注意配置文件格式不是以#开头的要空一格, :后要空一格) 为 network.host: 0.0.0.0

如果想在后台以守护进程模式运行,添加-d参数。

安装出现的问题

问题一error: can not run elasticsearch as root

  1. 因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户
  2. liunx创建新用户  然后给创建的用户加密码
  3. 给安装目录775 的权限
  4. su进入新用户 启动

问题二:ERROR: bootstrap checks failed

在elasticsearch.yml中配置,注意要在Memory下面:

    bootstrap.memory_lock: false

    bootstrap.system_call_filter: false

问题三:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

  1. 切换到root用户修改配置sysctl.conf
  2. vi /etc/sysctl.conf 

         添加下面配置:

                 vm.max_map_count=655360

         并执行命令:shell>  sysctl -p

问题四:ERROR: bootstrap checks failed max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536] max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]

  1. 切换到root用户,编辑limits.conf 添加类似如下内容 vi /etc/security/limits.conf   
  2.   添加如下内容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096  

问题五:max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

切换到root用户,进入limits.d目录下修改配置文件。

vi /etc/security/limits.d/90-nproc.conf  修改如下内容:

* soft nproc 1024 #修改为 * soft nproc 2048

问题六:修改了以上内核参数,但是非root用户不生效

方法1.重启

方法2.需启动用户为sudo用户

(1)sudo 到root用户,然后

(2)su - youuser

(3)然后再启动

ES5集群安装

三台机器,配置

192.168.10.10master and  data  and  head  and cerebo
192.168.10.11data
192.168.10.12data

三台机器都需要安装ES 5:

    下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.3.tar.gz

     解压:tar zxvf elasticsearch-5.3.0.tar.gz

三台机器除配置文件以外其他一样:

192.168.10.10:   

cluster.name: wx-application
node.name: node-1
network.host: 192.168.192.10
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
path.logs: /home/es/elasticsearch-5.5.3/logs
path.data: /home/es/elasticsearch-5.5.3/data
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.192.10"]
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

192.168.10.11:   

cluster.name: wx-application
node.name: node-2
network.host: 192.168.192.11
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
path.logs: /home/es/elasticsearch-5.5.3/logs
path.data: /home/es/elasticsearch-5.5.3/data
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.192.10"]
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

192.168.10.12:   

cluster.name: wx-application
node.name: node-3
network.host: 192.168.192.12
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
path.logs: /home/es/elasticsearch-5.5.3/logs
path.data: /home/es/elasticsearch-5.5.3/data
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.192.10"]
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

用非root用户启动:-d 后台启动:./elasticsearch-5.5.3/bin/elasticsearch -d

内网环境下head 插件安装

公网环境下,head插件需要安装 node,然后用npm安装grunt。

1.由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包

2.grunt是一个很方便的构建工具,可以进行打包压缩、执行等等的工作,5.0里的head插件就是通过grunt启动的。因此需要安装一下grunt。

既然是内网环境那么就需要找一台公网机器,将上面操作执行之后会在head目录下生成一个node_modules的文件夹。然后将整个head目录打包至内网机器。为寻求方便以下链接为我自己打包好的供ES5.x使用的head插件包(有需要的可以自己下载):

https://download.csdn.net/download/wangxin3618/10818935

修改head源码:

vim /home/es/elasticsearch-head/Gruntfile.js
connect: {
    server: {
        options: {
            port: 9100,
            hostname: '*',
            base: '.',
            keepalive: true
        }
    }
}
增加hostname属性,设置为*

修改连接地址:

目录:vim /home/es/elasticsearch-head/_site/app.js
修改head的连接地址:
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";  (修改为es 的master地址)
把localhost修改成你es的服务器地址,如:
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.192.10:9200";

运行head:

    ·先跳转到head目录下

    · grunt server &

安装cerebo

cerebo是kopf在es5上的替代者

wget https://github.com/lmenezes/cerebro/releases/download/v0.6.5/cerebro-0.6.5.tgz

bin/cerebro服务被启动在前台,可以通过nohup命令启动到后台,通过supervisor等进程管理工具进行管理。他并没有需要在命令行额外配置的地方,可以直接通过外网端口访问此时访问 http://ip:9000/ 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值