一、更改图形化界面为字符型界面
multi-user.target是指命令行模式
graphical.target是指图形化界面
systemctl get-default是查看初始化界面类型
systemctl set-default multi-user.target改为命令行模式
systemctl set-default graphical.target改为图形化界面
二、修改主机名
hostname:查看主机名
hostnamectl set-hostname node1:永久修改主机名
修改静态IP
命令:Vim /etc/sysconfig/network-scripts/ifcfg-ens33
使用xshell连接虚拟机
三、安装JDK
上传JDK的jar包到/usr/local/module目录下使用xftps拖过去就OK
解压到/usr/local/soft中:tar -zxvf jdk.tar.gz -C /usr/local/soft/
配置环境变量
vi /etc/profile
在最后一行加入
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
export PATH=$PATH:$JAVA_HOME/bin
刷新配置文件
source /etc/profile
四、克隆虚拟机
修改node1和node2的IP
Vim /etc/sysconfig/network-scripts/ifcfg-ens33
vim /etc/sysconfig/network-scripts/ifcfg-ens33
重启网络
service network restart
使用Xshell连接虚拟机
主机名映射
vi etc/hosts
主节点IP 主节点名
从节点IP 从节点名
例:192.168.159.100 master
192.168.159.110 node1
192.168.159.110 node2
五、安装Hadoop
1、关闭防火墙 所有节点
service iptables stop
chkconfig iptables off
(上下都可)
查看防火墙状态:systemctl status firewalld service
关闭防火墙:systemctl stop firewalld service
关闭防火墙开机自启:systemctl disable firewalld service
2、设置免密钥
在master中生成密钥文件
ssh-keygen -t rsa
一直回车
将密钥文件同步到所有节点
ssh-copy-id node1
ssh-copy-id node2
进入/root
./.ssh
写入公钥
cat ./id_rsa.pub >> ./authorized_keys
3、上传hadoop安装包 上传到msater的/usr/local/soft/
hadoop-2.7.6.tar.gz
上传Hadoop包;
解压缩
tar -zxvf hadoop-2.7.6.gar.gz (-C /usr/local/soft)
如果解压到当前目录的话括号里的内容可不写
4、修改配置文件
修改配置文件
1、修改master中hadoop的一个配置文件/usr/local/soft/etc/hadoop/slaves
删除原来的所有内容,修改为如下
node1
node2
2、修改hadoop的几个组件的配置文件进入cd /usr/local/soft/hadoop-2.7.6/etc/hadoop 目录下(请一定要注意配置文件内容的格式,可以直接复制过去黏贴。不要随意改)
* 修改hadoop-env.sh文件
加上一句:
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
//jdk版本一定要是和自己的版本相对应
3、修改 core-site.xml
将下面的配置参数加入进去修改成对应自己的
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>//master修改为对应的主机名
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/soft/hadoop-2.6.0/tmp</value>//路径修改为自己的文件夹路径
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
</configuration>
4、修改 hdfs-site.xml 将dfs.replication设置为1
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
5、文件yarn-site.xml
先删除文件中原来有的
<configuration>
*******************
</configuration>
这三行内容
<configuration>
<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.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>20480</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>2.1</value>
</property>
</configuration>
6、修改 mapred-site.xml(将mapred-site.xml.template 复制一份为 mapred-site.xml
命令:cp mapred-site.xml.template mapred-site.xml)
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
5、将hadoop的安装目录分别拷贝到其他子节点
scp -r /usr/local/soft/hadoop-2.7.6 node1:/usr/local/soft/
scp -r /usr/local/soft/hadoop-2.7.6 node2:/usr/local/soft/
6、 启动hadoop
首先看下hadoop-2.7.6目录下有没有tmp文件夹。
cd /usr/local/soft/hadoop-2.7.6
如果没有在此目录下执行一次格式化命令:
执行命令:
./bin/hdfs namenode -format
执行命令后会生成tmp文件。
然后在/usr/local/soft/hadoop-2.7.6目录下
启动执行:./sbin/start-all.sh
7、检查是否搭建成功
启动完成后通过jps命令查看验证进程:jps
主节点进程为下面几个(下面是进程名称,不是命令):
Namenode
secondarnamenode
resourcemanager
子节点进程(在node1和node2上分别输入命令:jps)
输入jps后会显示下面两个进程
datanode
nodenodemanager
验证hdfs:
可以windows电脑登录浏览器(强烈建议chrome浏览器)
地址:192.168.1.80:50070 (ip地址是master的地址)
看到下面页面证明 hdfs装好了
下图是我已经创建了一个hdfs上的目录,刚装好的hadoop应该是空的什么都没有
***** 如果第一次启动失败了,请重新检查配置文件或者哪里步骤了。
再次重启的时候
1、需要手动将每个节点的tmp目录删除: 所有节点都要删除
rm -rf /usr/local/soft/hadoop-2.7.6/tmp
在主节点将namenode重新格式化
在主节点执行命令:
./bin/hdfs namenode -format
如果在put文件的过程中出现了_COPYING_ could only be replicated to 0 nodes instead of minReplication (=1).
的报错
1 格式化重来
2 如果不行,看下时间,防火墙
3 修改 hosts文件,把里面那两条删了