使用shell脚本实现自动化部署HBASE集群
2014-11-25 00:34
567 查看
首先,要安装好hadoop1.0.4,本例中主节点的主机名为的master,从节点的主机名分别是slave1,slave2,slave3,用户名为hadoop,使用的hbase版本为hbase-0.94.6。安装好hadoop后确保HDFS能够正常存储文件,在root下运行如下脚本可以实现HBASE集群的快速搭建。
安装路径为/usr/hbase
安装完成时要更改所属主为hadoop用户
Shell代码如下:
#!/bin/bash
tar -zxf hbase-0.94.6.tar.gz -C /usr
mv /usr/hbase-0.94.6 /usr/hbase
echo 'export HBASE_HOME=/usr/hbase' >> /etc/profile
echo 'export PATH=$PATH:$HBASE_HOME/bin' >> /etc/profile
#echo 'export CLASSPATH=.:$HBASE_HOME/lib:$CLASSPATH' >> /etc/profile
source /etc/profile
echo 'export JAVA_HOME=/usr/java/jdk1.6.0_32' >> /usr/hbase/hbase-env.sh
echo 'export HBASE_PID_DIR=/usr/hbase/pids' >> /usr/hbase/hbase-env.sh
echo 'export HBASE_MANAGES_ZK=true' >> /usr/hbase/hbase-env.sh
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>true</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.cluster.distributed</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>master,slave1,slave2,slave3</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.zookeeper.quorum</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>/usr/hbase/tmp/zookeeper</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.zookeeper.property.dataDir</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>hdfs://master:60000</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.master</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>hdfs://master:9000/hbase</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.rootdir</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '1d' /usr/hbase/conf/regionservers
echo 'slave1' >> /usr/hbase/conf/regionservers
echo 'slave2' >> /usr/hbase/conf/regionservers
echo 'slave3' >> /usr/hbase/conf/regionservers
chown -R hadoop:hadoop /usr/hbase/
scp -r /usr/hbase root@slave1:/usr/
scp -r /usr/hbase root@slave2:/usr/
scp -r /usr/hbase root@slave3:/usr/
for i in $(seq 3)
do
ssh slave$i "chown -R hadoop:hadoop /usr/hbase"
done
安装路径为/usr/hbase
安装完成时要更改所属主为hadoop用户
Shell代码如下:
#!/bin/bash
tar -zxf hbase-0.94.6.tar.gz -C /usr
mv /usr/hbase-0.94.6 /usr/hbase
echo 'export HBASE_HOME=/usr/hbase' >> /etc/profile
echo 'export PATH=$PATH:$HBASE_HOME/bin' >> /etc/profile
#echo 'export CLASSPATH=.:$HBASE_HOME/lib:$CLASSPATH' >> /etc/profile
source /etc/profile
echo 'export JAVA_HOME=/usr/java/jdk1.6.0_32' >> /usr/hbase/hbase-env.sh
echo 'export HBASE_PID_DIR=/usr/hbase/pids' >> /usr/hbase/hbase-env.sh
echo 'export HBASE_MANAGES_ZK=true' >> /usr/hbase/hbase-env.sh
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>true</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.cluster.distributed</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>master,slave1,slave2,slave3</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.zookeeper.quorum</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>/usr/hbase/tmp/zookeeper</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.zookeeper.property.dataDir</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>hdfs://master:60000</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.master</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t</property>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<value>hdfs://master:9000/hbase</value>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<name>hbase.rootdir</name>' /usr/hbase/conf/hbase-site.xml
sed -i '24a\\t<property>' /usr/hbase/conf/hbase-site.xml
sed -i '1d' /usr/hbase/conf/regionservers
echo 'slave1' >> /usr/hbase/conf/regionservers
echo 'slave2' >> /usr/hbase/conf/regionservers
echo 'slave3' >> /usr/hbase/conf/regionservers
chown -R hadoop:hadoop /usr/hbase/
scp -r /usr/hbase root@slave1:/usr/
scp -r /usr/hbase root@slave2:/usr/
scp -r /usr/hbase root@slave3:/usr/
for i in $(seq 3)
do
ssh slave$i "chown -R hadoop:hadoop /usr/hbase"
done
相关文章推荐
- 使用shell脚本实现自动化部署hadoop集群
- 使用shell脚本实现客户端应用自动化打包——mac
- 在linux下使用shell脚本自动化完成hadoop集群搭建
- 使用Shell脚本实现自动化静默安装Oracle软件
- 自动化运维-使用Shell脚本简单实现
- 使用 Perl 脚本实现交互式命令行程序的管理与测试自动化
- 用Shell脚本实现自动化完成属于自己的微型Linux!(二)
- 使用shell脚本实现USB设备的加载与文件复制
- 使用c和shell实现远程tomcat的重启备份脚本
- 用Shell脚本实现自动化完成属于自己的微型Linux!(一)
- 使用linux的shell脚本实现在当前行重复动态显示时间等字符串信息(不另起新行)
- Linux下使用Shell脚本实现ftp的自动上传下载的代码小结
- 使用shell脚本实现USB设备的加载与文件复制
- shell脚本实现每秒执行一次任务 rsync命令使用
- 使用 Perl 脚本实现交互式命令行程序的管理与测试自动化
- 在Shell脚本中编写AWK脚本实现数据提取—注意格式、awk中使用shell变量、awk中数字字符串转换成数字、awk中字符串相等比较
- 用Shell脚本实现自动化完成属于自己的微型Linux!(一)
- 使用shell脚本自动化配置工作环境
- shell脚本实现每秒执行一次任务 rsync命令使用
- 使用 Perl 脚本实现交互式命令行程序的管理与测试自动化