Hadoop安装-超详细

2020-06-23 00:00:00 执行 文件 配置 安装 机子

临近毕业,签的公司(国企),和新发offer的公司,都是数据挖掘的岗位,都要求会hadoop、spark等大数据框架,于是自己开始着手学习hadoop,断断续续摸索、看博客等两周时间才搞清楚基本的linux操作(CentOS7),和hadoop的安装。为了写这篇博文,及熟练hadoop分布式的安装,把之前安装好的全部删了,一边安装一边截图写博文。


使用到的工具:

CentOS7、VMare12虚拟机、hadoop-2.6.4、SecureCRT(远程连接虚拟机)、WinSCP(实现win7本机和虚拟机安装的CentOS7的文件互传)

SecureCRT,WinSCP我的百度网盘 密码:283b


如何在虚拟机中安装CentOS这个教程很多,也比较简单,了解linux,我看了兄弟连2014年的视频 密码:9upy,这套视频也将虚拟机也讲了讲,感觉入门这套视频很合适。


安装好一个CentOS之后,是用克隆的方法在之间生产第二个、第三个系统,这是高效的,还有一个技巧就是在重要安装步骤虚拟机上整个快照,防止安装导致系统出问题,快照可以快速使系统恢复。


从这里开始已经安装好了Centos7.

步:修改系统名字,及三个系统的ip和名字的映射。(克隆的机子名字是一样的)

修改名字
名字和ip的映射

主要是看下面三个

第二步:ping一下,看上面的修改生效没?

第三步:SSH实现三台机子免密码登录。

产生密匙
本地免密码登录

将产生的密匙scp传递另外两台机子上,实现master到slave1,slave2的免密码登录。

在slave1和slave2上也产生密匙,也就是在slave1和slave2中执行上面产生密匙那个图中的命令,这样才会产生.ssh的目录,将id_dsa.pub 也写到slave1和slave2中.ssh目录下的authorized文件中。实先master到slave1,slave2的免密码登录。

master到slave1,slave2的免密码登录

第4步:安装jdk,CentOS7上已经有openjdk的java环境了,但是hadoop不能在这个上面安装,需要卸载的,执行下面语句,显示CentOS的所有java组件

需要将其全部删除

删完之后,在执行上两图中的语句,看是否删除干净。

使用WinSCP将jdk上传。开始解压jdk

然后到Centos7 /etc/profile下修改文件配置,使得jdk生效,执行语句 vim /etc/profile

配置结束之后。执行 source /etc/profile 配置文件生效。

显示以上语句说明,java安装成功。

将java传到其他两台机子上去

scp -r java1.8.0_151 root@slave1:/opt/java (我的安装目录)

scp -r java1.8.0_151 root@slave1:/opt/java (java1.8.0_151是解压后的java目录名)

后将配置文件也传过去,记得在每台传结束之后,还要在slave1及slave2上执行source /etc/profile 使得文件生效。

第五步:安装hadoop和上面相同将hadoop使用WinSCP先上传到master,在master安装hadoop后将安装好的文件传给其他机子。

接着就是配置hadoop了

配置上图中的两个文件。

core-site.xml

个配置决定hadoop的namenode。第二个配置是用于储存hadoop执行过程中的临时文件。

hdfs-sitr.xml

配置每一个文件存储几份,默认的是3,但是我们只安装了2个slave,也就是只能存储2份。

接着就是配置CentOS /etc/profile文件,执行 vim /etc/profile

执行source /etc/profile 上面文件生效。配置 mapred-site.xml

<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>  // 在yarn 上跑mapreduce计算
        </property>
        <property>
                <name>dfs.namenode.secondary.http-address<name>
                <value>node2:50090</value> // 定义 secondaryNameNode 在哪个节点上
        </property>
</configuration>

相关文章