文章目录
安装java
官网下载jdk-8u201-linux-x64.tar.gz
在usr目录下建立java文件夹,并将tar文件复制到这里并解压
sudo mkdir /usr/java
sudo mv ~/下载/jdk-8u201-linux-x64.tar.gz /usr/java
cd /usr/java
sudo tar -zxvf dk-8u201-linux-x64.tar.gz
java安装完毕
java -version 查看java版本
安装SSH并进行免密配置
安装SSH:
sudo apt install openssh-server
sudo apt install openssh-client
配置ssh客户端,去掉PasswordAuthentication yes前面的#号,保存退出
sudo vim /etc/ssh/ssh_config
配置ssh服务器,把PermitRootLogin prohibit-password改成PermitRootLogin yes,保存退出。
sudo vim /etc/ssh/sshd_config
开启ssh服务
sudo /etc/init.d/ssh restart
免密配置:
进入~/.ssh目录
cd ~/.ssh
执行命令产生认证文件
ssh-keygen -t rsa -P ""
一直敲回车,然后将在/home/hadoop/.ssh目录下生成id_rsa认证文件
将该文件复制到名为authorized_keys的文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
测试一下看看能不能登录:
ssh localhost
登录成功
安装并配置hadoop-2.7.1
首先为Hadoop创建一个专门的用户组如hadoop-user,然后在该用户组下创建Hadoop用户:
(此处可以获取根权限也可在每条命令前加sudo)
groupadd hadoop-user
useradd -g hadoop-user -d /home/hadoop -s /bin/bash -m hadoop
(注意在hadoop前添加-m参数,否则无法创建hadoop目录登录hadoop用户)
passwd hadoop
设置用户密码
切换用户至hadoop
后续实验内容全部在登录hadoop用户下实现
解压安装hadoop
到Hadoop官网下载hadoop
建立安装目录
mkdir ~/hadoop_installs
把hadoop-2.7.1.tar.gz放在这里,然后解压:
[hadoop@Siler hadoop_installs]$ tar –zxvf hadoop-2.7.1.tar.gz
配置环境变量
编辑~/.bashrc文件
vim ~/.bashrc
设置如下环境变量(添加到文件末尾):
修改hadoop配置文件:
Hadoop的配置文件存放在hadoop安装目录下的etc/hadoop目录中,主要有以下几个配置文件要修改:
hadoop-env.sh:Hadoop环境变量设置
添加java环境变量即可
core-site.xml:设置主机的IP和端口并配置tmp路径
hdfs-site.xml:分片数量、name和data路径 、hadoop Web网址
yarn-site.xml :完成ResouceManager的主机名和服务等配置
mapred-site.xml:主要完成mapreduce framework设置和jobhistoryserver的设置
复制一份mapred-site.xml.template并改名为mapred-site.xml
配置完成
进入/hadoop_installs/Hadoop-2.7.1并执行格式化命令
bin/hdfs namenode -format
格式化成功
执行以下命令启动HDFS和MapReduce
sbin/start-all.sh
启动历史服务器
sbin/mr-jobhistory-daemon.sh start historyserver
用JPS命令检查一下是否正常启动:
jps
显示以下各进程信息
HDFS和MapReduce都已正常启动
执行以下命令关闭HDFS和MapReduce
sbin/stop-all.sh
至此,hadoop安装完成
自行测试自己找的英文txt文件组
测试文件:34个英文txt文件
文件路径为/home/hadoop/input
在HDFS文件系统建立文件夹/user/hadoop
bin/hdfs dfs -mkdir /user/Hadoop
建立输入文件夹test-in(相对路径)
bin/hdfs dfs -mkdir test-in
将测试文件拷贝到test-in文件夹下:
bin/hdfs dfs -copyFromLocal /home/hadoop/input test-in
查看test-in/input下文件:
bin/hdfs dfs -ls test-in/input
此处常见报错:
可能是Hadoop版本问题,2.x创建文件夹命令应该为-mkdir -p +dirpath
Namenode处于安全模式中,退出命令为:
hdfs dfsadmin -safemode leave
在本机上运行Hadoop系统自带的WordCount可执行程序文件
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /user/hadoop/test-in/input test-out
输出结果部分截图:
web查看:(端口19888)