Hadoop集群部署2X版本.docx
《Hadoop集群部署2X版本.docx》由会员分享,可在线阅读,更多相关《Hadoop集群部署2X版本.docx(20页珍藏版)》请在冰豆网上搜索。
Hadoop集群部署2X版本
1前期工作
1.1新建用户:
以下步骤在master、slave服务器上都需要执行。
root用户登录:
useradd-d/home/appsapps
chmod766/home/apps
passwdapps修改密码
为普通用户设置sudo
su-root
visudo该命令等于vim/etc/sudoers
找到root ALL=(ALL)ALL
在其后面添加:
apps ALL=(ALL)ALL
这种方式会密码过期,几分钟后会提示输入apps的密码。
如果需要,可以使用NOPASSWD方式,具体参考网上介绍。
1.2修改/etc/hosts文件,增加集群机器的ip和hostname的映射关系:
以下步骤在master、slave服务器上都需要执行。
红色部分以实际情况为准
su-root
vi/etc/hosts
添加:
192.168.0.201NameN
192.168.0.202DataN1
192.168.0.203DataN2
1.3关闭SELinux
以下步骤在master、slave服务器上都需要执行。
su-root
vi/etc/sysconfig/selinux
修改:
#SELINUX=enforcing
SELINUX=disabled
保存。
命令行输入:
setenforce0
getenforce查看状态是否是:
Permissive
1.4关闭防火墙
以下步骤在master、slave服务器上都需要执行。
chkconfigiptablesoff
serviceiptablesstop
1.5设置ssh
以下步骤在master、slave服务器上都需要执行。
su-apps
ssh-keygen-tdsa
(再按3次回车,生成密钥)
cd.ssh
如本机也要实现ssh,直接在.ssh上catid_dsa.pub>>authorized_keys
chmod600/home/apps/.ssh/authorized_keys
chmod700/home/apps/.ssh
chmod700/home/apps
$scpauthorized_keysDataN1:
/home/apps/.ssh/
$scpauthorized_keysDataN2:
/home/apps/.ssh/
验证:
sshDataN1
sshDataN2
第一次需要输入yes,确认把信息记录到konwn_host里。
注意:
经常配置后会发现还是需要输入密码,这一般是.ssh、authorized_key的权限问题。
在RedHat中,authorized_key设置600,.ssh、apps等父级目录设置为700
1.6JDK安装配置:
以下步骤在master、slave服务器上都需要执行。
先卸载RedHat自带安装的jdk:
yumremovejava
下载相应版本的JDK,放到虚拟机上目录:
/usr/jdk64下(实际上这里是32位的),解压:
mkdir/usr/jdk64
cd/usr/jdk64
tar-zxvfjdk-7u67-linux-i586.tar.gz
修改/etc/profile,在最后面添加如下内容:
exportJAVA_HOME=/usr/jdk64/jdk1.7.0_71
exportCLASS_PATH=.:
$CLASS_PATH:
$JAVA_HOME/lib:
$JAVA_HOME/jre/lib
#留位置给后面其他的变量
exportPATH=$PATH:
$JAVA_HOME/bin:
$JAVA_HOME/jre/bin
验证:
source/etc/profile
java-version
如果显示出来的版本是我们刚刚配置的1.7.0_67,则说明成功。
2Hadoop安装配置
(本点除了有特殊说明,否则只需要在master机器上执行)
准备好安装包:
hadoop-2.4.1.tar.gz
创建几个后面需要用到的目录:
cd/data/hadoop
mkdirname
mkdirdata
上面两个目录需要手动到各个slave机器上执行。
mkdir-phadoop-2.4.1/var
把下载好的Hadoop安装包hadoop-2.4.1.tar.gz放到/home/apps目录,解压:
tar-zxvfhadoop-2.4.1.tar.gz
配置Hadoop,一共有7个文件需要配置,2.4.1版本中这些文件路径是:
/home/apps/hadoop-2.4.1/etc/hadoop
hadoop-env.sh
yarn-env.sh
slaves
core-site.xml
hdfs-site.xml
mapred-site.xml
yarn-site.xml
1、hadoop-env.sh
#Thejavaimplementationtouse.
exportJAVA_HOME=/usr/jdk64/jdk1.7.0_67
2、yarn-env.sh
#someJavaparameters
exportJAVA_HOME=/usr/jdk64/jdk1.7.0_67
3、slaves
写下所有slave:
DataN1
DataN2
4、core-site.xml
添加如下内容:
fs.defaultFS
hdfs:
//NameN:
49000
io.file.buffer.size
131072
hadoop.tmp.dir
file:
/home/apps/hadoop-2.4.1/var
Abaseforothertemporarydirectories.
hadoop.proxyuser.hduser.hosts
*
hadoop.proxyuser.hduser.groups
*
5、hdfs-site.xml
dfs.namenode.secondary.http-address
NameN:
50070
dfs.namenode.name.dir
file:
/data/hadoop/name
dfs.datanode.data.dir
file:
/data/hadoop/data
dfs.replication
3
dfs.webhdfs.enabled
true
注:
dfs.replication:
数据块副本数量
6、mapred-site.xml(该文件没有,需新建)
mapreduce.framework.name
yarn
mapreduce.jobhistory.address
NameN:
10020
mapreduce.jobhistory.webapp.address
NameN:
19888
7、yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.resourcemanager.address
NameN:
8032
yarn.resourcemanager.scheduler.address
NameN:
8030
yarn.resourcemanager.resource-tracker.address
NameN:
8031
yarn.resourcemanager.admin.address
NameN:
8033
yarn.resourcemanager.webapp.address
NameN:
8088
把HADOOP_HOME配置到/etc/profile(所有服务器)
exportHADOOP_HOME=/home/apps/hadoop-2.4.1
exportPATH=最后添加:
$HADOOP_HOME/bin:
$HADOOP_HOME/sbin
exportHADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/