hadoop-2.5.2 安装与配置

1 系统环境说明

     CentOS-6.5-x86_64-minimal
     192.168.137.101 master
     192.168.137.102 slave1
     192.168.137.103 slave2
安装前的准备工作
2.1 配置网络
     分别进入三台机器的网络配置文件,进入 vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:9B:9C:E1
TYPE=Ethernet
UUID=b711da3a-e25f-4dec-be15-24b7f169a200
ONBOOT=yes //这个改成yes,这不要是no的话,网卡没法启动
NM_CONTROLLED=yes
#BOOTPROTO=dhcp
BOOTPROTO=static
IPADDR=192.168.137.101
NETMASK=255.255.255.0
GATEWAY=192.168.137.1

保存后,启动网卡 service network restart
2.2 配置机器名
分别配置三台机器的名称master,slave1,slave2,进入vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master.localdomain
保存后,无需重启,在每台机器上执行:hostname 机器名,重新登录即可
2.3 配置域名服务
vi /etc/resolv.conf
nameserver 192.168.137.1
2.4 配置hosts
vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.137.101 master.localdomain master
192.168.137.102 slave1.localdomain slave1
192.168.137.103 slave2.localdomain slave2
2.5 安装基本的软件
yum -y install wget zip unzip man gcc gcc-c++ make setuptool automake lzo-devel svn  libtool 
yum install wget
yum install zip
yum install unzip
yum install man
yum install gcc 
yum install gcc-c++
yum install make
yum install setuptool

 yum install automake
yum install lzo-devel
yum install svn
yum install libtool
安装GNOME图形界面(喜欢图形界面的话可以安装下面):
yum -y groupinstall "X Window System"   Desktop"   "Chinese Support"  
yum groupinstall "X Window System"
yum groupinstall "Desktop"
yum groupinstall "Chinese Support"

安装完成后,用"init 5"即可启动图形界面。
2.6  关闭防火墙
service iptables stop //关闭防火墙
service iptables disable //彻底关闭防火墙
  2.7  检查ssh安装情况,如果没有则安装ssh
systemctl status sshd.service  --查看ssh状态
  2.8 创建用户
useradd hadoop //创建用户
passwd hadoop //设置用户密码
2.8  配置ssh无密钥登录

下面是在master上面的操作

# su hadoop --切换到hadoop用户
$ cd ~      --打开用户文件夹
$ ssh-keygen -t rsa -P '' --生成密码对,/home/hadoop/.ssh/id_rsa和/home/hadoop/.ssh/id_rsa.pub
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys        --把id_rsa.pub追加到授权的key里面去
$ chmod 600 ~/.ssh/authorized_keys        --修改权限
$ su  --切换到root用户
# vim /etc/ssh/sshd_config   --修改ssh配置文件
RSAAuthentication yes #启用RSA认证
PubkeyAuthentication yes #启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径
# su hadoop --切换到hadoop用户
$ scp ~/.ssh/id_rsa.pub hadoop@192.168.137.102:~/                --把公钥复制所有的Slave机器上
$ scp ~/.ssh/id_rsa.pub hadoop@192.168.137.103:~/ 

下面是在slave1上面的操作

# su hadoop --切换到hadoop用户
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys                --追加到授权文件"authorized_keys"
$ chmod 600 ~/.ssh/authorized_keys                          --修改权限
$ su --切换回root用户
# vim /etc/ssh/sshd_config   --修改ssh配置文件
  RSAAuthentication yes #启用RSA认证
  PubkeyAuthentication yes #启用公钥私钥配对认证方式
  AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径
     
验证,在master 上执行:ssh slave1,  ssh slave2,这时候是不需要密码

3 安装必须的软件

  • 64位linux系统。我使用的是 CentOS
  • JDK 1.7+。注:使用1.7即可,如果是1.8则会编译失败,1.6没有试过,看网上大牛的帖子说也能过
  • maven-3.2.5。 这是apache的一个产品,hadoop的编译要就是3.0以上
  • protobuf 注:谷歌的产品,最好是提前百度准备一下这个文件
  • hadoop-2.5.2-src 这个可以到Apache的官网上去下载
  • ant-1.9.4 这个也是Apache的,在文章最后附的参考链接中有关于下载的百度网盘地址
3.1 安装JDK
  cd /home/hadoop/tools/
   cp jdk-7u75-linux-x64.tar.gz / usr/java
   cd /usr/java
   tar -zxvf jdk-7u75-linux-x64.tar.gz
   配置环境变量:vi /etc/profile  
#add jdk
 export JAVA_HOME=/usr/java/jdk1.7.0_75
 export PATH=.:$PATH:$JAVA_HOME/bin
 使环境变量生效:source  /etc/profile
检测安装是否成功:
           java  -version
           javac  -version 
3.2 安装maven
  cd /home/hadoop/tools/
     mkdir /usr/maven
cp apache-maven-3.2.5-bin.tar.gz /usr/maven
cd /usr/maven 
tar -zxvf apache-maven-3.2.5-bin.tar.gz
 配置环境变量:vi /etc/profile  
#add maven
export MAVEN_HOME=/usr/maven/apache-maven-3.2.5
export PATH=.:$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
使环境变量生效:source  /etc/profile
验证: mvn -version
3.3 安装 protobuf
  cd /home/hadoop/tools/
