1.準備Linux環境
1.0先將虛擬機的網絡模式選爲NAT
1.1修改主機名
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master
1.2修改IP
兩種方式:
第一種:通過Linux圖形界面進行修改(強烈推薦)
進入Linux圖形界面 -> 右鍵點擊右上方的兩個小電腦 -> 點擊Edit connections -> 選中當前網絡System eth0 -> 點擊edit按鈕 -> 選擇IPv4 -> method選擇爲manual -> 點擊add按鈕 -> 添加IP:192.168.1.101 子網掩碼:255.255.255.0 網關:192.168.1.1 -> apply
第二種:修改配置文件方式(屌絲程序猿專用)
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static" ###
HWADDR="00:0C:29:3C:BF:E7"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.1.101" ###
NETMASK="255.255.255.0" ###
GATEWAY="192.168.1.2" ###
1.3修改主機名和IP的映射關係
vim /etc/hosts
192.168.1.101master
1.4關閉防火牆
#查看防火牆狀態
service iptables status
#關閉防火牆
service iptables stop
#查看防火牆開機啓動狀態
chkconfig iptables --list
#關閉防火牆開機啓動
chkconfig iptables off
1.5 修改sudo
su root
vim /etc/sudoers
給hadoop用戶添加執行的權限
關閉linux服務器的圖形界面:
vi /etc/inittab
1.5重啓Linux
reboot
2.安裝JDK
2.1上傳alt+p 後出現sftp窗口,然後put d:\xxx\yy\ll\jdk-7u_65-i585.tar.gz
2.2解壓jdk
#創建文件夾
mkdir /home/hadoop/app
#解壓
tar -zxvf jdk-7u55-linux-i586.tar.gz -C /home/hadoop/app
2.3將java添加到環境變量中
vim /etc/profile
#在文件最後添加
export JAVA_HOME=/home/hadoop/app/jdk-7u_65-i585
export PATH=$PATH:$JAVA_HOME/bin
#刷新配置
source /etc/profile
3.安裝hadoop2.4.1
先上傳hadoop的安裝包到服務器上去/home/hadoop/
注意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
僞分佈式需要修改5個配置文件
3.1配置hadoop
第一個:hadoop-env.sh
vim hadoop-env.sh
#第27行
export JAVA_HOME=/usr/java/jdk1.7.0_65
第二個:core-site.xml
<!-- 指定HADOOP所使用的文件系統schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://weekend-1206-01:9000</value>
</property>
<!-- 指定hadoop運行時產生文件的存儲目錄 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.4.1/tmp</value>
</property>
第三個:hdfs-site.xml
<!-- 指定HDFS副本的數量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
第四個:mapred-site.xml (mv mapred-site.xml.template mapred-site.xml)
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<!-- 指定mr運行在yarn上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
第五個:yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>weekend-1206-01</value>
</property>
<!-- reducer獲取數據的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
3.2將hadoop添加到環境變量
vim /etc/proflie
export JAVA_HOME=/usr/java/jdk1.7.0_65
export HADOOP_HOME=/itcast/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
3.3格式化namenode(是對namenode進行初始化)
hdfs namenode -format (hadoop namenode -format)
3.4啓動hadoop
先啓動HDFS
sbin/start-dfs.sh
再啓動YARN
sbin/start-yarn.sh
---------------------------------------------
eg:hadoop-daemon.sh start namenode/datanode
---------------------------------------------
3.5驗證是否啓動成功
使用jps命令驗證
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
http://192.168.1.101:50070 (HDFS管理界面)
http://192.168.1.101:8088 (MR管理界面)
4.配置ssh免登陸
#生成ssh免登陸密鑰
#進入到我的home目錄
cd ~/.ssh
ssh-keygen -t rsa (四個回車)
執行完這個命令後,會生成兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)
將公鑰拷貝到要免密登陸的目標機器上
ssh-copy-id localhost
---------------------------
ssh免登陸:
生成key:
ssh-keygen
複製從A複製到B上:
ssh-copy-id B
驗證:
ssh localhost/exit,ps -e|grep ssh
ssh A #在B中執行