Hadoop的安装和使用-2024年08月01日
1.创建Hadoop用户
如果安装Ubuntu的时候不是用的“hadoop”用户,那么需要增加一个名为 hadoop的用户首先按ctrl+alt+t打开终端窗口,输入如下命令创建新用户
$ sudo useradd -m hadoop -s /bin/bash
上面这条命令创建了可以登陆的hadoop 用户,并使用/bin/bash 作为shell接着使用如下命令设置密码,可简单设置为hadoop,按提示输入两次密码,密码不能够包括用户名,不能太简单,不能少于8位,不能使用password作为密码。
$ sudo passwd hadoop
可为hadoop用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题,这一步执行完一定他要显示正在将hadoop加入。。。即为成功
$ sudo adduser hadoop sudo
hadoop账户创建成功后,切换当前用户至hadoop,再继续往下操作注意注意
2.SSH登陆权限设置
SSH为Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议。SSH是目前较可靠、专为远程登录会话和其他网络服务提供安全性的协议。
SSH是由客户端和服务端的软件组成,服务端是一个守护进程(daemon),它在后台运行并响应来自客户端的连接请求,客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序
1.安装vim
$sudo apt-get install vim
2.下载SSH服务端和客户端
$sudo apt-get install openssh-server
3.登录本机
$ssh localhost //输入 'yes',登录本机,每次登录都需密码
4.配置无密码登录
$exit //退出登录 $cd ~/.ssh/ //切换到ssh目录 $ssh-keygen -t rsa //生成密钥,之后在这会按几次回车,看下图 $cat ./id_rsa.pub >> ./authorized_keys //将密钥添加到公钥中
5.无密码登录
$ssh localhost //本次登录无需输入密码
3.java的安装
Java环境可选择Oracle的JDK,或是OpenJDK可以在Ubuntu中直接通过命令安装OpenJDK8
1.首先更新下包
sudo apt update
2.安装jdk1.8
sudo apt install openjdk-8-jdk
3.验证安装
java -version
4.查看你安装目录
update-alternatives --list java
5.将 Java 可执行文件的路径添加到 PATH 环境变量中:
echo 'export PATH="$PATH:/usr/lib/jvm/java-8-openjdk-amd64/bin"' >> ~/.bashrc export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre
6.重新加载环境变量
source ~/.bashrc
7.pwd查看自己当前路径
8.在此目录下新建一个文本,写个简单的java代码,做测试
public class test { public static void main(String[] args) { for(int i = 0; i < 10; i++) { System.out.print(i); } } }
9.修改格式为java文件
10.打开命令终端 ctrl+alt+t,执行编译命令,代码没错的情况下,会在同目录下多一个文件叫test.class
javac test.java
11.执行编译文件
java test
12.至此安装及检测完成
4.Hadoop单机安装配置
1.用linux自带的firefox浏览器访问Hadoop官网,从Apach官网上下载Hadoop 2.10.2版本
https://downloads.apache.org/hadoop/common/hadoop-2.10.2/hadoop-2.10.2.tar.gz
这里可以看到下载的非常慢,可以使用国内镜像下载
https://downloads.apache.org/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz
2.解压安装Hadoop2.10.2
$cd ~/下载 //切换到Hadoop安装包的位置 $sudo tar -zxf hadoop-2.10.2.tar.gz -C /usr/local //将Hadoop解压到/usr/local目录下 $cd /usr/local $sudo mv ./hadoop-2.10.1/ ./hadoop //将目录名改为hadoop $sudo chown -R hadoop ./hadoop //修改目录权限
3.检查是否可用
$ cd /usr/local/hadoop $ ./bin/hadoop version
显示下图即为成功,如果显示JAVA_HOME找不到,自己回到上面重新配置java的path
4.将hadoop配置环境变量
$sudo vim ~/.bashrc //打开环境变量目录写入 export HADOOP_HOME=/usr/local/hadoop export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native" export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH
5.查看Hadoop版本信息
$hadoop version //查看版本信息
5.Hadoop伪分布式安装配置
1.跳转目录
cd /usr/local/hadoop/etc/hadoop
2.修改 core-site.xml
<configuration> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
3.修改 hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> </configuration>
4.关闭搜友命令窗口,重新打开命令窗,做格式化并启动
/usr/local/hadoop/bin/hdfs namenode -format
执行后会又一大堆字符,看到has been successfully …,即为成功
5.然后启动全部进程:
start-all.sh
这里可能出现找不到java_home报错,但是执行java -version又可以显示
此时方法为:修改hadoop-env.sh 文本路径为:
/usr/local/hadoop/etc/hadoop/hadoop-env.sh
里面有个
export JAVA_HOME=${JAVA_HOME} 把这一行改为: export JAVA_HOME=你javahome的绝对路径即可
6.启动成功图
7.浏览器打开http://localhost:50070可以看到