CentOS 7 搭建Hadoop伪分布式环境

1. 前提:CentOS 7安装成功,网络配置成功。

2. 下载Xshell和filezilla。

后续CentOS操作都在Xshell中,使用root用户执行。打开Xshell,新建连接,设置名称(note)和主机(ip)。

3. 编辑Windows系统的hosts文件。

(所在目录为C:\Windows\System32\drivers\etc,建议使用Notepad++软件编辑该文件)

增加以下内容:

192.168.48.101 hadoop1

4. 配置主机名,编辑hosts文件。

    vi /etc/hosts

增加以下内容:

192.168.48.101 hadoop1

5. 关闭防火墙。

systemctl status firewalld.service查看防火墙状态。执行后如果看到绿色字样标注的“active(running)”,说明防火墙是开启状态。看到disavtive(dead)的字样,说明防火墙已经关闭。

systemctl stop firewalld.service临时关闭运行的防火墙

systemctl disable firewalld.service禁止防火墙服务器,可以将防火墙永久关闭。

reboot重启CentOS系统,使设置生效。

6. 配置SSH免密登陆。

(1) 在hadoop1上执行ssh-keygen -t rsa生成公私钥,按三次回车键,执行完毕后,将在用户主目录下生成.ssh文件夹,其中包括公私钥文件。

(2) 执行命令ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop1把公钥发送到服务器端。

(3) 执行过程中提示Are you sure you want to continue connecting (yes/no)?时,输入yes。

(4) 执行过程中根据提示输入root用户密码(密码输入时没有显示)。

7. 传输jdk和hadoop的安装文件。

(1) 在Windows环境中下载jdk-8u231-linux-x64.tar.gz和hadoop-2.7.3.tar.gz。

(2) 在hadoop1上创建目录用于保存安装文件:

    mkdir -p /home/root/apps

(3) 通过Xftp(filezilla)软件,将保存在Windows中的jdk-8u231-linux-x64.tar.gz和hadoop-2.7.3.tar.gz传递到hadoop1的/home/root目录中。

8. 安装jdk。

(1) 切换到目录/home/root下:

    cd /home/root

(2) 将jdk解压到/home/root/apps目录:

    tar -xzvf jdk-8u231-linux-x64.tar.gz -C apps/

(3) 编辑/etc/profile文件:

    vi /etc/profile 

在文件的末尾设置JAVA环境变量:

export JAVA_HOME=/home/root/apps/jdk1.8.0_231

export PATH=$PATH:$JAVA_HOME/bin

(4) 让/etc/profile文件修改后立即生效:

    source /etc/profile

(5) 查看jdk版本信息:

    java -version 

如果能够显示正确版本信息,说明配置成功。

9. 安装Hadoop2.7.3。

(1) 切换到目录/home/root下:

    cd /home/root

(2) 将hadoop解压到/home/root/apps目录:

    tar -xzvf hadoop-2.7.3.tar.gz -C apps/

(3) 删除目录中的文档:

    cd /home/root/apps/hadoop-2.7.3/share

    rm -rf doc

(4) 编辑/etc/profile文件:

    vi /etc/profile

设置Hadoop环境变量:

(注意:PATH中一般不建议配置sbin目录)

export JAVA_HOME=/home/root/apps/jdk1.8.0_231

export HADOOP_HOME=/home/root/apps/hadoop-2.7.3

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

(5) 让/etc/profile文件修改后立即生效:

    source /etc/profile

(6) 切换到目录/home/root/apps/hadoop-2.7.3/etc/hadoop下:

    cd /home/root/apps/hadoop-2.7.3/etc/hadoop

可以执行ls命令,查看当前目录中的内容

(7) 编辑core-site.xml文件:

    vi core-site.xml

添加:

fs.defaultFS

hdfs://hadoop1:9000

hadoop.tmp.dir

/home/root/apps/hadoop-2.7.3/tmp

(8) 编辑hdfs-site.xml文件

    vi hdfs-site.xml

添加:

dfs.replication

1

dfs.name.dir

/root/hdfs/name

dfs.data.dir

/root/hdfs/data

dfs.namenode.secondary.http-address

hadoop1:50090

dfs.namenode.secondary.https-address

hadoop1:50091

(9) 根据模板创建mapred-site.xml文件

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

(10) 编辑mapred-site.xml文件:

    vi mapred-site.xml

添加:

mapreduce.framework.name

yarn

(11) 编辑yarn-site.xml文件

    vi yarn-site.xml

添加:

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.resourcemanager.hostname

hadoop1

(12) 编辑hadoop-env.sh文件:

    vi hadoop-env.sh

将默认的export JAVA_HOME=${JAVA_HOME}替换为:

export JAVA_HOME=/home/root/apps/jdk1.8.0_231

(13) 编辑yarn-env.sh文件

    vi yarn-env.sh

将默认的# export JAVA_HOME=/home/y/libexec/jdk1.6.0/替换为: export JAVA_HOME=/home/root/apps/jdk1.8.0_231

记得删除这一行最前面的#。

(14) 格式化namenode节点:

    hdfs namenode -format

10. 启动Hadoop集群。

    cd /home/root/apps/hadoop-2.7.3/sbin

    ./start-all.sh

提示Are you sure you want to continue connecting (yes/no)?时,输入yes

11. 显示当前所有java进程pid。

    jps

查看Hadoop是否启动成功:

(NameNode,SecondaryNameNode,DataNode,ResouceManager,NodeManager)

12. 在Windows中启动浏览器查看运行情况。

推荐使用Google Chrome浏览器)

HDFS的Web端口号是50070——hadoop1:50070

YARN的Web端口号是8088——hadoop1:8088

13. 停止Hadoop。

    cd /home/root/apps/hadoop-2.7.3/sbin

    ./stop-all.sh

你可能感兴趣的:(CentOS 7 搭建Hadoop伪分布式环境)