夜勿眠 发表于 2018-8-25 08:08:07

使用shell脚本实现自动化部署HBASE集群

  首先,要安装好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>  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' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\ttrue' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thbase.cluster.distributed' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\tmaster,slave1,slave2,slave3' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thbase.zookeeper.quorum' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t/usr/hbase/tmp/zookeeper' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thbase.zookeeper.property.dataDir' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thdfs://master:60000' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thbase.master' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thdfs://master:9000/hbase' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\thbase.rootdir' /usr/hbase/conf/hbase-site.xml
  sed -i '24a\\t' /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

页: [1]
查看完整版本: 使用shell脚本实现自动化部署HBASE集群