scp -r /etc/hosts root@ly151:/etc/ scp传输
免密登陆ssh-keygen -t rsa -P "" 生成秘钥
ssh-copy-id -i .ssh/id_rsa.pub -p22 root@192.168.192.110 传秘钥
ssh -p 22 root@192.168.192.151
远程启动Mysqlrsync传输#!/bin/bash case $1 in "start") for host in ly151 ly154 ly110 do ssh $host "systemctl start mysqld" done ;; "stop") for host in ly151 ly154 ly110 do ssh $host "systemctl stop mysqld" done ;; "status") for host in ly151 ly154 ly110 do ssh $host "systemctl status mysqld" done ;; esac
自动安装脚本cat xsync.sh #!/bin/bash #获取输入的参数,没有就退出 argCount=$# if [ $argCount == 0 ];then echo 'no args' exit 0 fi #获取文件名称 f=$1 fname=`basename $f` echo $fname #获取文件绝对路径 pdir=`cd -P $(dirname $f); pwd` echo $pdir #获取当前用户 user=`whoami` echo $user #循环拷贝 for host in ly151 ly154 do echo "*****$host*****" rsync -av $pdir/$fname $user@$host:$pdir done
cat autoinstall.sh
#!/bin/bash
jdk=false
hadoop=false
zk=truehostname=`hostname`
echo "current host namae is $hostname"
whoami=`whoami`
echo "current usr is $whoami"installdir=/opt/soft
if [ ! -d "$installdir" ];
then
mkdir $installdirfi
if [ "$jdk" = true ];
then
echo "*******安装jdk*******"
tar -zvxf /opt/install/zookeeper-3.4.5-cdh5.14.2.tar.gz -C /opt/soft
mv /opt/soft/zookeeper-3.4.5-cdh5.14.2 /opt/soft/zookeeper345
cp /opt/soft/zookeeper345/conf/zoo_sample.cfg /opt/soft/zookeeper345/conf/zoo.cfg
echo "server.1=$hostname:2888:3888" >> /opt/soft/zookeeper345/conf/zoo.cfg
mkdir -p /opt/soft/zookeeper345/datatmp/
echo '1' > /opt/soft/zookeeper345/datatmp/myid
echo "#jdk" >> /etc/profile
echo "export JAVA_HOME=/opt/soft/jdk180" >> /etc/profile
echo "export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar " >> /etc/profile
echo "export PATH=$PATH:$JAVA_HOME/bin" >> /etc/profile
fi
if [ "$hadoop" = true ];
then
echo '*******安装hadoop*******'
tar -zxf /opt/install/hadoop-2.6.0-cdh5.14.2.tar.gz -C /opt/soft/
mv /opt/soft/hadoop-2.6.0-cdh5.14.2 /opt/soft/hadoop260echo '--------------修改配置hadoop-env.sh----------------'
sed -i "/^export JAVA_HOME=/cexport JAVA_HOME=$JAVA_HOME/" /opt/soft/hadoop260/etc/hadoop/hadoop-env.shecho '--------------修改配置mapred-env.sh----------------'
sed -i "/^export JAVA_HOME=/cexport JAVA_HOME=$JAVA_HOME/" /opt/soft/hadoop260/etc/hadoop/mapred-env.shecho '--------------修改配置yarn-env.sh----------------'
sed -i "/^export JAVA_HOME=/cexport JAVA_HOME=$JAVA_HOME/" /opt/soft/hadoop260/etc/hadoop/yarn-env.shecho '--------------修改配置core-site.sh----------------'
core_path="/opt/soft/hadoop260/etc/hadoop/core-site.xml"
sed -i '19a' $core_path hadoop.proxyuser.bigdata.groups *
sed -i '19a' $core_path hadoop.proxyuser.bigdata.hosts *
sed -i '19a' $core_path hadoop.tmp.dir /opt/soft/hadoop260/hadooptmp/
sed -i "19a" $core_path fs.defaultFS hdfs://$hostname:9000 echo '--------------修改配置hdfs-site.sh----------------'
hdfs_path="/opt/soft/hadoop260/etc/hadoop/hdfs-site.xml"
sed -i '19a' $hdfs_path dfs.realication 1
sed -i "19a" $hdfs_path dfs.namenode.secondary.http-adress $hostname:50070 echo '--------------修改配置mapred-site.sh----------------'
mapred_path="/opt/soft/hadoop260/etc/hadoop/mapred-site.xml"
cp /opt/soft/hadoop260/etc/hadoop/mapred-site.xml.template /opt/soft/hadoop260/etc/hadoop/mapred-site.xml
sed -i "19a" $mapred_path mapreduce.jobhistory.webapp.address $hostname:19888
sed -i "19a" $mapred_path mapreduce.jobhistory.address $hostname:10020
sed -i '19a' $mapred_path mapreduce.framework.name yarn echo '--------------修改配置yarn-site.sh----------------'
yarn_path="/opt/soft/hadoop260/etc/hadoop/yarn-site.xml"
sed -i "15a" $yarn_path yarn.log-aggregation.retain-seconds 86400
sed -i "15a" $yarn_path yarn.log-aggregation-enable true
sed -i "15a" $yarn_path yarn.resourcemanager.hostname $hostname
sed -i "15a" $yarn_path yarn.nodemanager.aux-services mapreduce_shuffle
sed -i "15a" $yarn_path yarn.nodemanager.aux-services.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler
echo '--------------修改配置slaves.xml----------------'
sed -i "s/localhost/$hostname/g" /opt/soft/hadoop260/etc/hadoop/slavesecho "#hadoop" >> /etc/profile
echo "export HADOOP_HOME=/opt/soft/hadoop260" >> /etc/profile
echo "HADOOP_MAPRED_HOME=$HADOOP_HOME" >> /etc/profile
echo " HADOOP_COMMON_HOME=$HADOOP_HOME" >> /etc/profile
echo "HADOOP_HDFS_HOME=$HADOOP_HOME" >> /etc/profile
echo "YARN_HOME=$HADOOP_HOME" >> /etc/profile
echo " HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native" >> /etc/profile
echo "HADOOP_OPTS=-Djava.library.path=$HADOOP_HOME/lib" >> /etc/profile
echo "PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin" >> /etc/profilefi
if [ "$zk" = true ];
then
echo '*******安装zk*******'
echo "----------------安装zookeeper-----------------"
tar -zvxf /opt/install/zookeeper-3.4.5-cdh5.14.2.tar.gz -C /opt/soft
mv /opt/soft/zookeeper-3.4.5-cdh5.14.2 /opt/soft/zookeeper345
cp /opt/soft/zookeeper345/conf/zoo_sample.cfg /opt/soft/zookeeper345/conf/zoo.cfg
sed -i '/^dataDir=/cdataDir=/opt/soft/zookeeper345/datatmp' /opt/soft/zookeeper345/conf/zoo.cfg
echo "server.1=$hostname:2888:3888" >> /opt/soft/zookeeper345/conf/zoo.cfg
mkdir -p /opt/soft/zookeeper345/datatmp/
echo '1' > /opt/soft/zookeeper345/datatmp/myid
echo "#zookeeper" >> /etc/profile
echo " ZOOKEEPER_HOME=/opt/soft/zookeeper345" >> /etc/profile
echo 'PATH=$PATH:$ZOOKEEPER_HOME/bin' >> /etc/profile
fi



