【HADOOP】【备忘】hadoop安装


环境: CentOS7 java8
安装包: hadoop-2.10.0.tar.gz

一、系统设置(可以先在一个系统里做,再克隆修改)

 
!!!(零)到(五)都在master下进行!!!
!!!(零)到(五)都在master下进行!!!
!!!(零)到(五)都在master下进行!!!
 

(零)配置网络与安装java

1、linux虚拟机NAT网络配置
2、linux使用JDK替换OpenJDK流程

(一)同步时钟

1、yum install -y ntpdate安装ntpdate
2、crontab -e自动打开一个空文件,输入i进入编辑模式,输入0 1 * * * /usr/sbin/ntpdate cn.pool.ntp.org,按esc后输入:wq保存退出

可以输入ntpstat查看是否同步,下图说明每512秒更新一次,校正约23*10-6秒。
一-(一)-2


(二)配置主机名(可选)

1、CentOS7及以后使用hostnamectl set-hostname 主机名进行修改
 


(三)关闭防火墙和SELINUX

1、停止防火墙systemctl stop firewalld
2、禁止开机启动systemctl disable firewalld
3、查看防火墙状态firewall-cmd --state,显示not running则关闭成功
4、输入vi /etc/selinux/config编辑config文件
5、将SELINUX=enforcing改为SELINUX=disabled,保存退出
 


(四)创建用户账号(可选)

1、输入useradd 用户名创建用户
 


(五)配置hosts列表

1、输入vi /etc/hosts编辑hosts文件
2、由于准备一个master两个slave,所以追加如下(数量与ip因人而异)

192.168.153.100 master
192.168.153.101 slave1
192.168.153.102 slave2

3、esc后输入:wq保存退出
 


(六)关机(shutdown -h now)克隆

1、对克隆完的虚拟机按照(五)里面的ip进行配置。过程类似(零),但是只用改下ip就行了
2、配置对应主机名(可选)
 
!!!下面过程需要同时开启master、slave1和slave2!!!
!!!下面过程需要同时开启master、slave1和slave2!!!
!!!下面过程需要同时开启master、slave1和slave2!!!
 


(七)免密钥登录配置

1、HadoopMaster节点

(1)进入之前创建的用户(如果有)输入ssh-keygen –t rsa,一直回车,会在/root/.ssh中生成id_rsa id_rsa.pub两个文件
(2)复制公钥文件cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
(3)修改 authorized_keys 文件的权限chmod 600 ~/.ssh/authorized_keys
(4)将authorized_keys文件复制到slave1和slave2节点ssh-copy-id slave1ssh-copy-id slave2

2、HadoopSlave节点

(1)同1_(1)输入ssh-keygen -t rsa
(2)cd ~/.ssh进入文件夹,修改 authorized_keys 文件的权限chmod 600 ~/.ssh/authorized_keys(authorized_keys已经存在)
(3)在master输入ssh slave1ssh slave2如果如下图所示则成功
一_(七)_2_(3)
一_(七)_2_(3)
 



二、Hadoop配置部署

每个节点上的Hadoop配置基本相同,在master节点操作,然后完成复制到另一个节点。

(一)解压、配置环境变量(环境变量必须使用绝对路径)

(解压)类似linux虚拟机NAT网络配置中,安装包hadoop-2.10.0.tar.gz/root/coding/hadoop目录下
1、在/root/coding/hadoop(自定)目录下输入tar -xf hadoop-2.10.0.tar.gz

 
(配置环境变量hadoop-env.sh)
2、输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/hadoop-env.sh,将# export JAVA_HOME=${JAVA_HOME}改为export JAVA_HOME=/root/coding/java/jdk1.8.0_231

 
(配置环境变量yarn-env.sh)
3、输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/yarn-env.sh,将# export JAVA_HOME=/home/y/libexec/jdk1.6.0/改为export JAVA_HOME=/root/coding/java/jdk1.8.0_231(去掉#)
 


(二)几个xml文件的配置

(配置核心组件core-site.xml)
1、输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/core-site.xml,用下面的代码替换core-site.xml中的内容:(下面的<value>/root/coding/hadoop/hadoopdata</value>里面可以自己选地址)

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/root/coding/hadoop/hadoopdata</value>
</property>
</configuration>

 
(配置文件系统hdfs-site.xml)
2、输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/hdfs-site.xml,用下面的代码替换core-site.xml中的内容:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

 
(配置文件统统yarn-site.xml)
3、输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/yarn-site.xml,用下面的代码替换core-site.xml中的内容:

<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>
</configuration>

 
(配置计算架mapred-site.xml)
4、先输入cp /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml.template /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml。再输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml,用下面的代码替换core-site.xml中的内容:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

(三)在master节点配置slaves文件

1、输入vi /root/coding/hadoop/hadoop-2.10.0/etc/hadoop/slaves,追加

slave1
slave2

(四)复制到从节点

1、cd /root/coding/hadoop
2、将hadoop-2.10.0文件夹拷贝到slave1和slave2上scp -r hadoop-2.10.0 root@slave1:/root/coding/hadoopscp -r hadoop-2.10.0 root@slave2:/root/coding/hadoop
 


(五)配置Hadoop启动的系统环境变量

该操作需要同时在master、slave1和slave2上操作

1、cd到/root目录,然后编辑文件vi ~/.bash_profile
2、将下面的代码追加到.bash_profile末尾:

#HADOOP
export HADOOP_HOME=/root/coding/hadoop/hadoop-2.10.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

3、保存退出后执行命令source ~/.bash_profile
4、在/root/coding/hadoop下创建hadoopdata目录
 



三、启动Hadoop集群

(格式化文件系统)
1、在master主机执行hdfs namenode -format(如果提示hdfs命令不存在,则每个主机都需要重新执行次source ~/.bash_profile命令)

 
(启动 Hadoop)
2、进入hadoop主目录cd /root/coding/hadoop/hadoop-2.10.0,然后执行命令sbin/start-all.sh,输入yes
 



四、验证

1、在master端输入jps命令回车,如果出现ResourceManager、Jps、
NameNode和SecondaryNameNode四个进程,则代表主节点安装成功
四_1
 
2、在slave端输入jps命令回车,如果出现NodeManager、DataNode
和Jps三个进程,则代表从节点安装成功
四_2
 
3、在浏览器输入http://master:50070/检查namenode和datanode是否正常
四_3
 
4、在浏览器输入http://master:18088/检查yarn是否正常
四_4
 
5、运行PI实例检查集群是否成功
(1)cd /root/coding/hadoop/hadoop-2.10.0/share/hadoop/mapreduce/进入Hadoop安装主目录,执行下面的命令:

hadoop jar /root/coding/hadoop/hadoop-2.10.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar pi 10 10

四_5
输出PI值则集群安装成功且正常启动

发布了13 篇原创文章 · 获赞 102 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/weixin_42159233/article/details/105250819