个人linux版本是centos7,使用最简单的安装方式,这里首先说一下,因为系统会预装openjdk版本等其余各类版本,首先要作的是清除这些版本,而后iu安装oracle的jdk版本java
1.1 查看全部jdk版本并删除其余jdk版本node
rpm -qa | grep javalinux
这里能够看到全部的jdk版本,我建议的作法是将全部的jdk版本都铲除,apache
rpm -e ---nodeps 『jdk版本』vim
这里有一个小技巧,就是在终端中复制的操做是选中以后摁鼠标中健centos
删除完全部的jdk版本后去官网下载jdk,保存,而后解压,解压位置个人是在/usr/java。oracle
tar -zxvf jdk1.7.0_79.tar.gz -C /usr/javaeclipse
解压而且移动到/usr/java下。ssh
配置环境变量tcp
vim /etc/profile,按i进入编辑模式,在最后面添加JAVA_HOME等属性
export JAVA_HOME=/usr/java/jdk1.7.0_79
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
配置好以后,先按,后按shift+: ,而后按wq,保存退出编辑,终端:source /etc/profile
java -version
显示正确版本:
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
说明jdk配置成功。
首先要作的是关闭防火墙,防止防火墙对ssh访问拒绝
查看下防火墙状态:
firewall-cmd --state
若显示运行,则关闭,并设置开机不启动。
systemctl stop firewalld.service;
systemctl disable firewalld.service.
检测防火墙状态:
firewall-cmd --state
显示:no running,配置完成。
通常的linux系统都自带ssh,首先你须要查看ssh是否真的存在:
rpm -qa | grep ssh
显示:
openssh-server-6.6.1p1-11.el7.x86_64
openssh-6.6.1p1-11.el7.x86_64
libssh2-1.4.3-8.el7.x86_64
openssh-clients-6.6.1p1-11.el7.x86_64
相似信息说明ssh已安装。
下面查看ssh服务是否自动启动,使用命令行查看全部默认自启动服务:
systemctl list-unit-files|grep enabled
若是发现sshd服务没有启动,则设置sshd服务自启动
systemctl enable sshd.service
这里要说明如下,centos7的指令换成了新的,ssh指令操做指令都有如下:
systemctl enable sshd.service【设置sshd服务开机自启动】
systemctl disable sshd.service【关闭sshd服务开机自启动】
ystemctl start sshd.service【开始sshd服务】
systemctl stop sshd.service【关闭sshd服务】
systemctl restart sshd.service【重启sshd服务】
reboot后,而后查看端口服务状况:
netstat -lntp
显示以下:
1476/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
1476/sshd
tcp6 0 0 ::1:631 :::* LISTEN
ok,配置成功。
配置ssh免登录首先须要root权限去修改:
/etc/ssh
下的 sshd_config文件
vim sshd_config;
将文件中三个配置解除注释(删除#号)
AuthorizedKeysFile .ssh/authorized_keys
RSAAuthentication yes
PubkeyAuthentication yes
而后保存,退出,从新启动ssh
systemctl restart sshd.service
接下来的步骤必须是普通用户操做,否则会致使ssh配置失败,没法实现免密码登陆
缘由是你的.ssh文件被放在了/root目录下,根本没有起到做用.
生成密钥:
ssh-keygen
一直cd ~/.ssh
cat id_rsa.pub >> authorized_keys,
ssh localhost验证,输入root密码,以后会出现一个lastLogin,说明成功
下载hadoop2.2.0,这里给一个apache的全部开元项目的下载位置:achirive.apache.org
找到hadoop包,下载相应版本,我没有下载stable几个包里的,而是选择下载了2.2.0版本
下载后,解压:
cd /; mkdir hadoop;
tar -zxvf hadoop2.2.0.tar.gz -C /hadoop;
首先配置hadoop的环境变量:
vim /etc/profile;
i
export HADOOP_HOME=/hadoop/hadoop-2.2.0
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib
最后的配置完整以下:
export JAVA_HOME=/usr/java/jdk1.7.0_79
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HADOOP_HOME=/hadoop/hadoop-2.2.0
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
这里的路径是在java的path基础上追加,以:分割。
esc,shift+:;wq;
而后配置hadoop自身配置
cd /hadoop/hadoop-2.2.0/etc/hadoop
ls
显示:
capacity-scheduler.xml hdfs-site.xml mapred-site.xml
configuration.xsl httpfs-env.sh slaves
container-executor.cfg httpfs-log4j.properties ssl-client.xml.example
core-site.xml httpfs-signature.secret ssl-server.xml.example
hadoop-env.cmd httpfs-site.xml yarn-env.cmd
hadoop-env.sh log4j.properties yarn-env.sh
hadoop-metrics2.properties mapred-env.cmd yarn-site.xml
hadoop-metrics.properties mapred-env.sh
hadoop-policy.xml mapred-queues.xml.template
这里要修改:core-site.xml ,hadoop-env.sh ,hdfs-site.xml ,mapred-site.xml,yarn-site.xml五个。
<configuration>
<!--hdfs临时文件存放位置-->
<property>
<name>haddop.tmp.dir</name>
<value>/hadoop/hadoop-2.2.0/tmp</value>
</property>
<property>
<!--hdfs的namenode的通讯地址-->
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
<final>true</final>
</property>
</configuration>
export JAVA_HOME=/usr/java/jdk1.7.0_79
这里是从新配置JAVA_HOME
<configuration>
<!--这里是配置nameode的文件存放位置,若这里没有配置不会影响namenode数据存放
他会默认存放到core-site.xml文件中配置的tmp文件下,命名为name-->
<property>
<name>dfs.namenode.name.dir</name>
<value>/dfs/nameNodeData</value>
</property>
<!--这里是配置datanode的文件存放位置,若这里没有配置不会影响datanode数据存放
他会默认存放到core-site.xml文件中配置的tmp文件下,命名为data-->
<property>
<name>dfs.datanode.data.dir</name>
<value>/dfs/dataNodeData</value>
</property>
<!--这里是配置secondaryNamenode的文件存放位置,若这里没有配置不会影响datanode数据存放
他会默认存放到core-site.xml文件中配置的tmp文件下,命名好像是secondaryname之类的-->
<property>
<name>dfs.checkpoint.ir</name>
<value>/dfs/secondaryNamenodeData</value>
</property><property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
这里的配置文件并不存在,只存在mapred-site.xml.template,须要重命名
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
cd /hadoop/hadoop-2.2.0/bin
./hdfs namenode -format
信息中有:Storage directory /dfs/nameNodeData has been successfully formatted.
格式化成功。
cd /hadoop/hadoop-2.2.0/sbin
./start-dfs.sh
这里因为没有配置ssh免密码登录,因此会屡次输入密码
./start-yarn.ssh
这里因为没有配置ssh免密码登录,因此会屡次输入密码
验证:
localhost:50070 --[dfs]
localhost:8088 --[yarn]
能打开就算配置成功