Hadoop伪分布式环境搭建:

自动部署脚本:

#!/bin/bash
set -eux export APP_PATH=/opt/applications
export APP_NAME=Ares # 安装apt依赖包
apt-get update -y \
&& apt-get install supervisor -y \
&& apt-get install python-dev python-pip libmysqlclient-dev -y # 安装pip、python依赖
pip install --upgrade pip \
&& pip install -r ./build-depends/pip-requirements/requirements.txt # 安装JDK
tar -xzvf ./build-depends/jdk-package/jdk-7u60-linux-x64.tar.gz \
&& ln -s jdk1..0_60/ jdk # 配置JAVA环境变量
echo -e '\n' >> /etc/profile
echo '# !!!No Modification, This Section is Auto Generated by '${APP_NAME} >> /etc/profile
echo 'export JAVA_HOME='${APP_PATH}/${APP_NAME}/jdk >> /etc/profile
echo 'export JRE_HOME=${JAVA_HOME}/jre' >> /etc/profile
echo 'export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar' >> /etc/profile
echo 'export PATH=${PATH}:${JAVA_HOME}/bin:${JRE_HOME}/bin' >> /etc/profile
source /etc/profile && java -version # 安装Hadoop
tar -xzvf ./build-depends/hadoop-package/hadoop-2.5..tar.gz \
&& ln -s hadoop-2.5. hadoop
# hadoop-env.sh配置JAVA_HOME
mv ./hadoop/etc/hadoop/hadoop-env.sh ./hadoop/etc/hadoop/hadoop-env.sh.bak \
&& cp -rf ./build-depends/hadoop-conf/hadoop-env.sh ./hadoop/etc/hadoop/ \
&& sed -i "25a export JAVA_HOME=${APP_PATH}/${APP_NAME}/jdk" ./hadoop/etc/hadoop/hadoop-env.sh
# core-site.xml配置
mv ./hadoop/etc/hadoop/core-site.xml ./hadoop/etc/hadoop/core-site.xml.bak \
&& python ./build-utils/configueUpdate/templateInvoke.py ./build-depends/hadoop-conf/core-site.xml ./hadoop/etc/hadoop/core-site.xml
# hdfs-site.xml配置
mv ./hadoop/etc/hadoop/hdfs-site.xml ./hadoop/etc/hadoop/hdfs-site.xml.bak \
&& python ./build-utils/configueUpdate/templateInvoke.py ./build-depends/hadoop-conf/hdfs-site.xml ./hadoop/etc/hadoop/hdfs-site.xml
# mapred-site.xml配置
python ./build-utils/configueUpdate/templateInvoke.py ./build-depends/hadoop-conf/mapred-site.xml.template ./hadoop/etc/hadoop/mapred-site.xml
# yarn-site.xml配置
mv ./hadoop/etc/hadoop/yarn-site.xml ./hadoop/etc/hadoop/yarn-site.xml.bak \
&& python ./build-utils/configueUpdate/templateInvoke.py ./build-depends/hadoop-conf/yarn-site.xml ./hadoop/etc/hadoop/yarn-site.xml
# slaves, 即DataNode配置
mv ./hadoop/etc/hadoop/slaves ./hadoop/etc/hadoop/slaves.bak
DataNodeList=(`echo ${DataNodeList} | tr ";" "\n"`)
for DataNode in ${DataNodeList}; do
echo ${DataNode} >> ./hadoop/etc/hadoop/slaves
done # 配置Hadoop环境变量
echo -e '\n' >> /etc/profile
echo '# !!!No Modification, This Section is Auto Generated by '${APP_NAME} >> /etc/profile
echo 'export HADOOP_HOME='${APP_PATH}/${APP_NAME}/hadoop >> /etc/profile
echo 'export PATH=${PATH}:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin' >> /etc/profile
source /etc/profile && hadoop version # Namenode格式化
# hadoop namenode -format -force
hdfs namenode -format -force # 启动hdfs、yarn
stop-dfs.sh && start-dfs.sh && jps
stop-yarn.sh && start-yarn.sh && jps # hdfs测试
# hadoop fs -put ./build-depends/jdk-package/jdk-7u60-linux-x64.tar.gz hdfs://HADOOP-NODE1:9000/
hdfs dfs -put ./build-depends/jdk-package/jdk-7u60-linux-x64.tar.gz hdfs://HADOOP-NODE1:9000/
# hadoop fs -get hdfs://HADOOP-NODE1:9000/jdk-7u60-linux-x64.tar.gz .
hdfs dfs -get hdfs://HADOOP-NODE1:9000/jdk-7u60-linux-x64.tar.gz .
rm -rf jdk-7u60-linux-x64.tar.gz # mapred测试
hadoop jar ./hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5..jar pi # word-count测试
touch word-count.txt \
&& echo "hello world" >> word-count.txt \
&& echo "hello tom" >> word-count.txt \
&& echo "hello jim" >> word-count.txt \
&& echo "hello kitty" >> word-count.txt \
&& echo "hello baby" >> word-count.txt
# hadoop fs -put word-count.txt hdfs://HADOOP-NODE1:9000/
# hadoop fs -rm hdfs://HADOOP-NODE1:9000/word-count.txt
hadoop fs -mkdir hdfs://HADOOP-NODE1:9000/word-count
hadoop fs -mkdir hdfs://HADOOP-NODE1:9000/word-count/input
# hadoop fs -mkdir hdfs://HADOOP-NODE1:9000/word-count/output
# hadoop fs -rmdir hdfs://HADOOP-NODE1:9000/word-count/output
hadoop fs -put word-count.txt hdfs://HADOOP-NODE1:9000/word-count/input
hadoop jar ./hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5..jar wordcount hdfs://HADOOP-NODE1:9000/word-count/input hdfs://HADOOP-NODE1:9000/word-count/output
hadoop fs -ls hdfs://HADOOP-NODE1:9000/word-count/output
hadoop fs -cat hdfs://HADOOP-NODE1:9000/word-count/output/part-r-00000 # supervisord 配置文件
#cp ${APP_PATH}/supervisor.conf.d/*.conf /etc/supervisor/conf.d/ # start supervisord nodaemon
# /usr/bin/supervisord --nodaemon
#/usr/bin/supervisord

运行脚本:

# 此处描述应用运行命令使用方法.
export APP_PATH=/opt/applications
export APP_NAME=Ares
export APP_Version=2.5. # 单节点-伪分布式
#HOSTNAME IP HDFS YARN
#HADOOP-NODE1 10.20.0.11 NameNode/SNameNode/DataNode NodeManager/ResourceManager
export NameNode_HOST=HADOOP-NODE1
export NameNode_RPCPort=
export NameNode_HTTP_PORT=
export SNameNode_HOST=HADOOP-NODE1
export SNameNode_HTTP_PORT=
export SNameNode_HTTPS_PORT=
export HDFS_Replication=
export YARN_RSC_MGR_HOST=HADOOP-NODE1
export YARN_RSC_MGR_HTTP_PORT=
export YARN_RSC_MGR_HTTPS_PORT=
export DataNodeList='HADOOP-NODE1' mkdir -p ${APP_PATH}/${APP_NAME} \
&& mv ${APP_NAME}-${APP_Version}.zip ${APP_PATH}/${APP_NAME}/ \
&& cd ${APP_PATH}/${APP_NAME}/ \
&& unzip ${APP_NAME}-${APP_Version}.zip \
&& chmod a+x run.sh \
&& ./run.sh

ssh免密码登录过程:

【Hadoop】伪分布式环境搭建、验证的更多相关文章

  1. 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建

    CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...

  2. CentOS7下Hadoop伪分布式环境搭建

    CentOS7下Hadoop伪分布式环境搭建 前期准备 1.配置hostname(可选,了解) 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(p ...

  3. 《OD大数据实战》Hadoop伪分布式环境搭建

    一.安装并配置Linux 8. 使用当前root用户创建文件夹,并给/opt/下的所有文件夹及文件赋予775权限,修改用户组为当前用户 mkdir -p /opt/modules mkdir -p / ...

  4. Hadoop伪分布式环境搭建+Ubuntu:16.04+hadoop-2.6.0

    Hello,大家好 !下面就让我带大家一起来搭建hadoop伪分布式的环境吧!不足的地方请大家多交流.谢谢大家的支持 准备环境: 1, ubuntu系统,(我在16.04测试通过.其他版本请自行测试, ...

  5. hadoop伪分布式环境搭建

    环境:Centos6.9+jdk+hadoop1.下载hadoop的tar包,这里以hadoop2.6.5版本为例,下载地址https://archive.apache.org/dist/hadoop ...

  6. hadoop伪分布式环境搭建之linux系统安装教程

    本篇文章是接上一篇<超详细hadoop虚拟机安装教程(附图文步骤)>,上一篇有人问怎么没写hadoop安装.在文章开头就已经说明了,hadoop安装会在后面写到,因为整个系列的文章涉及到每 ...

  7. Hadoop学习笔记1:伪分布式环境搭建

    在搭建Hadoop环境之前,请先阅读如下博文,把搭建Hadoop环境之前的准备工作做好,博文如下: 1.CentOS 6.7下安装JDK , 地址: http://blog.csdn.net/yule ...

  8. Hadoop2.5.0伪分布式环境搭建

    本章主要介绍下在Linux系统下的Hadoop2.5.0伪分布式环境搭建步骤.首先要搭建Hadoop伪分布式环境,需要完成一些前置依赖工作,包括创建用户.安装JDK.关闭防火墙等. 一.创建hadoo ...

  9. hive-2.2.0 伪分布式环境搭建

    一,实验环境: 1, ubuntu server 16.04 2, jdk,1.8 3, hadoop 2.7.4 伪分布式环境或者集群模式 4, apache-hive-2.2.0-bin.tar. ...

随机推荐

  1. Linux下进程描述(1)—进程控制块【转】

    转自:http://www.cnblogs.com/33debug/p/6705391.html 进程概念介绍 进程是操作系统对运行程序的一种抽象. • 一个正在执行的程序: • 一个正在计算机上执行 ...

  2. 【Linux驱动学习】SD卡规范学习

    摘要: 学习SD卡的相关规范,包括定义,硬件特性,数据传输,命令系统等.不涉及代码. 文章针对Linux驱动开发而写,以助于理解SD卡驱动,不会涉及过多硬件内容. 纲要: 1. SD卡介绍 2. SD ...

  3. (五)对linux内核中jiffies+Hz表示一秒钟的理解

    jiffies在内核中是一个全局变量,它用来统计系统启动以来系统中产生的总节拍数,这个变量定义在include/Linux/jiffies.h中,定义形式如下. unsigned long volat ...

  4. [转载]基于Redis的Bloomfilter去重(附Python代码)

    前言: “去重”是日常工作中会经常用到的一项技能,在爬虫领域更是常用,并且规模一般都比较大.去重需要考虑两个点:去重的数据量.去重速度.为了保持较快的去重速度,一般选择在内存中进行去重. 数据量不大时 ...

  5. Selenium2+python自动化71-多个浏览器之间的切换【转载】

    前言 有时候一些业务的功能涉及到多个系统,需要在web系统1打开造一些数据,然后用到某些参数是动态生成的,需要调用web系统2里面的参数. 举个简单例子:在做某些业务的时候,需要手机短信验证码,我不可 ...

  6. [ubuntu] service apache2 restart [fail]

    $ /etc/init.d/apache2 restart * Restarting web server apache2 [fail] 解决办法4步走: 1. sudo /etc/init.d/ap ...

  7. Linux内核ROP姿势详解(二)

    /* 很棒的文章,在freebuf上发现了这篇文章上部分的翻译,但作者貌似弃坑了,顺手把下半部分也翻译了,原文见文尾链接 --by JDchen */ 介绍 在文章第一部分,我们演示了如何找到有用的R ...

  8. RabbitMQ (三) 工作队列之轮询分发

    上一篇讲了简单队列,实际工作中,这种队列应该很少用到,因为生产者发送消息的耗时一般都很短,但是消费者收到消息后,往往伴随着对高消息的业务逻辑处理,是个耗时的过程,这势必会导致大量的消息积压在一个消费者 ...

  9. java.lang.NoSuchMethodError:org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Session

    项目配置了spring 4.0.6.RELEASE 和hibernate4.2.0.Final ,出错原因是因为在Spring 3.1开始没有了HibernateDaoSupport类,而我的却Dao ...

  10. [BZOJ 2809] Dispatching

    Link:https://www.lydsy.com/JudgeOnline/problem.php?id=2809 Algorithm: 很容易看出此题贪心的思路: 只要在每个点的子树中贪心选取费用 ...