Hadoop伪分布式搭建

linux 1个月前 散逸
浏览:132 0

1. 关闭防火墙

关闭防火墙

执行关闭命令: systemctl stop firewalld.service执行开机禁用防火墙自启命令 : systemctl disable firewalld.service

开启防火墙

启动:systemctl start firewalld.service防火墙随系统开启启动 : systemctl enable firewalld.service

查看防火墙状态

service iptables status  查看防火墙状态

2. 配置主机名

2.1. 修改文件 /etc/sysconfig/network

设定主机名与网卡启动、网关配置

vi /etc/sysconfig/network
[root@host1 ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=muban

需要注意的是Hadoop的集群中的主机名不能有_ (下划线)。如果存在_会导致Hadoop集群无法找到这群主机,从而无法启动!

经过上面的修改,主机名称不会马上改变,必须重启才能生效。所以可以使用如下命令进行立即更改:

2.2. 将hostname属性改为指定的主机名。

hostname 

2.3. 让network文件重新生效:

source /etc/sysconfig/network

修改主机名:

vi /etc/sysconfig/network 修改HOSTNAME(永久改)
hostname再修改(临时改)

修改了/etc/sysconfig/network下的HOSTNAME后,然后使用hostname命令使其生效。但是需要注意的是当前会话还是不会变化,但是后续新建会话会生效。
结合永久性修改和临时性修改hostname,使其不必重启Linux服务器

3. 配置hosts文件,将主机名和ip地址进行映射

编辑hosts文件:

vim /etc/hosts
172.16.51.21  host1

4. 配置ssh进行免密互通 (可先跳过)

5. 重启Linux让主机名的修改生效:reboot

6. 安装JDK

6.1. 上传gz包,并解压

解压:tar -zxvf 包名

6.2. 设置环境

vi /etc/profile在文件尾行添加以下内容JAVA_HOME=/simple/jdk1.7.0_79export PATH=$JAVA_HOME/bin:$PATH

6.3. 重新加载profile使配置生效。

source /etc/profile

这个文件是每个用户登录时都会运行的环境变量设置,当用户第一次登录时,该文件被执行。并从/etc/profile.d目录的配置文件中搜集shell的设置。

环境变量配置完成,测试环境变量是否生效。

echo $JAVA_HOMEjava -version 

7. 配置Hadoop

7.1. 上传安装包,并解压

tar -zxvf hadoop-2.4.1.tar.gz

7.2. 修改配置

cd /simple/hadoop-2.4.1/etc/hadoop 

7.2.1. hadoop-env. sh

修改JAVA_HOME的路径,修改成具体的路径。
修改HADOOP_CONF_DIR的路径,修改为具体的路径。

# The java implementation to use.
export JAVA_HOME=/simple/jdk1.7.0_79
 
# The jsvc implementation to use. Jsvc is required to run secure datanodes.
#export JSVC_HOME=${JSVC_HOME}
 
export HADOOP_CONF_DIR=/simple/hadoop-2.4.1/etc/hadoop

7.2.2. core-site.xml

<configuration>
<property>
    <name>fs.default.name</name>
    <value>hdfs://172.16.51.21:9000</value>
</property>
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://172.16.51.21:9000</value>
</property>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/simple/hadoop-2.4.1/tmp</value>
</property>
</configuration>

7.2.3. hdfs-site.xml

<configuration>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <property>
                <name>dfs.name.dir</name>
                <value>/simple/hadoop-2.4.1/hdfs/name</value>
        </property>
        <property>
                <name>dfs.data.dir</name>
                <value>/simple/hadoop-2.4.1/hdfs/data</value>
        </property>
</configuration>
 

7.2.4. mapred-site.xml

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

7.2.5. yarn-site.xml

<configuration>
 
<!-- Site specific YARN configuration properties -->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>172.16.51.21</value>
</property>
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
 
</configuration>

8. 编辑profile文件:

vi /etc/profile

1.添加Hadoop的环境变量
在最后一行添加

JAVA_HOME=/simple/jdk1.7.0_79
HADOOP_HOME=/simple/hadoop-2.4.1
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH 

重新生效:

source /etc/profile

9. 启动

9.1. 格式化namenode:

hdfs namenode -format  或者  hadoop namenode -format

第一次配置需要初始化

9.2. 启动dfs和yarn (这里命令手动输入,不要复制)

start-dfs.sh

start-yarn.sh

启动之后,在任意目录下执行jps命令验证进程是否正 常启动。

1、全部启动 :start-all.sh

2、分开启动:单独启动hdfs start-hdfs.sh;单独启动yarn start-yarn.sh

jps 查看是否启动成功。

start-hdfs.sh 会启动文件系统的 namenode datanode

start-yarn.sh 会启动资源调度 ResourceManager NodeManager

停止也有2种方式:

1、停止全部 stop-all.sh

2、分开停止:1、停止hdfs stop-hdfs.sh;2、停止yarn stop-yarn.sh

输入 jps 查看

[root@host1 hadoop]# jps
14711 DataNode
97326 NameNode
98508 SecondaryNameNode
99506 NodeManager
48045 Jps
94455 ResourceManager

测试:

浏览器输入:http://自己的ip:50070 出现界面

10. PS:注意!尽量不要多次格式化,会导致ID不想同,datanode启动失败。

11. 题目1

1、在本地计算机上创建测试文件helloworld.txt ,输入3行内容

helloworld this is my test mkdir touch blue yum yum mkdir
helloworld cat vim mkdir touch yum
cat this my test cat vim touch red yello

将helloworld.txt文件上传至HDFS目录/user/root/filetest下,并以HDFS显示它的内容将整个工作流程及最终验证结果截图,写在word文档中,上传。

步骤:
1、windows上创建helloword.txt输入3行内容
2、启动hadoop
3、把本地计算机中的helloword.txt.上传到centos中
4、创建目录/user/root/filetest
hdfs dfs -mkdir -p /user/root/filetest 解释: -p(逐级创建)
5、把helloword.txt.上传到HDFS目录中
hdfs dfs -put /root/helloworld.txt /user/root/filetest 或者 hadoop fs -moveFromLocal aaa.txt /user/root
6、查看文件(命令) hdfs dfs -ls /user/root/filetest

结果:浏览器

Hadoop伪分布式搭建
版权声明:散逸 发表于 2020-04-15 17:28:50。
转载请注明:Hadoop伪分布式搭建 | 散逸-博客-导航

暂无评论

暂无评论...