大兔包子叨叨叨--大数据之Hadoop篇(二)--自己弄套Hadoop

小兔包子:我能不能自己也弄套大数据环境啊?

大兔包子:可以啊,本机上弄套虚拟机,或者申请个云服务器,阿里,腾讯,华为都可以,便宜的很。但问题你也没数据,搭完也没意义啊。

小兔包子:你不说大数据就是从大量数据中分析出有价值的内容么,那就从网上爬点数据,自己分析玩呗。

大兔包子:分析只是一方面,而且哪那么容易爬数据,你还会爬虫?

小兔包子:不会啊,不有你呢么。

大兔包子:~~~,那要是我也不会呢?

小兔包子:学去啊。(这叫一个理所当然啊)

大兔包子:得嘞你呢,那咱今儿先把环境弄上?

小兔包子:准。

要弄大数据环境,个人电脑上就真的是玩玩而已,一开始建议还是弄套虚拟机就可以了,弄个单节点的伪分布集群;电脑配置好点的可以考虑后期多开几个虚拟机,弄个完全分布式;或者比较有兴趣的可以按照大兔包子上面说的,自己上网申请几台云服务器。后面两种有机会我们后面再说,今天就还是先说最简单的吧,小兔包子的第一套大数据环境,走起。

说到大数据环境,现在用的最多的应该就是Hadoop了,不管企业还是个人,这个应该是跑不了的。

问,要把Hadoop搭建成拢共分几步?(大象放冰箱的梗现在回想起来都好多年了,还真是暴露年龄~~~)

1、虚拟机搭建

2、Linux安装

3、网络基本配置

4、JDK安装

5、SSH配置

6、安装Hadoop

7、修改Hadoop配置文件

8、启动集群

答,拢共分8步

小兔包子:这么多,感觉好复杂啊。

大兔包子:我这不分的比较细,感觉专业点么。要简单的话就两步,安Linux,安Hadoop,完事。

小兔包子:那算了,还是八步的吧。

前两步,请参照大兔包子叨叨叨--Linux篇(三、四、五),哈哈

第三步:修改网络基本配置

这里主要改的是指主机名,因为考虑到万一后期我们还会搭建多机的完全分布式呢,所以主机名也起的稍微有意义点。

修改主机名为master

# vi /etc/sysconfig/network

    

通过指令修改主机名

# hostname master

修改hosts文件,添加主机名与ip地址(本机ip为192.168.7.101)映射关系

# vi /etc/hosts

这里我将主机名修改为master,这样之后如果做完全分布式,我们可以以这台为主节点,其他为从节点,至于Hadoop主从关系什么的后面我们再聊。

第四步:安装JDK

这里我们使用jdk-8u144-linux-x64.tar.gz来进行安装,先将对应jdk的tar包放在/root目录下。相关软件分享地址见文章尾部。

将JDK解压至/usr/local目录下

# tar -xvzf jdk-8u144-linux-x64.tar.gz -C /usr/local/

后面的-C就是指要解压到指定目录,去到/usr/local目录下,创建jdk1.8.0_144目录的软连接jdk,为啥要键软连接?这样名好记啊。

# cd /usr/local

# ln -s  jdk1.8.0_144/ jdk

修改源jdk目录权限

# chown -R root:root jdk1.8.0_144

修改profile文件,将JDK加入PATH环境变量

# vi /etc/profile

#添加下面两句到export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL上面

export JAVA_HOME=/usr/local/jdk

PATH=$JAVA_HOME/bin:$PATH

加载profile以使配置生效:

# source /etc/profile

测试JDK是否正常工作:

第五步:SSH配置

为什么要配置SSH,主要为了远程访问免密啊,你想啊,你一个集群,互相访问时都需要输入密码,这叫什么事啊,所以要配置SSH,安全还免密,多好。

SSH不清楚的可以理解为,以前回家你要输密码,烦人,现在改高级点的,咱们弄个卡机和门禁卡,然后你可以把门禁卡发给所有想来的人,都直接刷卡就成,卡多了不好管理,所有咱们还得弄个卡包,就这样。

生成密钥对:

# ssh-keygen -t rsa

问你生成的公钥/私钥(门禁卡/卡机)放哪,默认放在当前用户家目录的.ssh中,默认即可,所以直接回车

让咱们设置密码,门禁的密码,如果输入了那就是又用门禁又的输密码,所以我们什么都不输入,直接回车,因为我就是不想输密码。

输入相同的密码,刚才就没设置,所以也是直接回车,这样门禁就弄好了。

进入.ssh目录,复制密钥:

# cd /root/.ssh

id_rsa私钥(卡机),id_rsa.pub公钥(门禁卡)

卡机和门禁卡都有了,剩下的就是卡包了

# cp id_rsa.pub authorized_keys

authorized_keys卡包

确认SSH连接免密码成功:

# ssh master

第一次会询问,确认下,打yes然后回车,成功登陆,没需要密码。

小兔包子:我不就一台机器么,我自己登陆我自己还得配SSH啊?

大兔包子:恩,虽然咱们是一台机器,但伪分布式就是指集群只有一台,自己又是主节点,又是从节点,所以自己(主节点)登录自己(从节点),也需要配置SSH

第六步:安装Hadoop

这里我们用的是hadoop-2.6.4.tar.gz,同样还是先把hadoop的tar包放在/root下。

将hadoop软件解压至/usr/local目录下

 # tar -xvzf hadoop-2.6.4.tar.gz -C /usr/local

到/usr/local下,给hadoop-2.6.4目录创建软连接hadoop

# cd /usr/local

# ln -s hadoop-2.6.4 hadoop

修改hadoop源目录权限

# chown -R root:root hadoop-2.6.4

修改profile文件,将Hadoop执行路径加入PATH环境变量中

 # vi /etc/profile

export HADOOP_HOME=/usr/local/hadoop

PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$PATH

Hadoop2版本中将执行程序分别放在安装目录/bin和安装目录/sbin里面了,所以要写两个路径。

加载profile以使配置生效:

 # source /etc/profile     

第七步:修改Hadoop配置文件

在集群能启动之前,需要按照自己的环境修改一些基本配置文件。

切换至Hadoop配置目录,Hadoop所有配置文件均在此:

# cd /usr/local/hadoop/etc/hadoop

首先修改两个环境变量文件

修改hadoop-env.sh文件,指定JDK

 # vi hadoop-env.sh 

export JAVA_HOME=/usr/local/jdk

修改yarn-env.sh文件,指定JDK

# vi yarn-env.sh

JAVA_HOME=$JAVA_HOME    --在此句下面添加

JAVA_HOME=/usr/local/jdk

修改core-site.xml核心参数文件:

# vi core-site.xml
            <configuration>
                <property>
                    <name>hadoop.tmp.dir</name>
                    <value>/root/hadoop2/tmp/</value>
                </property>
                <property>
                    <name>fs.default.name</name>
                    <value>hdfs://master:9000</value>
                </property>
            </configuration>

修改hdfs-site.xml分布式文件系统配置文件

# vi hdfs-site.xml
                <configuration>
                    <property> 
                        <name>dfs.replication</name>
                        <value>1</value>
                    </property>
                    <property>
                    <name>dfs.namenode.secondary.http-address</name>
                    <value>master:50090</value>
                    </property>
                </configuration>

修改mapred-site.xml分布式计算框架配置文件,没有这个文件需要先从默认文件中拷贝一个出来

# cp mapred-site.xml.template mapred-site.xml

# vi mapred-site.xml
            <configuration>
                <property>
                    <name>mapreduce.framework.name</name>
                    <value>yarn</value>
                </property>
                <property>
                    <name>mapreduce.jobhistory.address</name>
                    <value>master:10020</value>
                </property>
            </configuration>

修改yarn-site.xml资源管理层配置文件

# vi yarn-site.xml
                <configuration>
                    <property>
                        <name>yarn.nodemanager.aux-services</name>
                        <value>mapreduce_shuffle</value>
                    </property>
                    <property>  
                        <name>yarn.resourcemanager.hostname</name>  
                        <value>master</value>  
                    </property>
                    <property>
                        <name>yarn.log-aggregation-enable</name>  
                        <value>true</value>  
                    </property>
                </configuration>
                

修改slaves从节点文件

# vi slaves
                master

修改log4j.properties日志属性配置文件

 # vi log4j.properties
                log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

小兔包子:我的妈呀,这么多,蒙了蒙了。

大兔包子:这还多啊,没事,先搭起来,别管都是什么意思,都是干嘛的,修改的都是什么意思,咱们后面说,要不搭建就太慢了,就快好了,加油,最后一步了。

第八步:启动集群

格式化namenode

 # hdfs namenode -format 

注意:格式化成功后会在/root目录中出现hadoop2目录,且过程中都是INFO级别的日志。仅需成功格式化一次即可,若失败可以重新格式化,成功了的话,之后出问题,也不需要在再次格式化

启动hdfs

# start-dfs.sh

查看相关进程

 # jps

至此只要见到这几个进程(前面进程号不一样很正常),则伪集群Hadoop安装成功(HDFS部分)。

测试hdfs功能,在hdfs中创建目录并查询

# hdfs dfs -mkdir /root

# hdfs dfs -ls /

注意:这个/root就是集群文件系统HDFS中的目录结构了,而并非是我们Linux文件系统里的/root了。

小兔包子:然后怎么弄?

大兔包子:饭要一口一口吃,别急,既然HDFS已经成功了,咱就先把这个HDFS是什么给他弄明白,然后再说后面。。。未完待续

 

 

软件分享地址:https://pan.baidu.com/s/1iUEjgrx5fgLPSzJi32GyLQ 密码:32x9

大兔包子出品的伪集群搭建文档:https://pan.baidu.com/s/1sdv6zkyAx4Zn0krbi1ERjg 密码:06uq

 

版权说明:本文为博主myfelix1925原创,转载请注明出处。https://blog.csdn.net/myfelix1925/article/details/81360004

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值