@cyysu
2018-03-28T12:39:44.000000Z
字数 4417
阅读 1340
- 时间:2017年9月14日
- 作者:MJ_DZ chen yuan
- 邮箱:chenyuan@ypmingjiang.cn
- 版本:4.0
- 描述:采用模块化安装Hadoop组件,可以随时增加模块。
大数据
mj@DZ:~/桌面/hadoop-install-atuo$ tree .
.
├── Flume
│ ├── core
│ │ ├── config.sh
│ │ ├── remote.sh
│ │ ├── slaveHost
│ │ └── xml.awk
│ ├── Flume NG集群图.png
│ ├── README
│ ├── src
│ │ └── Flume.tar.gz
│ ├── templetes
│ │ ├── flume-client.properties
│ │ ├── flume-server.properties
│ │ └── path
│ ├── tools
│ │ ├── install.expect
│ │ ├── master.expect
│ │ └── scp.expect
│ └── 参数解析
├── hadoop
│ ├── core
│ │ ├── config.sh
│ │ ├── remote.sh
│ │ ├── slaveHost
│ │ └── xml.awk
│ ├── README
│ ├── src
│ │ ├── hadoop.tar.gz
│ │ └── jdk.rpm
│ ├── templetes
│ │ ├── core-site.xml
│ │ ├── hdfs-site.xml
│ │ ├── mapred-site.xml
│ │ ├── path
│ │ ├── slaves
│ │ └── yarn-site.xml
│ └── tools
│ ├── install.expect
│ ├── master.expect
│ └── scp.expect
├── Hbase
│ ├── core
│ │ ├── config.sh
│ │ ├── remote.sh
│ │ ├── slaveHost
│ │ └── xml.awk
│ ├── Hadoop和Hbase对应的版本图.png
│ ├── README
│ ├── src
│ │ ├── aws-java-sdk-1.7.4.1.jar
│ │ └── Hbase.tar.gz
│ ├── templetes
│ │ ├── hbase-env.sh
│ │ ├── hbase-site.xml
│ │ ├── path
│ │ └── regionservers
│ └── tools
│ ├── install.expect
│ ├── master.expect
│ └── scp.expect
├── Hive
│ ├── core
│ │ ├── config.sh
│ │ ├── remote.sh
│ │ ├── slaveHost
│ │ └── xml.awk
│ ├── README
│ ├── src
│ │ └── Hive.tar.gz
│ ├── templetes
│ │ ├── hive-env.sh
│ │ ├── hive-log4j.properties
│ │ ├── hive-site.xml
│ │ └── path
│ └── tools
│ ├── install.expect
│ ├── master.expect
│ └── scp.expect
├── hostConfig.xml
├── init
│ ├── ALLSSH.expect
│ ├── config.sh
│ ├── README
│ ├── remoteScriptIP.sh
│ ├── SCP.expect
│ └── ssh_nopassword.expect
├── install.sh
├── Kafka
│ ├── core
│ │ ├── config.sh
│ │ ├── remote.sh
│ │ ├── slaveHost
│ │ └── xml.awk
│ ├── README
│ ├── src
│ │ └── Kafka.tar.gz
│ ├── templetes
│ │ ├── consumer.properties
│ │ ├── path
│ │ ├── producer.properties
│ │ ├── server.properties
│ │ └── slaves
│ └── tools
│ ├── install.expect
│ ├── master.expect
│ └── scp.expect
├── Readme
├── reboot
│ ├── core
│ │ └── config.sh
│ ├── README
│ ├── src
│ ├── templetes
│ └── tools
│ └── reboot.expect
├── ref
│ ├── BI框架.png
│ ├── BI离线计算.png
│ ├── BI平台实时计算.png
│ └── BI平台组成.png
├── script
│ ├── cluster.sh
│ ├── cmd.sh
│ ├── secure_cluster.sh
│ └── syn.sh
├── Spark
│ ├── core
│ │ ├── config.sh
│ │ ├── remote.sh
│ │ ├── slaveHost
│ │ └── xml.awk
│ ├── README
│ ├── src
│ │ ├── scala.tar.gz
│ │ └── Spark.tar.gz
│ ├── templetes
│ │ ├── path
│ │ └── slaves
│ └── tools
│ ├── install.expect
│ ├── master.expect
│ └── scp.expect
├── uninstall.sh
└── zookeeper
├── core
│ ├── config.sh
│ ├── remote.sh
│ ├── slaveHost
│ └── xml.awk
├── README
├── src
│ └── zookeeper.tar.gz
├── templetes
│ ├── path
│ └── zoo.cfg
└── tools
├── install.expect
├── master.expect
└── scp.expect
#!/bin/bash
# 获取程序名字
readonly PROGNAME=$(basename $0)
# 获取程序所在目录
readonly PROGDIR=$(readlink -m $(dirname $0))
# 获取脚本的所有参数
readonly ARGS="$@"
# 获取当前系统运行时间
DATE=`date +"%Y-%m-%d"`
# 查看登录账户是否为root
if [ `id -u` -ne 0 ]; then
echo "[ERROR]:Must run as root"; exit 1
fi
# print author infomation
echo -e "\033[44;37;5m #=======================================================\033[0m"
echo -e "\033[44;37;5m # Author : MJ_DZ chenyuan \033[0m"
echo -e "\033[44;37;5m # \033[0m"
echo -e "\033[44;37;5m # Email : cyysu.github.io@gmail.com \033[0m"
echo -e "\033[44;37;5m # \033[0m"
echo -e "\033[44;37;5m # Last modified : $DATE \033[0m"
echo -e "\033[44;37;5m # \033[0m"
echo -e "\033[44;37;5m # Filename : install.sh \033[0m"
echo -e "\033[44;37;5m # \033[0m"
echo -e "\033[44;37;5m # Description : Hadoop component automatic install \033[0m"
echo -e "\033[44;37;5m #=======================================================\033[0m"
# solve system dependece update system and update time
bash $PROGDIR/init/config.sh $PROGDIR
# Install hadoop file and copy master hadoop file to other hosts
bash $PROGDIR/hadoop/core/config.sh $PROGDIR
# Install zookeeper file on datenode
bash $PROGDIR/zookeeper/core/config.sh $PROGDIR
# Install Hbase file on all host
bash $PROGDIR/Hbase/core/config.sh $PROGDIR
# Install Hive file on all hosts,but this feature is partially incomplete
bash $PROGDIR/Hive/core/config.sh $PROGDIR
# Install Spark file on all host
bash $PROGDIR/Spark/core/config.sh $PROGDIR
# Install Kafka file on all host
bash $PROGDIR/Kafka/core/config.sh $PROGDIR
# Install Flume file on all host
bash $PROGDIR/Flume/core/config.sh $PROGDIR
# reboot all machine
bash $PROGDIR/reboot/core/config.sh $PROGDIR
# 集群的启动过程留给大家进行设计,这里给出一个规范
#sh $PROGDIR/script/cluster.sh hive stop
#sh $PROGDIR/script/cluster.sh hbase stop
#sh $PROGDIR/script/cluster.sh zookeeper stop
#sh $PROGDIR/script/cluster.sh hadoop stop
#sh $PROGDIR/script/format_hadoop.sh
#sh $PROGDIR/script/cluster.sh hadoop-hdfs start
#sh $PROGDIR/script/cluster.sh zookeeper start
#sh $PROGDIR/script/cluster.sh hbase start
#sh $PROGDIR/script/cluster.sh hive start
echo -e "\033[44;37;5m[INFO]:Install hadoop on cluster complete!\033[0m"
# 上面模块就搭建到此处,后面有需要可以自己按照本框架去搭建!第一次设计,写到此处我个人感觉就是很low!希望看到
# 此篇文章的人可以分享一些经验,记于2017年09月14日
详细的使用说明参考根目录下的Readme文档。如果脚本中有什么内容不当或者您有什么疑问均可以联系我。
支付宝 微信