es安装脚本
#!/bin/bash
file_name="/sdzw/es5/conf/es.config"
#安装目录
install_dir="/es5/esinstall"
#es数据目录
es_dir="/data/es5data"
network_host=`cat ${file_name} | grep network_host`
network_host=${network_host#*=}
#节点名
node_name="\"$network_host\""
hosts=`cat ${file_name} | grep hosts`
hosts=${hostst#*=}
if[ $1 ]
then
jvm_options=$1
else
jvm_options="8g"
fi
jarpath="/es5/source"
mkdir_cmd="mkdir -p ${install_dir}"
sed -i 'a\fs.file-max=65536' /etc/sysctl.conf
sysctl -p
#修改环境变量
sed -i '$a\export NODE_HOME=/es5/esinstall/node-v6.9.1-l-linux-x64' /etc/profile
sed -i '$a\export PATH=$PATH:$NODE_HOME/bin' /etc/profile
source /etc/profile
userdel es5
adduser es5
if [ -f ${es_dir} ]
then
echo "数据目录已存在"
else
mkdir -p ${es_dir}
fi
chmod 777 /data/es5data
if [ -f ${install_dir} ]
then
echo "安装目录已存在"
else
mkdir_cmd
fi
chmod es5:es5 -R ${install_dir}
tar -xzvf ${jarpath}/elasticsearch-5.4.0.tar.gz -C ${install_dir}
tar -xzvf ${jarpath}/eshead.tar.gz -C ${install_dir}
tar -xzvf ${jarpath}/node.tar.gz -C ${install_dir}
chown es5:es5 -R {install_dir}/elasticsearch-5.4.0
chown es5:es5 -R {install_dir}/elasticsearch-head
chown es5:es5 -R {install_dir}/node-v6.9.1-linux-x64
#修改配置文件
sed -i "/#node.name: node-1/a\node.name: ${node_name}" ${install_dir}/elasticsearch-5.4.0/config/elasticsearch.yml
sed -i "s/-Xms2g/-Xms${ jvm_options}/g" ${install_dir}/elasticsearch-5.4.0/config/jvm.options
sed -i "s/-Xmx2g/-Xmx${ jvm_options}/g" ${install_dir}/elasticsearch-5.4.0/config/jvm.options
cat >> ${install_dir}/elasticsearch-5.4.0/config/elasticsearch.yml
discovery.zen.ping.unicast.hosts: ${hosts}
network.host: ${network_host}
EOF
echo '注册系统服务'
cp -af /es5/conf/esserver /etc/init.d/esserver
chmod +x /etc/init.d/esserver
chkconfig_list=`chkconfig --list 2>&1`
if echo "$chkconfig_list" | grep -q "esserver" ; then
chkconfig --del esserver
fi
chkconfig --add esserver
echo "启动es"
su es5 -c "nohup /es5/esinstall/elasticsearch-5.4.0/bin/elasticsearch >> /dev/null &"
echo "es系统服务注册成功"
es安装脚本的更多相关文章
- mysql 自动备份和nginx自动安装脚本
一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 ...
- Linux安装脚本需要交互之如何实现自动安装
Linux中shell脚本运行时经常需要进行交互,比如安装软件的过程中对license声明的确认,需要输入yes,回车之类的确认信息.这个在自动化安装的时候就会是个问题. 通常对于这个问题比较灵活的解 ...
- iredmail安装脚本分析(一)---iRedmail.sh
iredmail是一套以postfix为核心的整合邮件系统的安装脚本,可以达到快速部署邮件服务器的目的.为了让自己不遗忘shell的语法,所以闲来无事,学习一下他的代码. 我从官网下载他的最新版,解压 ...
- CentOS 6、7下pptp vpn一键安装脚本
之前有折腾过<CentOS 6.7下IPSEC/L2TP VPN一键安装脚本>,不稳定.不支持IOS,因此换成pptp,并已经添加到<lnmp一键安装包>.这个脚本可以单独使用 ...
- 17.KVM安装之虚拟磁盘,安装脚本
1.创建磁盘 vm.list 指定虚拟磁盘名称和主机名 create_vm.sh #创建vm.list中的虚拟磁盘,并指定大小100G #!/bin/bash VM_DIR="/opt ...
- 一个比较完整的Inno Setup 安装脚本(转)
一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...
- windows 服务安装脚本拾遗
转自:http://blog.csdn.net/susubuhui/article/details/7881096 1.安装脚本 echo 请按任意键开始安装客户管理平台的后台服务 echo. pau ...
- Linux环境下JDK/Eclipse一键安装脚本
-------------------------------------------------------------------- author:jiangxin Email:jiangxinn ...
- 一个比较完整的Inno Setup 安装脚本
一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...
随机推荐
- python调用.so
python调用动态链接库的基本过程 动态链接库在Windows中为.dll文件,在linux中为.so文件.以linux平台为例说明python调用.so文件的使用方法. 本例中默认读者已经掌握动态 ...
- linux下环境变量设置的问题
在当前环境变量前新增加一个路径 export PATH=/your/bin/path:$PATH export LD_LIBRARY_PATH=/your/lib/path:$LD_LIBRARY_P ...
- MS SQL Server迁移至Azure SQL
SQL Server的数据目前是存在于公司服务器的,现时需要将它迁移至Azure SQL 迁移分两种 数据库结构复制 数据库结构复制与数据迁移至Azure SQL 第1种方法针对的是将现有数据库创建新 ...
- Java进阶步骤
一.基础篇 面向对象 什么是面向对象 面向对象.面向过程 面向对象的三大基本特征和五大基本原则 平台无关性 Java如何实现的平台无关 JVM还支持哪些语言(Kotlin.Groovy.JRuby.J ...
- CodeForces 723F st-Spanning Tree
$dfs$,构造. 类似于$k$度限制生成树的想法,可以将$s$和$t$先从图中删去,将剩下的部分求连通块,每个连通块内部很容易构造生成树,每个连通块缩成一个点来处理. 连通块分三种: $1$.只与$ ...
- Nginx反代,后端一个IP绑定多个SSL证书,导致连接失败之解决方法:HTTPS和SNI扩展
默认:SSL协议进行握手协商进行连接的时候,默认是不会发送主机名的,也就是是以IP的形式来进行https连接握手协商的,这就导致一个问题,当一台服务器上有多个虚拟主机使用同一个IP的时候, Nginx ...
- 【剑指offer】9、斐波拉契数列
面试题9.斐波拉契数列 题目: 输入整数n,求斐波拉契数列第n个数. 思路: 一.递归式算法: 利用f(n) = f(n-1) + f(n-2)的特性来进行递归,代码如下: 代码: long long ...
- Section One
1.1.1 #include <iostream> using namespace std; int main() { int a,b,N; cin >> N; while ( ...
- A/B Problem(大数)
描述 做了A+B Problem,A/B Problem不是什么问题了吧! 输入 每组测试样例一行,首先一个号码A,中间一个或多个空格,然后一个符号( / 或者 % ),然后又是空格,后面又是一个号码 ...
- android viewpager fragment 优化 切换界面 延时加载
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 使用 碎片的 设置用户可见暗示visible hint 这个方法来做到. hint 是 ...