`
qianshangding
  • 浏览: 124865 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Elasticsearch之servicewrapper安装

 
阅读更多
首先通过git从https://github.com/elasticsearch/elasticsearch-servicewrapper下载该项目。
然后将下载下来的项目的service目录拷贝到elasticsearch安装目录下的bin目录。
在service目录执行:
chmod a+x elasticsearch
然后就可以启动了。
./elasticsearch console 在前台运行es
./elasticsearch start 在后台运行es
./elasticsearch stop 停止es
./elasticsearch install 使es作为服务在服务器启动时自动启动
./elasticsearch remove 取消启动时自动启动

servicewrapper配置文件
[root@bicloud75 service]# pwd
/home/elasticsearch-1.4.0/bin/service
[root@bicloud75 service]# vi elasticsearch.conf 

set.default.ES_HOME=<Path to Elasticsearch Home>
set.default.ES_HEAP_SIZE=2048  //因为是测试机器,设置的内存比较少,服务器好的话,可以设置大一些
set.default.ES_MIN_SIZE=2048
set.default.ES_MAX_SIZE=2048

#Fish
#JVM参数Elasticsearch默认值Environment变量:
#-Xms      256m                         ES_MIN_MEM
#-Xmx      1g                           ES_MAX_MEM
#-Xms and -Xmx                          ES_HEAP_SIZE
#-Xmn                                           ES_HEAP_NEWSIZE
#-XX:MaxDirectMemorySize        ES_DIRECT_SIZE

#********************************************************************
# Wrapper Timeout Properties
#********************************************************************
# How long to wait for the JVM to start (in seconds)
wrapper.startup.timeout=300
# How long to wait for the JVM to stop (in seconds)
wrapper.shutdown.timeout=300
# When a ping will timeout to consider the JVM hung (in seconds)
wrapper.ping.timeout=300

#********************************************************************
# Wrapper Java Properties
#********************************************************************
# Java Application
wrapper.java.command=java

# Tell the Wrapper to log the full generated Java command line.
#wrapper.java.command.loglevel=INFO

wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp

wrapper.working.dir=%ES_HOME%

# Java Classpath (include wrapper.jar)  Add class path elements as
#  needed starting from 1
wrapper.java.classpath.1=%ES_HOME%/bin/service/lib/wrapper.jar
wrapper.java.classpath.2=%ES_HOME%/lib/elasticsearch*.jar
wrapper.java.classpath.3=%ES_HOME%/lib/*.jar
wrapper.java.classpath.4=%ES_HOME%/lib/sigar/*.jar

# Java Library Path (location of Wrapper.DLL or libwrapper.so)
wrapper.java.library.path.1=%ES_HOME%/bin/service/lib

# Java Bits.  On applicable platforms, tells the JVM to run in 32 or 64-bit mode.
wrapper.java.additional.auto_bits=TRUE

# Java Additional Parameters
wrapper.java.additional.1=-Delasticsearch-service
wrapper.java.additional.2=-Des.path.home=%ES_HOME%
wrapper.java.additional.3=-Xss256k
wrapper.java.additional.4=-XX:+UseParNewGC
wrapper.java.additional.5=-XX:+UseConcMarkSweepGC

# Initial Java Heap Size (in MB)
wrapper.java.initmemory=%ES_HEAP_SIZE%

# Maximum Java Heap Size (in MB)
wrapper.java.maxmemory=%ES_HEAP_SIZE%
...(更多)

安装出现过如下问题:
[root@bicloud75 service]# sh ./elasticsearch start
: command not foundne 2: 
: command not foundne 4: 
: command not foundne 6: 
'/elasticsearch: line 138: syntax error near unexpected token `in
'/elasticsearch: line 138: `case $0 in
或者
[root@bicloud75service]# ./elasticsearch start
-bash: bin/service/elasticsearch: /bin/sh^M: bad interpreter: 没有那个文件或目录

在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。

分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。

解决:1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。
如果是 Notepad++ 则是在: 编辑 -> EOL Conversion -> 转换为 UNIX 格式 中。

2)也可在Linux中转换:
首先要确保文件有可执行权限
#sh>chmod a+x filename

然后修改文件格式
#sh>vi filename

利用如下命令查看文件格式
:set ff 或 :set fileformat

可以看到如下信息
fileformat=dos 或 fileformat=unix

利用如下命令修改文件格式
:set ff=unix 或 :set fileformat=unix

:wq (存盘退出)

最后再执行文件
#sh>./filename


修改步骤:
vi elasticsearch
按esc
输入(:set ff=unix)
再按esc
再输入(:wq)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics