CDH中添加Elasticsearch服务

此前Elasticsearch我一直是单独搭建的,后来偶然发现可以在Cloudera Manager中添加ES服务,在搭建过程中这篇博客给了我很多帮助

https://www.cnblogs.com/zhangrui153169/p/11447423.html

但存在一些问题,在这里记录下来以作为这篇文章的补充,也希望能帮助大家减少踩坑。

一、制作Elasticsearch的Parcel包和csd文件

1.配置java,maven等环境变量

  java:

export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar:$CLASSPATH

 maven:

export MVN_HOME=/usr/local/maven
export PATH=$MVN_HOME/bin:$PATH

2.下载cm_ext

Cloudera提供的cm_ext工具,对生成的csd和parcel进行校验

  • Cloudera提供的cm_ext工具,对生成的csd和parcel进行校验
[root@cdh-001 ~]# mkdir -p /github/cloudera
[root@cdh-001 ~]# cd /github/cloudera
[root@cdh-001 cloudera]# git clone https://github.com/cloudera/cm_ext.git
[root@cdh-001 cloudera]# cd cm_ext
[root@cdh-001 cm_ext]# mvn package
  • 下载Elasticsearch安装包

[root@cdh-001 cloudera]# mkdir elasticsearch
[root@cdh-001 cloudera]# cd elasticsearch

将elasticsearch包上传到 /github/cloudera/elasticsearch 目录下,我用的elasticsearch-6.2.4版本,贴上下载地址:

https://www.elastic.co/cn/downloads/past-releases#elasticsearch

[root@cdh-001 elasticsearch]# ll
total 290568
-rw-r--r-- 1 root root  29056810 elasticsearch-6.2.4.tar.gz
[root@cdh-001 elasticsearch]# pwd
/github/cloudera/elasticsearch
  • 下载制作Parcel包和CSD文件的脚本
[root@cdh-001 cloudera]# git clone https://github.com/ibagomel/elasticsearch-parcel.git

 注意:这里是 /github/cloudera 目录

  • 制作 Elasticsearch 的Parcel包和CSD文件并校验
[root@cdh-001 cloudera]# cd elasticsearch-parcel
[root@cdh-001 elasticsearch-parcel]# POINT_VERSION=5 VALIDATOR_DIR=/github/cloudera/cm_ext OS_VER=el7 PARCEL_NAME=ElasticSearch ./build-parcel.sh /github/cloudera/elasticsearch/elasticsearch-6.2.4.tar.gz
[root@cdh-001 elasticsearch-parcel]# VALIDATOR_DIR=/github/cloudera/cm_ext CSD_NAME=ElasticSearch ./build-csd.sh

 OS_VER=el7 是指 linux 使用的Centos7.X版本

值得一提的是 路径一定要正确,pwd命令确认一下路径是有必要的

制作完成之后,elasticsearch-parcel 新增了build-parcel 和 build-csd文件夹,查看:

[root@cdh-001 elasticsearch-parcel]# ll build-parcel
total 28360
drwxr-xr-x 9 root root      155 ELASTICSEARCH-0.0.5.elasticsearch.p0.5
-rw-r--r-- 1 root root 29034518 ELASTICSEARCH-0.0.5.elasticsearch.p0.5-el7.parcel
-rw-r--r-- 1 root root      482 manifest.json

[root@cdh-001 elasticsearch-parcel]# ll build-csd
total 8
-rw-r--r-- 1 root root 5426 Oct 15 ELASTICSEARCH-1.0.jar

二、在Cloudrea Manager中安装部署Elasticsearch服务

1.将Parcel包:ELASTICSEARCH-0.0.5.elasticsearch.p0.5-el7.parcel 和 manifest.json 文件部署到httpd服务中

[root@cdh-001 ~]# mkdir -p /var/www/html/elasticsearch
[root@cdh-001 ~]# cd /var/www/html/elasticsearch
[root@cdh-001 elasticsearch]# cp /github/cloudera/elasticsearch-parcel/build-parcel/ELASTICSEARCH-0.0.5.elasticsearch.p0.5-el7.parcel ./
[root@cdh-001 elasticsearch]# cp /github/cloudera/elasticsearch-parcel/build-parcel/manifest.json ./

查看:

[root@cdh-001 elasticsearch]# ll
total 28360
-rwxrwxrwx 1 root root 29034518  ELASTICSEARCH-0.0.5.elasticsearch.p0.5-el7.parcel
-rwxrwxrwx 1 root root      482  manifest.json
[root@cdh-001 elasticsearch]# pwd
/var/www/html/elasticsearch

浏览器访问测试是否部署成功:

2.将生成的csd文件,复制到cloudera-manager-server服务所在节点的/opt/cloudera/csd目录下

[root@cdh-001 csd]# ll
total 8
-rwxrwxrwx 1 root root 5426  ELASTICSEARCH-1.0.jar
[root@cdh-001 csd]# pwd
/opt/cloudera/csd

 3.重启cloudera-scm-server服务

[root@cdh-001 ~]# cd /opt/cm-5.15.0/etc/init.d
[root@cdh-001 init.d]# ll
total 84
-rwxr-xr-x. 1 1106 4001  8871 May 24  2018 cloudera-scm-agent
-rwxr-xr-x. 1 1106 4001  8417 May 24  2018 cloudera-scm-server
-rwxr-xr-x. 1 1106 4001  4444 May 24  2018 cloudera-scm-server-db
-rw-r--r--  1 root root 51988 Jun 26  2019 QueryResult.java

[root@cdh-001 init.d]# ./cloudera-scm-server restart
Stopping cloudera-scm-server:                              [  OK  ]
Starting cloudera-scm-server:                              [  OK  ]

4.配置远程Parcel存储库

5.下载,分配,并激活 

6.添加服务(因为我已经添加了,所以无法选择)

 选择主机,定义ES集群名称(cluster.name),名称任意取,默认名称为data-lakes,但是集群的每台主机的集群名字需要一样,不然会被认为是另一个ES集群的主机。

 第一次添加失败,产生stdout(标准输出设备)和stderr(标准错误输出设备)两种日志,查看stdout完整日志发现:

需要修改服务器配置 

[root@cdh-001 ~]# vim /etc/security/limits.conf
#添加配置,*代表所有的用户都使用该配置
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096

再重启Elasticsearch,启动成功。

发布了2 篇原创文章 · 获赞 2 · 访问量 58

猜你喜欢

转载自blog.csdn.net/guoliduo/article/details/105072857
今日推荐