個人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]
能打開就算配置成功