目录
1.部署环境
- 俩台centos7 64 虚拟机
2.网络
- 192.168.3.132
- 192.168.3.133
3.修改 host
- $ hostname hserver1
- $ hostname hserver2
- $ vi /etc/hosts
改成上边这个,然后测试ping一下 看是否通
4.实现ssh远程登录
- $ ssh-keygen -t rsa -P ''
一路回车,后会在~/.ssh中生成文件
俩台机器都执行这个
然后
- $ cat ~/.ssh/id_rsa.pub
把俩个机器的公钥都拷贝到 一个新文件中文件名叫 authorized_keys
- $ vi ~/.ssh/authorized_keys
这个文件俩个电脑都放一下 这样ssh 链接 就ok了 如果没做过就从网上找例子吧非常多
测试联通ssh
- ssh hserver1
- ssh hserver2
进去就ok了
5.安装java
- rpm -qa|grep java
检测是否已经有安装的了,有的话就卸载掉,卸载命令如下 或从网上查下
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodepsjava-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodepsjava-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
rpm -e --nodepsjava-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
从网上下载jdk
然后解压
- tar -xvf jdk-8u192-linux-x64.tar
配置环境变量
- vim /etc/profile
export JAVA_HOME=/java/jdk1.8.0_192
export JRE_HOME=$JRE_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export HADOOP_HOME=/hadoop/hadoop-2.9.2
export PATH=$HADOOP_HOME/bin:HADOOP_HOME/sbin:$PATH
- 执行 如下 生效
- $ source /etc/profile
查看是否生效
- [root@hserver2 java]# echo $JAVA_HOME
6.安装hadoop
重要
以下步骤在hserver1和hserver2都需要做一遍
6.1创建文件夹
mkdir -p /hadoop
mkdir -p /hadoop/tmp
mkdir -p /hadoop/var
mkdir -p /hadoop/dfs
mkdir -p /hadoop/dfs/name
mkdir -p /hadoop/dfs/data
6.2下载hadoop2.9.2及解压
http://hadoop.apache.org/releases.html
放到 /hadoop目录下
- cd /hadoop
- tar –xvf hadoop-2.9.2.tar.gz
6.3修改配置文件
6.3.1修改hadoop-env.sh
打开文件:vim /opt/hadoop/hadoop-2.9.2/etc/hadoop/hadoop-env.sh
- 将export JAVA_HOME=${JAVA_HOME}
- 修改为export JAVA_HOME=/opt/java/jdk1.8.0_151
- 将 export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
- 修改为export HADOOP_CONF_DIR=/hadoop/hadoop-2.9.2/etc/hadoop
然后使环境变量生效,执行:
source /opt/hadoop/hadoop-2.9.2/etc/hadoop/hadoop-env.sh
6.3.2修改slaves文件
打开文件:vim /opt/hadoop/hadoop-2.9.2/etc/hadoop/slaves
将里面的localhost删除,添加hserver2。
- 注:hsever2机器配置时也是添加hserver2,这里是定义从机名称。
hserver2
6.3.3修改core-site.xml文件
打开文件:vim /opt/hadoop/hadoop-2.9.0/etc/hadoop/core-site.xml
在<configuration></configuration>之间添加配置参数如下:
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop/tmp</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://hserver1:9000</value>
</property>
6.3.4修改hdfs-site.xml文件
打开文件:vim /opt/hadoop/hadoop-2.9.0/etc/hadoop/hdfs-site.xml
在<configuration></configuration>之间添加配置参数如下:
<property>
<name>dfs.name.dir</name>
<value>/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
6.3.5新建及修改mapred-site.xml文件
在/opt/hadoop/hadoop-2.9.0/etc/hadoop/中没有mapred-site.xml文件,但可以通过复制mapred-site.xml. template文件重命名为mapred-site.xml,再进行修改。在<configuration></configuration>之间添加配置参数如下:
<property>
<name>mapred.job.tracker</name>
<value>hserver1:49001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>/hadoop/var</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
6.3.6修改yarn-site.xml文件
打开文件:vim /opt/hadoop/hadoop-2.9.0/etc/hadoop/yarn-site.xml
内存根据机器配置越大越好,更具自己服务器情况配置
在<configuration></configuration>之间添加配置参数如下:
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hserver1</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>${yarn.resourcemanager.hostname}:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>${yarn.resourcemanager.hostname}:8030</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.https.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>${yarn.resourcemanager.hostname}:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>${yarn.resourcemanager.hostname}:8033</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>1024</value>
</property>
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>2.1</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>1024</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
这里也可以拷贝吧hadoop 拷贝到 另一台服务器
可以执行
- $ scp -r /hadoop/hadoop-2.9.2 root@hserver2:/hadoop/
7.启动hadoop
现在hserver1是namenode,hserver3是datanode,只需要在hserver1上进行初始化及启动操作。
7.1格式化namenode
首先进入namenode格式化命令所在目录:
[root@hserver1 hadoop]#cd /opt/hadoop/hadoop-2.9.0/bin
然后执行namenode格式化命令:
[root@hserver1bin]# ./hadoop namenode –format
跳出如下信息说明初始化成功:
7.2启动hfs和yarn
进入到启动命令文件夹:
[root@hserver1bin]# cd /opt/hadoop/hadoop-2.9.0/sbin
启动dfs和yarn:
[root@hserver1bin]#./start-all.sh
启动成功后会看到以下信息:
输入jps可以看到如下信息:
8.访问网页
首先关闭防火墙:
[root@hserver1sbin]# systemctl stop firewalld
- 禁止开机启动 $ systemctl disable firewalld.service
接下来访问hadoop管理首页,hserver1的IP是192.168.3.132,因此访问:
在本地浏览器里访问如下地址:
自动跳转到了cluster页面
9.停hadoop集群
- [root@hserver1 sbin]# ./stop-all.sh
出现如下 及ok了
到这里就说明ok了
ok
持续更新