大数据竞赛4hadoop完全分布式安装

由于自己在安装的过程中忘记截图,所以只有步骤和命令,如果你在操作的过程中,遇到问题,欢迎找我交流~~

通过xshell远程连接机器完成安装。

一、使用xftp将hadoop安装包上传到master机器上。
二、将hadoop压缩包解压到/opt/module目录下
tar -zxvf /soft/hadoop-3.1.3.tar.gz -C /opt/module/
三、配置环境变量
vi /root/.bash_profile
export HADOOP_HOME=/opt/module/hadoop-3.1.3/
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

保存退出使其生效:source /root/.bash_profile

检测是否安装配置成功:

hadoop version
四、修改hadoop的6个配置文件

进入配置文件的目录,查看配置文件:

cd /opt/module/hadoop/etc/hadoop/
ls

(1)修改hadoop-env.sh

vi /opt/module/hadoop/etc/hadoop/hadoop-env.sh
文件中加入下面这些:
    export JAVA_HOME=/opt/module/jdk
    export HDFS_NAMENODE_USER=root
    export HDFS_DATANODE_USER=root
    export HDFS_SECONDARYNAMENODE_USER=root
    export YARN_RESOURCEMANAGER_USER=root
    export YARN_NODEMANAGER_USER=root

(2)修改core-site.xml

vi core-site.xml
文件中加入这些:
    <property>
            <name>fs.defaultFS</name>
            <value>hdfs://master:9000</value>
    </property>
    <property>
            <name>hadoop.tmp.dir</name>
            <value>/opt/data/hadoop</value>
    </property>

(3)修改hdfs-site.xml

vi hdfs-site.xml
文件中加入这些:
    <property>
            <name>dfs.replication</name>
            <value>3</value>
    </property>

(4)修改mapred-site.xml

vi mapred-site.xml
在文件中加入这些:
    <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
    </property>

(5)修改yarn-site.xml

vi yarn-site.xml
在文件中加入这些:
    <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>master</value>
    </property>
    <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>
    <property>
            <name>yarn.nodemanager.vmem-check-enabled</name>
            <value>false</value>
    </property>
    <property>
            <name>yarn.nodemanager.pmem-check-enabled</name>
            <value>false</value>
    </property>
    <property>
            <name>yarn.application.classpath</name>
            <value>(hadoop classpath)命令产生的内容粘贴到这里</value>
    </property>

(6)配置workers

vi workers
进入文件,将文件内容修改为下面的内容:
    master
    slave1
    slave2
五、将配置好的hadoop拷贝到其他机器(slave1、slave2)
scp -r /opt/module/hadoop slave1:/opt/module
scp -r /opt/module/hadoop slave2:/opt/module
scp /root/.bash_profile slave1:/root
scp /root/.bash_profile slave2:/root
六、格式化hadoop(在master上执行的)

hdfs namenode -format

七、启动、停止hadoop
start-all.sh
stop-all.sh
八、检查3台机器上的java进程是否正常,使用命令jps

如果master机器上5个:NameNode、ResourceManager、Dataode、NodeManager、SencondaryNameNode。

slave1和slave2上分别2个:DataNode、NodeManager。

则正常,否则不正常。

九、打开hadoop的Web管理界面查看:

在windows下浏览器输入:http://master机器上的ip地址:9870

我的ip地址是192.168.225.31,所以我输入的网址是:http://192.168.225.31:9870

十、遇到的问题,以及解决办法

启动hadoop:start-all.sh,遇到下面这个问题

master: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

解决方式为:

出现这问题是因为免密登录配置上的缺陷导致。

ssh localhost 命令执行后,如果让你输入密码的,则说明本机的免密配置没有配置。

配置命令:

cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys