Hadoop安装部署

ymc4 10年前

系统要求

安装虚拟机

使用VirtualBox安装CentOS6.4,存储为30G,内存为1G,并使用复制克隆出两个新的虚拟机,这样就存在3台虚拟机,设置三台虚拟机的主机名称,如:master、slaver1、slaver2

安装准备

创建hadoop用户

使用专有用户进行相关操作

# 创建hadoop用户组  groupadd hadoop  # 创建hadoop用户  useradd hadoop  # 设置密码  passwd hadoop  # 添加用户到用户组  usermod -G hadoop hadoop

基本服务

ssh&rsync

# 安装ssh服务  yum install ssh  # 安装数据同步工具  yum install rsync  # 设置ssh服务开机启动  systemctl enable sshd.service  # 启动ssh服务  systemctl start sshd.service  # 或者  service sshd start

JDK

http://hunng.com/2014/04/18/jdk-install-and-config/

修改主机名

# /etc/hostname  master  # /etc/hosts  192.168.19.110    master localhost  192.168.19.111    slaver1   192.168.19.112    slaver2

防火墙设置

/etc/init.d/iptables stop

无密码登录

1.生成RSA格式的密钥对

# 切换到hadoop账户  cd  ssh-keygen -t rsa -P ""

将会在~/.ssh/目录下生成密钥文件idrsa与公钥文件idrsa.pub

2.设置自动登录

# 单机模式下  cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys  # 集群模式下  scp ~/.ssh/id_rsa.pub hadoop@slaver:/home/hadoop/.ssh/authorized_keys

安装配置

目录规范

为便于管理, 最好将程序目录和数据目录分离。

1.程序目录

mkdir /opt/cloud  tar -zxvf hadoop-1.0.4.tar.gz -C /opt/cloud/src/  cd /opt/cloud/  ln -s -f /opt/cloud/src/hadoop-1.0.4 hadoop

2.数据目录

# 设置目录所有者为hadoop  mkdir /data  chown hadoop:hadoop /data    # 切换到hadoop账户创建相关目录  su hadoop  mkdir hadoop  mkdir -p logs/hadoop  mkdir -p pids/hadoop

修改配置

1.系统变量设置

# vim /etc/profile  export HADOOP_HOME=/opt/cloud/hadoop  export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH  source /etc/profile

2.$HADOOP_HOME/conf/hadoop-env.sh

export JAVA_HOME=/usr/java/default  export HADOOP_LOG_DIR=/data/logs/hadoop  export HADOOP_PID_DIR=/data/pids/hadoop

3.$HADOOP_HOME/conf/core-site.xml

<property>      <name>fs.default.name</name>      <value>hdfs://master:9000</value>  </property>  <property>      <name>hadoop.tmp.dir></name>      <value>/data/hadoop</value>  </property>

4.$HADOOP_HOME/conf/mapred-site.xml

<property>      <name>mapred.job.tracker</name>      <value>master:9001</value>  </property>

5.$HADOOP_HOME/conf/hdfs-site.xml

<property>      <name>dfs.replication</name>      <value>3</value>  </property>  <property>      <name>dfs.data.dir</name>      <value>${hadoop.tmp.dir}/dfs/data</value>  </property>  <property>      <name>dfs.name.dir</name>      <value>${hadoop.tmp.dir}/dfs/name</value>  </property>

6.$HADOOP_HOME/conf/masters

master

7.$HADOOP_HOME/conf/slavers

slaver1  slaver2

启动服务

1.格式化文件系统

$HADOOP_HOME/bin/hadoop namenode -format

2.启动HDFS服务

$HADOOP_HOME/bin/start-dfs.sh

3.启动MR服务

$HADOOP_HOME/bin/start-mapred.sh

4.相关进程

[hadoop@master ~]$ cd /opt/cloud/hadoop/bin/  [hadoop@master bin]$ ./start-all.sh  starting namenode, logging to /data/logs/hadoop/hadoop-hadoop-namenode-master.out  master: starting datanode, logging to /data/logs/hadoop/hadoop-hadoop-datanode-master.out  master: starting secondarynamenode, logging to /data/logs/hadoop/hadoop-hadoop-secondarynamenode-hadooptest.out  starting jobtracker, logging to /data/logs/hadoop/hadoop-hadoop-jobtracker-master.out  master: starting tasktracker, logging to /data/logs/hadoop/hadoop-hadoop-tasktracker-master.out  [hadoop@master bin]$ jps  2542 SecondaryNameNode  2282 NameNode  2764 TaskTracker  2819 Jps  2634 JobTracker  2409 DataNode  [hadoop@master bin]$

5.查看状态

http://master:50030/

http://master:50070/