栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

linux脚本自动安装jdk、hadoop、zookeeper,单机版

linux脚本自动安装jdk、hadoop、zookeeper,单机版

编辑脚本
[root@mihaoyu151 ~]# ll /opt/install/
total 773684
-rw-r--r--. 1 root root 433895552 Oct 25 17:59 hadoop-2.6.0-cdh5.14.2.tar.gz
-rw-r--r--. 1 root root 128523051 Oct 25 17:59 hive-1.1.0-cdh5.14.2.tar.gz
-rw-r--r--. 1 root root 195094741 Oct 20 22:25 jdk-8u221-linux-x64.tar.gz
-rw-r--r--. 1 root root  34731946 Nov  3 19:09 zookeeper-3.4.5-cdh5.14.2.tar.gz

[root@mihaoyu151 ~]# vi /opt/mysyssh/autoinstall.sh
#!/bin/bash

jdk=true
zk=true
hadoop=true

hostname=`hostname`
echo "current host name is $hostname"
whoami=`whoami`
echo "current user is $whoami"

installdir=/opt/soft
if [ ! -d "$installdir" ]
then
	mkdir $installdir
fi

if [ "$jdk" = true ]
then
	echo "---------- 安装jdk ----------"
	tar -zxf /opt/install/jdk-8u221-linux-x64.tar.gz -C /opt/soft/
	mv /opt/soft/jdk1.8.0_221 /opt/soft/jdk180
	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/hadoop260

	echo '---------- 修改配置hadoop-env.sh ----------'
	sed -i "/^export JAVA_HOME=/cexport JAVA_HOME=$JAVA_HOME/" /opt/soft/hadoop260/etc/hadoop/hadoop-env.sh

	echo '---------- 修改配置mapred-env.sh ----------'
	sed -i "/^# export JAVA_HOME=/cexport JAVA_HOME=$JAVA_HOME/" /opt/soft/hadoop260/etc/hadoop/mapred-env.sh

	echo '---------- 修改配置yarn-env.sh ----------'
	sed -i "/^# export JAVA_HOME=/cexport JAVA_HOME=$JAVA_HOME/" /opt/soft/hadoop260/etc/hadoop/yarn-env.sh

	echo '---------- 修改配置core-site.sh ----------'
	core_path="/opt/soft/hadoop260/etc/hadoop/core-site.xml"
	sed -i '19ahadoop.proxyuser.bigdata.groups*' $core_path
	sed -i '19ahadoop.proxyuser.bigdata.hosts*' $core_path
	sed -i '19ahadoop.tmp.dir/opt/soft/hadoop260/hadooptmp' $core_path
	sed -i "19afs.defaultFShdfs://$hostname:9000" $core_path

	echo '---------- 修改配置hdfs-site.sh ----------'
	hdfs_path="/opt/soft/hadoop260/etc/hadoop/hdfs-site.xml"
	sed -i "19adfs.namenode.secondary.http-address$hostname:50090" $hdfs_path
	sed -i '19adfs.replication1' $hdfs_path

	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 "19amapreduce.jobhistory.webapp.address$hostname:19888" $mapred_path
	sed -i "19amapreduce.jobhistory.address$hostname:10020" $mapred_path
	sed -i '19amapreduce.framework.nameyarn' $mapred_path

	echo '---------- 修改配置yarn-site.sh ----------'
    yarn_path="/opt/soft/hadoop260/etc/hadoop/yarn-site.xml"
	sed -i '15ayarn.log-aggregation.retain-seconds86400' $yarn_path
    sed -i '15ayarn.log-aggregation-enabletrue' $yarn_path
    sed -i "15ayarn.resourcemanager.hostname$hostname" $yarn_path
    sed -i '15ayarn.nodemanager.aux-services.mapreduce.shuffle.classorg.apache.hadoop.mapred.ShuffleHandler' $yarn_path
    sed -i '15ayarn.nodemanager.aux-servicesmapreduce_shuffle' $yarn_path

	echo '---------- 修改配置slaves ----------'
	sed -i "s/localhost/$hostname/g" /opt/soft/hadoop260/etc/hadoop/slaves

	echo "#hadoop" >> /etc/profile
	echo 'export HADOOP_HOME=/opt/soft/hadoop260' >> /etc/profile
    echo 'export HADOOP_MAPRED_HOME=$HADOOP_HOME' >> /etc/profile
    echo 'export HADOOP_COMMON_HOME=$HADOOP_HOME' >> /etc/profile
    echo 'export HADOOP_HDFS_HOME=$HADOOP_HOME' >> /etc/profile
    echo 'export YARN_HOME=$HADOOP_HOME' >> /etc/profile
    echo 'export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native' >> /etc/profile
	echo 'export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"' >> /etc/profile
	echo 'export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin' >> /etc/profile

	/opt/soft/hadoop260/bin/hadoop namenode -format
