Shell实现Hadoop单机版安装配置

准备

        事先安装好VMware虚拟机

        安装JDK并且配置环境变量

        下载好hadoop文件

安装步骤

        建立一个sh文件,输入以下脚本并输入Hadooo的tgz包作为参数,运行该脚本即可安装配置Hadoop,并验证Hadoop服务是否启动成功。

源代码


#1、压缩包存在
pack=$1
if [[ ! "$pack" =~ ^.*hadoop.*\.(tar\.gz|tgz)$ ]];then
    echo "ERROR : ONLY SUPPORT tar.gz OR tgz HADOOP COMPASS FORMAT"
    exit 1
fi

#2.1、 检查 Hadoop 服务,若存在则关闭
sc=$(jps|awk 'BEGIN {c=0}/DataNode|SecondaryNameNode|NodeManager|ResourceManager|NameNode/{c++}END{print c}')
if [ $sc -gt 0 ];then
    stop-all.sh 1>/dev/null 2>hadoop_err.log || jps|awk '/DataNode|SecondaryNameNode|NodeManager|ResourceManager|NameNode/{print $1}|xargs kill -9'
    if [ $? -ne 0 ];then
        echo "ERROR : FAIL TO STOP RUNNING HADOOP SERVICES"
        exit 1
    else
        echo "INFO : SUCCESS TO STOP OLD RUNNING HADOOP SERVICES"
    fi
fi

#2.2、目标目录(不存在/opt/software则创建,存在子目录则删除)
dest=${2%/}
echo $dest
old=$(ls $dest|grep ^hadoop)
if [ $? -eq 0 ];then
    rm -rf $dest/$old
    echo "INFO : OLD HADOOP EDITION FOUND AND REMOVED"
fi

if [ ! -e $dest ];then
    mkdir -p $dest
    echo "INFO : DEST DIR NOT EXISTS BUT CREATED"
fi

if [ ! -d $dest ];then
    echo "ERROR : DEST FOR ARG 2 MUSY BE A DIRECTORY"
    exit 2
fi

#3、解压
tar -zxf $pack -C $dest
if [ $? -eq 0 ];then
    echo -n "INFO : SUCCESS"
else
    echo -n "ERROR : FAIL"
    exit 3
fi
echo "TO DECOMPRESS $pack TO $dest"


#4、环境变量(存在则删除,再追加新环境变量)
env=/etc/profile.d/myenv.sh
if [ ! -e $env ];then
    touch $env
    echo "INFO : ENV FILE NOT EXIST BUT TOUCHED"
fi

old=$(cat $env|awk 'BEGIN{b=0; e=0; ln=0;}{ln++; if(b>0 && match($0,/^#.*hadoop/)) e=ln-1; if(match($0,/^#.*hadoop/)) b=ln}END{if(b>0 && e==0) e=ln; print b","e}')

if [ "$old" != "0,0" ];then
    sed -i "${old}d" $env
    echo "INFO : ENV VARIABLES FOR HADOOP FOUND BUT REMOVED LINE $OLD IN $env "
fi


old=$(ls $dest|grep ^hadoop)
dest="$dest/$old"
cat >> $env <<EOF
# hadoop 3.1.3
export HADOOP_HOME=$dest
export PATH=\$PATH:\$HADOOP_HOME/bin:\$HADOOP_HOME/sbin:\$HADOOP_HOME/lib
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export HDFS_JOURNALNODE_USER=root
export HDFS_ZKFC_USER=root
export YARN_RESOURCEMANAGER
### Hadoop 单节点安装配置教程 #### 准备工作 为了成功搭建Hadoop单节点集群,需先准备好Linux操作系统环境,并确认已正确安装Java开发工具包(JDK)[^1]。 #### 下载并解压Hadoop软件包 前往官方站点下载适合版本的Hadoop压缩包[^4]。创建专门用于存放Hadoop文件夹的位置,例如`/root/hadoop`,并将获取到的tarball放置于此处执行解压缩操作: ```bash mkdir /root/hadoop tar -zxvf hadoop-3.3.4.tar.gz -C /root/hadoop/ ``` #### 设置环境变量 编辑全局环境变量文件`/etc/profile`来添加必要的路径指向新部署好的Hadoop位置以及先前准备完毕的JDK地址。完成修改之后记得通过命令刷新当前shell会话以便立即应用更改: ```bash source /etc/profile ``` 验证上述步骤是否无误的一个简单方式就是尝试调用`hadoop version`指令查看返回的信息是否符合预期[^3]。 #### 修改核心配置文件 进入Hadoop配置目录下找到几个重要的XML格式设定文档如core-site.xml, hdfs-site.xml等进行适当调整以适应本地测试用途的需求。对于单机模式来说,默认情况下几乎不需要做太多改动除非有特殊需求。 #### 启动服务 最后一步则是启动NameNodeDataNode组件,在终端输入如下命令即可实现这一点(注意:首次运行前可能还需要初始化namenode): ```bash hdfs namenode -format start-dfs.sh jps ``` 以上过程涵盖了从准备工作直至最终激活整个系统的全部环节,按照指示逐步实施应当能够顺利完成Hadoop单节点实例的建立。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值