1. 程式人生 > >Hadoop集群搭建(非HA)

Hadoop集群搭建(非HA)

圖形界面 網絡模式 jdk 初始 hadoop2 orm 一個 程序猿 添加

1.準備Linux環境
1.0先將虛擬機的網絡模式選為NAT

1.1修改主機名
vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=itcast ###

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.1" ###

1.3修改主機名和IP的映射關系
vim /etc/hosts

192.168.1.101 itcast

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>

<property>
<name>dfs.secondary.http.address</name>
<value>192.168.1.152:50090</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

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中執行




Hadoop集群搭建(非HA)