fi

if [ "$zk" = true ]
then
    echo "---------- 安装zookeeper ----------"
    tar -zxf /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 'export ZOOKEEPER_HOME=/opt/soft/zookeeper345' >> /etc/profile
	echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >> /etc/profile	
fi
运行脚本
[root@mihaoyu151 ~]# /opt/mysyssh/autoinstall.sh 
current host name is mihaoyu151
current user is root
---------- 安装jdk ----------
---------- 安装hadoop ----------
---------- 修改配置hadoop-env.sh ----------
---------- 修改配置mapred-env.sh ----------
---------- 修改配置yarn-env.sh ----------
---------- 修改配置core-site.sh ----------
---------- 修改配置hdfs-site.sh ----------
---------- 修改配置mapred-site.sh ----------
---------- 修改配置yarn-site.sh ----------
---------- 修改配置slaves ----------
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

21/11/08 21:05:46 INFO namenode.NameNode: STARTUP_MSG: 

21/11/08 21:05:46 INFO namenode.NameNode: registered UNIX signal handlers for [TERM, HUP, INT]
21/11/08 21:05:46 INFO namenode.NameNode: createNameNode [-format]
21/11/08 21:05:46 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Formatting using clusterid: CID-72401b47-cf55-4358-b4bd-0eeda2a14904
21/11/08 21:05:46 INFO namenode.FSEditLog: Edit logging is async:true
21/11/08 21:05:46 INFO namenode.FSNamesystem: No KeyProvider found.
21/11/08 21:05:46 INFO namenode.FSNamesystem: fsLock is fair: true
21/11/08 21:05:46 INFO blockmanagement.DatanodeManager: dfs.block.invalidate.limit=1000
21/11/08 21:05:46 INFO blockmanagement.DatanodeManager: dfs.namenode.datanode.registration.ip-hostname-check=true
21/11/08 21:05:46 INFO blockmanagement.BlockManager: dfs.namenode.startup.delay.block.deletion.sec is set to 000:00:00:00.000
21/11/08 21:05:46 INFO blockmanagement.BlockManager: The block deletion will start around 2021 Nov 08 21:05:46
21/11/08 21:05:46 INFO util.GSet: Computing capacity for map BlocksMap
21/11/08 21:05:46 INFO util.GSet: VM type       = 64-bit
21/11/08 21:05:46 INFO util.GSet: 2.0% max memory 966.7 MB = 19.3 MB
21/11/08 21:05:46 INFO util.GSet: capacity      = 2^21 = 2097152 entries
21/11/08 21:05:46 INFO blockmanagement.BlockManager: dfs.block.access.token.enable=false
21/11/08 21:05:46 INFO blockmanagement.BlockManager: defaultReplication         = 1
21/11/08 21:05:46 INFO blockmanagement.BlockManager: maxReplication             = 512
21/11/08 21:05:46 INFO blockmanagement.BlockManager: minReplication             = 1
21/11/08 21:05:46 INFO blockmanagement.BlockManager: maxReplicationStreams      = 2
21/11/08 21:05:46 INFO blockmanagement.BlockManager: replicationRecheckInterval = 3000
21/11/08 21:05:46 INFO blockmanagement.BlockManager: encryptDataTransfer        = false
21/11/08 21:05:46 INFO blockmanagement.BlockManager: maxNumBlocksToLog          = 1000
21/11/08 21:05:46 INFO namenode.FSNamesystem: fsOwner             = root (auth:SIMPLE)
21/11/08 21:05:46 INFO namenode.FSNamesystem: supergroup          = supergroup
21/11/08 21:05:46 INFO namenode.FSNamesystem: isPermissionEnabled = true
21/11/08 21:05:46 INFO namenode.FSNamesystem: HA Enabled: false
21/11/08 21:05:46 INFO namenode.FSNamesystem: Append Enabled: true
21/11/08 21:05:47 INFO util.GSet: Computing capacity for map INodeMap
21/11/08 21:05:47 INFO util.GSet: VM type       = 64-bit
21/11/08 21:05:47 INFO util.GSet: 1.0% max memory 966.7 MB = 9.7 MB
21/11/08 21:05:47 INFO util.GSet: capacity      = 2^20 = 1048576 entries
21/11/08 21:05:47 INFO namenode.FSDirectory: POSIX ACL inheritance enabled? false
21/11/08 21:05:47 INFO namenode.NameNode: Caching file names occuring more than 10 times
21/11/08 21:05:47 INFO snapshot.SnapshotManager: Loaded config captureOpenFiles: false, skipCaptureAccessTimeOnlyChange: false, snapshotDiffAllowSnapRootDescendant: true
21/11/08 21:05:47 INFO util.GSet: Computing capacity for map cachedBlocks
21/11/08 21:05:47 INFO util.GSet: VM type       = 64-bit
21/11/08 21:05:47 INFO util.GSet: 0.25% max memory 966.7 MB = 2.4 MB
21/11/08 21:05:47 INFO util.GSet: capacity      = 2^18 = 262144 entries
21/11/08 21:05:47 INFO namenode.FSNamesystem: dfs.namenode.safemode.threshold-pct = 0.9990000128746033
21/11/08 21:05:47 INFO namenode.FSNamesystem: dfs.namenode.safemode.min.datanodes = 0
21/11/08 21:05:47 INFO namenode.FSNamesystem: dfs.namenode.safemode.extension     = 30000
21/11/08 21:05:47 INFO metrics.TopMetrics: NNTop conf: dfs.namenode.top.window.num.buckets = 10
21/11/08 21:05:47 INFO metrics.TopMetrics: NNTop conf: dfs.namenode.top.num.users = 10
21/11/08 21:05:47 INFO metrics.TopMetrics: NNTop conf: dfs.namenode.top.windows.minutes = 1,5,25
21/11/08 21:05:47 INFO namenode.FSNamesystem: Retry cache on namenode is enabled
21/11/08 21:05:47 INFO namenode.FSNamesystem: Retry cache will use 0.03 of total heap and retry cache entry expiry time is 600000 millis
21/11/08 21:05:47 INFO util.GSet: Computing capacity for map NameNodeRetryCache
21/11/08 21:05:47 INFO util.GSet: VM type       = 64-bit
21/11/08 21:05:47 INFO util.GSet: 0.029999999329447746% max memory 966.7 MB = 297.0 KB
21/11/08 21:05:47 INFO util.GSet: capacity      = 2^15 = 32768 entries
21/11/08 21:05:47 INFO namenode.FSNamesystem: ACLs enabled? false
21/11/08 21:05:47 INFO namenode.FSNamesystem: XAttrs enabled? true
21/11/08 21:05:47 INFO namenode.FSNamesystem: Maximum size of an xattr: 16384
21/11/08 21:05:47 INFO namenode.FSImage: Allocated new BlockPoolId: BP-398451707-192.168.133.151-1636376747180
21/11/08 21:05:47 INFO common.Storage: Storage directory /opt/soft/hadoop260/hadooptmp/dfs/name has been successfully formatted.
21/11/08 21:05:47 INFO namenode.FSImageFormatProtobuf: Saving image file /opt/soft/hadoop260/hadooptmp/dfs/name/current/fsimage.ckpt_0000000000000000000 using no compression
21/11/08 21:05:47 INFO namenode.FSImageFormatProtobuf: Image file /opt/soft/hadoop260/hadooptmp/dfs/name/current/fsimage.ckpt_0000000000000000000 of size 321 bytes saved in 0 seconds.
21/11/08 21:05:47 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
21/11/08 21:05:47 INFO util.ExitUtil: Exiting with status 0
21/11/08 21:05:47 INFO namenode.NameNode: SHUTDOWN_MSG: 

---------- 安装zookeeper ----------
[root@mihaoyu151 ~]# source /etc/profile
查看是否安装成功
[root@mihaoyu151 ~]# java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
[root@mihaoyu151 ~]# javac
Usage: javac  
where possible options include:
  -g                         Generate all debugging info
  -g:none                    Generate no debugging info
  -g:{lines,vars,source}     Generate only some debugging info
  -nowarn                    Generate no warnings
  -verbose                   Output messages about what the compiler is doing
  -deprecation               Output source locations where deprecated APIs are used
  -classpath           Specify where to find user class files and annotation processors
  -cp                  Specify where to find user class files and annotation processors
  -sourcepath          Specify where to find input source files
  -bootclasspath       Override location of bootstrap class files
  -extdirs             Override location of installed extensions
  -endorseddirs        Override location of endorsed standards path
  -proc:{none,only}          Control whether annotation processing and/or compilation is done.
  -processor [,,...] Names of the annotation processors to run; bypasses default discovery process
  -processorpath       Specify where to find annotation processors
  -parameters                Generate metadata for reflection on method parameters
  -d              Specify where to place generated class files
  -s              Specify where to place generated source files
  -h              Specify where to place generated native header files
  -implicit:{none,class}     Specify whether or not to generate class files for implicitly referenced files
  -encoding        Specify character encoding used by source files
  -source           Provide source compatibility with specified release
  -target           Generate class files for specific VM version
  -profile          Check that API used is available in the specified profile
  -version                   Version information
  -help                      Print a synopsis of standard options
  -Akey[=value]              Options to pass to annotation processors
  -X                         Print a synopsis of nonstandard options
  -J                   Pass  directly to the runtime system
  -Werror                    Terminate compilation if warnings occur
  @                Read options and filenames from file

[root@mihaoyu151 ~]# hadoop version
Hadoop 2.6.0-cdh5.14.2
Subversion http://github.com/cloudera/hadoop -r 5724a4ad7a27f7af31aa725694d3df09a68bb213
Compiled by jenkins on 2018-03-27T20:40Z
Compiled with protoc 2.5.0
From source with checksum 302899e86485742c090f626a828b28
This command was run using /opt/soft/hadoop260/share/hadoop/common/hadoop-common-2.6.0-cdh5.14.2.jar
[root@mihaoyu151 ~]# start-all.sh 
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
21/11/08 21:06:35 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [mihaoyu151]
mihaoyu151: starting namenode, logging to /opt/soft/hadoop260/logs/hadoop-root-namenode-mihaoyu151.out
mihaoyu151: starting datanode, logging to /opt/soft/hadoop260/logs/hadoop-root-datanode-mihaoyu151.out
Starting secondary namenodes [mihaoyu151]
mihaoyu151: starting secondarynamenode, logging to /opt/soft/hadoop260/logs/hadoop-root-secondarynamenode-mihaoyu151.out
21/11/08 21:06:53 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
starting yarn daemons
starting resourcemanager, logging to /opt/soft/hadoop260/logs/yarn-root-resourcemanager-mihaoyu151.out
mihaoyu151: starting nodemanager, logging to /opt/soft/hadoop260/logs/yarn-root-nodemanager-mihaoyu151.out
[root@mihaoyu151 ~]# mr-jobhistory-daemon.sh start historyserver
starting historyserver, logging to /opt/soft/hadoop260/logs/mapred-root-historyserver-mihaoyu151.out
[root@mihaoyu151 ~]# jps
8305 NameNode
8420 DataNode
9221 Jps
8710 ResourceManager
8822 NodeManager
8569 SecondaryNameNode
9100 JobHistoryServer    
[root@mihaoyu151 ~]# zkServer.sh start
JMX enabled by default
Using config: /opt/soft/zookeeper345/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@mihaoyu151 ~]# zkServer.sh status
JMX enabled by default
Using config: /opt/soft/zookeeper345/bin/../conf/zoo.cfg
Mode: standalone
[root@mihaoyu151 ~]# zkCli.sh 
Connecting to localhost:2181
2021-11-08 21:07:52,377 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.5-cdh5.14.2--1, built on 03/27/2018 20:39 GMT
2021-11-08 21:07:52,379 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=mihaoyu151
2021-11-08 21:07:52,379 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.8.0_221
2021-11-08 21:07:52,380 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Oracle Corporation
2021-11-08 21:07:52,380 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=/opt/soft/jdk180/jre
2021-11-08 21:07:52,380 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=/opt/soft/zookeeper345/bin/../build/classes:/opt/soft/zookeeper345/bin/../build/lib/*.jar:/opt/soft/zookeeper345/bin/../share/zookeeper/zookeeper-3.4.5-cdh5.14.2.jar:/opt/soft/zookeeper345/bin/../share/zookeeper/slf4j-log4j12-1.7.5.jar:/opt/soft/zookeeper345/bin/../share/zookeeper/slf4j-api-1.7.5.jar:/opt/soft/zookeeper345/bin/../share/zookeeper/netty-3.10.5.Final.jar:/opt/soft/zookeeper345/bin/../share/zookeeper/log4j-1.2.16.jar:/opt/soft/zookeeper345/bin/../share/zookeeper/jline-2.11.jar:/opt/soft/zookeeper345/bin/../src/java/lib/*.jar:/opt/soft/zookeeper345/bin/../conf:.:/opt/soft/jdk180/lib/dt.jar:/opt/soft/jdk180/lib/tools.jar
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=/tmp
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Linux
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=3.10.0-1062.el7.x86_64
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=root
2021-11-08 21:07:52,381 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=/root
2021-11-08 21:07:52,385 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=/opt
2021-11-08 21:07:52,386 [myid:] - INFO  [main:ZooKeeper@438] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@27fa135a
2021-11-08 21:07:52,406 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@975] - Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
Welcome to ZooKeeper!
JLine support is enabled
2021-11-08 21:07:52,494 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@852] - Socket connection established, initiating session, client: /127.0.0.1:58988, server: localhost/127.0.0.1:2181
2021-11-08 21:07:52,521 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1235] - Session establishment complete on server localhost/127.0.0.1:2181, sessionid = 0x17cffa9618c0000, negotiated timeout = 30000

WATCHER::

WatchedEvent state:SyncConnected type:None path:null
[zk: localhost:2181(CONNECTED) 0] quit
Quitting...
2021-11-08 21:07:55,084 [myid:] - INFO  [main:ZooKeeper@684] - Session: 0x17cffa9618c0000 closed
2021-11-08 21:07:55,085 [myid:] - INFO  [main-EventThread:ClientCnxn$EventThread@512] - EventThread shut down
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/457079.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号