Hadoop环境搭建

189 阅读2分钟

1、下载地址

Hadoop下载地址(CDH版本)
archive.cloudera.com/cdh5/cdh/5/

2、环境要求

1、Java 1.8+
2、ssh

注:本地文件拷贝到远程命令,以jdk文件为例,将其拷贝到用户目录下的software文件夹

scp jdk-8u91-linux-x64.tar.gz 用户名@IP:~/software/  

3、解压jdk压缩文件到指定目录

tar -zxvf jdk-8u91-linux-x64.tar.gz -C ~/app

4、配置Java环境

到用户目录下修改.bash_profile 配置环境变量这里可以修改用户目录下的.bash_profile,也可以修改根目录下的 /etc/profile

详情可参考:yangfangs.github.io/2016/03/31/…

vim ~/.bash_profile
or
vim /etc/profile

添加如下两行代码即可

export JAVA_HOME=/home/hadoop/app/jdk1.8.0_91
export PATH=$JAVA_HOME/bin:$PATH

刷新配置

source ~/.bash_profile
or
source /etc/profile

5、ssh配置无密码登录

ssh-keygen -t rsa

然后一路回车
此时进入~/.ssh查看

id_rsa  私钥
id_rsa.pub  公钥
known_hosts 

然后

cat id_rsa.pub >> authorized_keys

此时进入~/.ssh查看

authorized_keys  id_rsa  id_rsa.pub  known_hosts

修改权限

chmod 600 authorized_keys
-rw-------  1 root root  397 Oct 18 16:38 authorized_keys

3、Hadoop单机版环境搭建

解压hadoop安装包到指定目录下

tar -zxvf hadoop-2.6.0-cdh5.15.1.tar.gz -C ~/app

解压后内部文件如下 其中bin存客户端指令,sbin存服务端启动指令,etc/hadoop,hadoop相关配置文件存放目录,lib存放一些依赖包,share常用例子程序。

1、首先进入etc/hadoop目录下找到hadoop-env.sh文件配置JAVA_HOME

vim hadoop-env.sh 

2、配置core-site.xml

vi etc/hadoop/core-site.xml:
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:8020</value>
    </property>
</configuration>

3、配置hdfs-site.xml,修改副本个数为1(单机)

etc/hadoop/hdfs-site.xml:
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

修改临时文件存放位置

    <property>
        <name>hadoop.tmp.dir</name>
        <value>/hadoop/app/tmp</value>
    </property>

4、配置slaves文件

5、将hadoop配置到系统环境变量

vi ~/.bash_porfile

source ~/.bash_profile

6、格式化文件存储位置

hdfs namenode -format

7、启动集群

进入sbin目录下

./start-dfs.sh

8、配置yarn

首先配置etc/hadoop/mapred-site.xml文件

<configuration>
   <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
   </property>
</configuration>                   

其次配置etc/hadoop/yarn-site.xml文件

<configuration>
   <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
   </property>
</configuration>    

9、启动yarn

./start-yarn.sh

Jps验证

发现有namenode、secondaryNameNode以及DataNode就意味着hdfs启动成功,发现有resourcemanager及NodeManager说明yarn启动成功。这里要注意各自进行的占用端口。

或者浏览器验证,首先配置阿里云安全组,然后关闭防火墙或者打开相关端口访问权限,这里特别需要注意,打开安全组端口后,还需打开防火墙的特定端口才能访问,最简单的方法是之间关闭防火墙。HDFS的NameNode及Yarn中的ResourceManager的http服务端口分别为50070及8088,浏览器访问ip加端口即可访问。

firewall-cmd --state // 查看防火墙状态
systemctl stop firewalld.service //关闭防火墙
systemctl start firewalld.service // 打开防火墙