mkdir /usr/protobuf
tar -zxvf protobuf-2.5.0.tar.gz
cd protobuf-2.5.0/
./configure --prefix=/usr/protobuf  //配置你安装的路径
make
make install
配置环境变量:vi /etc/profile  
#add protobuf
export PROTOBUF_HOME=/usr/protobuf/
export PATH=.:$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PROTOBUF_HOME/bin
使环境变量生效:source  /etc/profile
验证:   protoc --version
3.4 安装CMAKE
yum  install  cmake     
yum  install  openssl-devel
yum  install  ncurses-devel
3.5 安装 Ant
  cd /home/hadoop/tools/
  mkdir /usr/ant
cp apache-ant-1.9.4-bin.tar.gz /usr/ant
cd /usr/ant
tar -zxvf apache-ant-1.9.4-bin.tar.gz
 配置环境变量:vi /etc/profile  
#add ant
export ANT_HOME=/usr/ant/apache-ant-1.9.4
export PATH=.:$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PROTOBUF_HOME/bin:$ANT_HOME/bin
使环境变量生效:source  /etc/profile
验证: ant -version
3.6 安装 findbugs
  cd /home/hadoop/tools/
  mkdir /usr/findbugs
cp findbugs-3.0.0.tar.gz /usr/findbugs
cd /usr/findbugs
tar -zxvf findbugs-3.0.0.tar.gz
 配置环境变量:vi /etc/profile  
#add findbugs
export FINDBUGS_HOME=/usr/findbugs/findbugs-3.0.0
export PATH=.:$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PROTOBUF_HOME/bin:$ANT_HOME/bin:$FINDBUGS_HOME/bin
使环境变量生效:source  /etc/profile
验证:
编译hadoop
所有的机器上都要安装 hadoop ,现在就先在 Master 服务器安装,然后其他服务器按照步骤重复进行即可。安装和配置 hadoop 需要以 "root" 的身份进行。
4.1  解压hadoop源码包
 cd /home/hadoop/tools/
tar -zxvf hadoop-2.5.2-src.tar.gz
  cd /root/hadoop-2.5.2-src/ 
  cd hadoop-2.5.2-src 
  vim  BUILDINT.txt
进入文件夹里面,里面有一个文件BUILDINT.txt,打开即可看见里面关于编译hadoop的一些环境要求
4.2 编译hadoop(一定要保证网络畅通)
cd hadoop-2.5.0-src
mvn package -Pdist,native,docs -DskipTests -Dtar

查看编译结果

同样在刚刚进行编译的那个目录下,有一个 hadoop-dist文件夹,进入里面的target文件夹,然后就可以看到编译成功64位的hadoop文件,解压后的在 hadoop-2.5.2 这个文件夹中,同时还生成了一个压缩包:hadoop-2.5.2-tar.gz 这个压缩包可以拷贝到别的机器上进行安装  
4.3 安装与配置hadoop
tar -zxvf  hadoop-2.5.2-tar.gz
cp -r hadoop-2.5.2 /opt/
chown -R hadoop:hadoop /opt/hadoop-2.5.2
vi /etc/profile
#add hadop
export HADOOP_HOME=/opt/hadoop-2.5.2

export PATH=.:$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PROTOBUF_HOME/bin:$ANT_HOME/bin:$FINDBUGS_HOME/bin:$HADOOP_HOME/bin
使环境变量生效:source  /etc/profile

su hadoop
cd /opt/hadoop-2.5.0
mkdir -p dfs/name
mkdir -p dfs/data
mkdir -p tmp

4.4 配置所有slave节点

cd etc/hadoop
vi slaves
slave1.localdomain
slave2.localdomain

4.5 修改hadoop-env.sh和yarn-env.sh

分别进入这两个文件修改Java环境路径
export JAVA_HOME=/usr/java/jdk1.7.0_75

4.6 修改core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131702</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/opt/hadoop-2.5.2/tmp</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value> </value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>
</value>
</property>
</configuration>

4.7 修改hdfs-site.xml

<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-2.5.2/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop-2.5.2/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
4.8  修改mapred-site.xml
cp mapred-site.xml.template mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
4.9 配置yarn-site.xml(这里注意内存和cpu的设置)
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>2048</value>
</property>
<property>
<name> yarn.nodemanager.resource.cpu-vcores </name>
<value>1</value>
</property>
</configuration>
4.10  同步代码到其他机器

1. 同步配置代   
先在  slaves  的机器上也     
cd /opt/
scp -r hadoop-2.5.2 root@192.168.137.102:/opt/
scp -r hadoop-2.5.2 root@192.168.137.103:/opt/
2. 同步  /etc/profile 
scp -r /etc/profile root@hadoop2:/etc/profile

4.11 格式化namenode(只在master上进行)
hadoop namenode -format
4.12  启动hdfs
cd /opt/ hadoop-2.5.2/sbin/
启动 hdfs

执行
start-dfs.sh

  hadoop dfs  


启动 Yarn

  yarn  源管理服  
start-yarn.sh

启动httpfs

    httpfs     
httpfs.sh start
使得  对外  可以提高  http    restful 接口服 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值