最近在调试测试星环TDH大数据平台,遇到Search(ElasticSearch5.4.1)9300端口服务无法跑通,为了了解开源ES与星环Search的区别,配置ES对应版本,以做测试。
具体问题为,至今未调通:
(问题解决更新说明:此问题已明确并解决。该问题是由于TDH5.2.3版本基于开源ElasticSearch5.4.1集成并做了相应的改造,因此,采用开源ES访问方式不能直接访问TDH的Search;解决方案:从TDH厂商咨询,拿到THD版本对应的SDK和相应访问Search的Demo,基于此SDK和Demo调整程序兼容Search,问题得到解决)
下面安装配置开源ElasticSearch 5.4.1
1、官网下载,想下载哪个版本,就修改末尾的版本号;比如5.4.1,路径末尾就是5-4-1
https://www.elastic.co/cn/downloads/past-releases/elasticsearch-5-4-1
2、本次下载的tar包 elasticsearch-5.4.1.tar.gz,通过xftp上传至/opt下
3、安装配置,环境 RedHat 6.4 x64
3.1.整体规划
为ES服务创建esusr用户(用于启动和管理ES服务,必须非root用户);创建ES所需的data目录和logs目录,分别用于存储数据和日志;路径规划/opt/ES/data 和/opt/ES/logs
创建用户和所需目录:
#useradd esusr ; echo 'esusr:esusr'|chpasswd
#mkdir -p /opt/ES/data /opt/ES/logs
#tar -xzvf /opt/elasticsearch-5.4.1.tar.gz
#chown -R esusr:esusr /opt/ES /opt/elasticsearch-5.4.1
3.2.JDK配置
依赖JDK版本最低为1.8,JDK放到/opt下 jdk1.8.0_92.tar.gz
#tar -xzvf /opt/ jdk1.8.0_92.tar.gz
3.3.环境变量配置
#su - esusr
$vim .bash_profile
export JAVA_HOME=/opt/jdk1.8.0_92
export ES_HOME=/opt/elasticsearch-5.4.1
export PATH=$JAVA_HOME/bin:$PATH
3.4.系统参数配置
#配置limits.conf文件,配置重要文件前,养成备份好习惯!
cp /etc/security/limits.conf /etc/security/limits.conf.bak`date +'%y%m%d%H%M'`
NewUser=esusr
echo "$NewUser soft nofile 65536" >> /etc/security/limits.conf
echo "$NewUser hard nofile 65536" >> /etc/security/limits.conf
echo "$NewUser soft memlock unlimited" >> /etc/security/limits.conf
echo "$NewUser hard memlock unlimited">> /etc/security/limits.conf
echo "$NewUser soft nproc 2048" >> /etc/security/limits.conf
echo "$NewUser hard nproc 2048" >> /etc/security/limits.conf
echo 'limits.conf配置情况:' >> initEnv.log
unset NewUsr
more /etc/security/limits.conf|grep -v '^#' >>initEnv.log
#vi /etc/security/limits.d/90-nproc.conf ---/etc/security/limits.d/xx-nproc.conf 解决报错【1】
* soft nproc 2048
#配置/etc/sysctl.conf
#-----------禁用IPV6设置-----------------------------------------------------
echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
echo 'net.ipv6.conf.all.disable_ipv6 =1' >> /etc/sysctl.conf
echo 'net.ipv6.conf.default.disable_ipv6 =1' >> /etc/sysctl.conf
#-----------修改TCP监听队列大小
echo 2048 > /proc/sys/net/core/somaxconn
cp /etc/sysctl.conf /etc/sysctl.conf.bak`date +'%y%m%d%H%M'`
echo 'net.core.somaxconn = 2048' >> /etc/sysctl.conf
#------------内存交换比例调整为最低
echo 'vm.overcommit_memory = 1'>>/etc/sysctl.conf
echo 'vm.swappiness=1' >> /etc/sysctl.conf
#------------大页内存策略(立即生效),并配置开机自主生效
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >>/etc/rc.local
#------------最大虚拟内存空间调整【2】
echo 'vm.max_map_count = 262144' >> /etc/sysctl.conf
3.5.启动服务,查看日志输出
[3]因为Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,修改为false
#vim elasticsearch.yml
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
3.6.ES服务启动并查看
临时配置堆内存大小
[esusr]$ export ES_HEAP_SIZE=1G
3.7.elasticsearch.yml参数配置详解------待续...