目录
(6)进入前面创建的data对hdfs namenode初始化
(7)启动hadoop 使用“ start-dfs.sh ”开启 NaneNode 和 DataNode 守护进程
(8)使用“ start-yarn.sh ”开启 ResourceManager 和 NodeManager 守护进程
Hadoop介绍:
Hadoop的核心由3个部分组成:
HDFS: Hadoop Distributed File System,分布式文件系统,hdfs还可以再细分为NameNode、SecondaryNameNode、DataNode。
YARN: Yet Another Resource Negotiator,资源管理调度系统
Mapreduce:分布式运算框架
下面介绍安装 Hadoop
虚拟机: VMware
环境: Linux 系统 centos8
hadoop: hadoop-3.3.1
一、创建hadoop用户
VM上安装centos8的主机,设置初始内存为2G,硬盘为50G,安装成功后新建用户hadoop,设置hadoop的密码并授予hadoop用户sudo权限(不过后面主要还是用root操作)
如果你安装 CentOS 的时候不是用的 “hadoop” 用户,那么需要增加一个名为 hadoop 的用户。
首先点击左上角的 “应用程序” -> “系统工具” -> “终端”,首先在终端中输入 su ,按回车,输入 root 密码以 root 用户登录,接着执行命令创建新用户
su # 上述提到的以 root 用户登录
useradd -m hadoop -s /bin/bash # 创建新用户hadoop,并使用 /bin/bash 作为shell。
passwd hadoop
可为 hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题,执行:
visudo
如下图,找到 root ALL=(ALL) ALL 这行(应该在第98行,可以先按一下键盘上的 ESC 键,然后输入 :98 (按一下冒号,接着输入98,再按回车键),可以直接跳到第98行 ),然后按i,进入插入模式,在这行下面增加一行内容:
hadoop ALL=(ALL) ALL
如下图所示:
添加上一行内容后,先按一下键盘上的 ESC 键,然后输入 :wq (输入冒号还有wq,这是vi/vim编辑器的保存方法),再按回车键保存退出就可以了。
最后注销当前用户(点击屏幕右上角的用户名,选择退出->注销),在登陆界面使用刚创建的 hadoop 用户进行登陆。(如果已经是 hadoop 用户,且在终端中使用 su 登录了 root 用户,那么需要执行 exit 退出 root 用户状态)
二、安装SSH、配置SSH无密码登录
集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令),一般情况下,CentOS 默认已安装了 SSH client、SSH server,打开终端执行如下命令进行检验:
rpm -qa | grep ssh
如果返回的结果如下图所示,包含了 SSH client 跟 SSH server,则不需要再安装。
若需要安装,则可以通过 yum 进行安装(安装过程中会让你输入 [y/N],输入 y 即可):
sudo yum install openssh-clients
sudo yum install openssh-server
接着执行如下命令测试一下 SSH 是否可用:
ssh localhost
此时会有如下提示(SSH首次登陆提示),输入 yes 。然后按提示输入密码 hadoop,这样就登陆到本机了。
但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便。
首先输入 exit 退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入到授权中:
exit # 退出刚才的 ssh localhost
cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa # 会有提示,都按回车就可以
cat id_rsa.pub >> authorized_keys # 加入授权
chmod 600 ./authorized_keys # 修改文件权限
ssh-copy-id localhost # 分发秘钥给主机(主机名)
ssh-copy-id localhost # 再次分发秘钥给主机(终端中默认的主机民称)
测试ssh是否分配给自定义的主机上
ssh localhost
此时再用 ssh hjk 命令,无需输入密码就可以直接登陆了,如下图所示。
三、卸载jdk环境
因为 Hadoop 是以 java 开发的,所以必须先安装 java 环境
安装之前先卸载centos8自带的OpenJDK
1、建议切换到root 账户
# 切换到root账户
su -
2、查询系统是否以安装jdk
rpm -qa|grep java
3、卸载已安装的jdk
# 温馨提示,文件名仅供参考,具体以自己的为准
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64
4、卸载可能存在的CentOS自带的java环境
pm -qa|grep java
rpm -qa|grep jdk
rpm -qa|grep gcj