安装jdk和免秘钥登录
- 在~目录下(也就是相当于在root家目录下),在干净的Linux系统中执行
yum install gcc
远程上传工具:lrzsz 命令:yum install lrzsz
- 安装jdk 卸载linux自带的openjdk 查询OpenJDK:
rpm -qa|grep java
删除OpenJDK:rpm -e --nodeps <OpenJDK版本>
- 进入根目录
cd /
创建download目录mkdir download
cd download
- rz上传文件jdk和hadoop的压缩包
- tar -zxf <jdk压缩包>
- mv jdk1.8.0_162/ java(重新命名)
- mv java/ usr/local/ (移动到usr/local)
- cd /usr/local/java/ (java的目录)
- vim /etc/profile (配置java环境变量)
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
刷新修改java -version java javac
验证java的安装- 关闭防火墙
关闭命令:service iptables stop
永久关闭防火墙:chkconfig iptables off
查看防火墙关闭状态 :service iptables status
- 修改IP映射关系
文件路径:/etc/hosts
类似下面这种的:
192.168.116.100 c1
192.168.116.101 c2
192.168.116.102 c3
192.168.116.103 c4
- ssh免秘钥登入
配置公私钥免密码登录
在~目录下生成
生成私钥
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
将私钥追加道公钥
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
远程拷贝
$ scp local_file remote_username@remote_ip:remote_folder
这个命令把c1服务器的java文件复制到c2服务器上
scp -r /usr/local/java root@c2:/usr/local/
这个命令把hosts的
scp /etc/hosts root @c2:/etc/
安装hadoop
- 在根目录创建hadoopserver目录
- 将解压的hadoop文件复制到hadoopserver中
- 配置环境变量,并刷新source /etc/profile
export HADOOP_HOME=/hadoopserver/hadoop-2.7.1
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin
- hadoop的根目录下创建三个目录
[root@c1 hadoop-2.7.1]# pwd
/hadoopserver/hadoop-2.7.1
[root@c1 hadoop-2.7.1]# mkdir temp
[root@c1 hadoop-2.7.1]# mkdir -p hdfs/name
[root@c1 hadoop-2.7.1]# mkdir -p hdfs/data
[root@c1 hadoop-2.7.1]#
- 配置hadoop配置文件
`hadoop-2.7.1/etc/hadoop/hadoop-env.sh
hadoop-2.7.1/etc/hadoop/yarn-env.sh
hadoop-2.7.1/etc/hadoop/core-site.xml
hadoop-2.7.1/etc/hadoop/hdfs-site.xml
hadoop-2.7.1/etc/hadoop/mapred-site.xml
hadoop-2.7.1/etc/hadoop/yarn-site.xml`
- 首先把mapred-site.xml.template的后缀改为xml,mapred-site.xml
- hadoop-env.sh 和yarn-env.sh 中修改JAVA_HOME的路径(配置为在linux中的JAVA_HOME)
core-site.xml 文件中配置
<property>
<name>fs.default.name</name>
<value>hdfs://c1:9000</value>
<description>HDFS的URI</description>
</property>
<property>
<name>hadoop.temp.dir</name>
<value>/hadoopserver/hadoop-2.7.1/temp</value>
<description>HDFS的临时文件路径</description>
</property>
hdfs-site.xml 文件中配置
<property>
<name>dfs.name.dir</name>
<value>/hadoopserver/hadoop-2.7.1/hdfs/name</value>
<description>namenode元数据</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/hadoopserver/hadoop-2.7.1/hdfs/data</value>
<description>datanode元数据</description>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
<description>数据的副本的个数</description>
</property>
mapred-site.xml 文件配置
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml的文件配置
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
<description>启动shuffle</description>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>c1:8099</value>
<description>yarn的web监视端口</description>
</property>
使用source /etc/profile 刷新
再用 scp -r /hadoopserver root @c2:/hadoopserver/ 拷贝到各个服务器
最后格式化在bin目录 ./hdfs namenode -format
在c1中启动 start-dfs.sh后再浏览器中输入http://192.168.116.100:50070/可以看到当前的情况
在c1中在启动start-yarn.sh再浏览器中输入http://192.168.116.100:8099
可以看到yarn的情况
代表hdfs和yarn配置成功。