logo资料库

hadoop完全分布式集群搭建笔记.pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
LinuxJDKmasterLinuxJDKnode1LinuxJDKnode2Hadoop试验集群部署结构任务层节点管理层节点NameNodeJobTrackerSecondaryNameNodeDataNodeTaskTrackerDataNodeTaskTrackerDataNodeTaskTrackerclient serverHadoop Client
集群信息如下: 主机名 Hadoop 角色 Hadoop jps 命令结果 Hadoop 用户 Hadoop 安装目录 /opt/modules/hadoop/ master Master Node node1 Node node2 Node 创建相同的用户的 组名:hadoop。 安 装 hadoop-1.0.3 时 使 用 hadoop 用 户,并且 hadoop 的 文 件 夹 归 属 也 是 hadoop:hadoop NameNode DataNode JobTracker TaskTracker SecondaryNameNode DataNode TaskTracker DataNode TaskTracker 注:master 即使 master 又是 slave. 搭建步骤如下: 配置机器网络环境 修第一台 hostname 为 master hostname master 检测 hostname 配置主机名 (hostname) HOSTNAME=master #主机名 使用 setup 命令配置系统环境 Hadoop 组件依赖关系HDFSMapReduceLinuxJVM网络NameNodeSecondaryNamenodeDataNodeJobTrackerTaskTrackerIP配置VM 网络结构(net,桥接?)本地DNS配置(hosts)HostNameSSH 无密钥登陆通道Hadoop Client (hadoop fs + hadoop jar)用户名和群组目录结构和权限授时服务环境变量防火墙
Setup(修改本机 IP,关闭防火墙) 重启网络服务 /sbin/service network restart 检查网络 IP 配置 vi /etc/ifconfig 配置集群 hosts 列表 vi /etc/hosts 安装 JAVA JDK 系统软件(在 root 下运行) ./jdk-6u21-linux-i586-rpm.bin #配置环境变量 vi /etc/profile.d/java.sh #手动立即生效 source /etc/profile 安装完之后不要忘了将所有者设置为 hadoop。 使用命令 chown -R hadoop:hadoop #测试 jps 创建用户组 groupadd hadoop 添加一个组 useradd hadoop -g hadoop 添加用户 创建 hadoop 代码目录结构 mkdir -p /opt/modules/hadoop/ 创建 hadoop 数据目录结构 mkdir -p /data/hadoop/ 修改 目录结构权限为为 hadoop chown -R hadoop:hadoop /opt/modules/hadoop/ chown -R hadoop:hadoop /data/hadoop/ hadoop 的安装 cp hadoop-1.0.3.tar.gz /opt/modules/hadoop/ cd /opt/modules/hadoop/ tar -xzvf hadoop-1.0.3.tar.gz chown -R hadoop:hadoop /opt/modules/hadoop/ 将其所有者改为 hadoop 运行 hadoop 看是否成功 修改 hadoop 的配置文件 首先切换到 hadoop 用户,su hadoop
1、修改 hadoop 目录下的 conf/hadoop-env.sh 文件 加入 java 的安装路径 export JAVA_HOME=/opt/java/jdk export HADOOP_HEAPSIZE=32 2、把 hadoop 目录下的 conf/core-site.xml 文件修改成如下: fs.default.name hdfs://master:9000 3、HDFS NameNode,DataNode 组建配置,把 hadoop 目录下的 conf/ hdfs-site.xml 文件修改成 如下: dfs.replication 3 dfs.name.dir /data/hadoop/hdfs/name dfs.data.dir /data/hadoop/hdfs/data 4 、 配 置 MapReduce - JobTracker TaskTracker 启 动 配 置 , 把 hadoop 目 录 下 的 conf/ mapred-site.xml 文件修改成如下: mapred.job.tracker master:9001
5、把 hadoop 目录下的 conf/ masters 文件修改成如下: master 6、把 hadoop 目录下的 conf/ slaves 文件修改成如下: master node1 node2 SSH 设置无密码验证 #切换到 Hadoop 用户下 su hadoop cd /home/hadoop/ #生成公钥和私钥 ssh-keygen -q -t rsa -N "" -f /home/hadoop/.ssh/id_rsa #查看密钥内容 cd /home/hadoop/.ssh cat id_rsa.pub #复制 id_rsa.pub 公钥到 authorized_keys 目录 cat id_rsa.pub > authorized_keys #修改 master 密钥权限,非常容易错误的地方。 chmod go-rwx /home/hadoop/.ssh/authorized_keys #把 master 机器上的 authorized_keys 文件 copy 到 node1 节点上。 scp /home/hadoop/.ssh/authorized_keys node1:/home/hadoop/.ssh/ #输入 hadoop 密码 #修改 node1 、node2 密钥权限 chmod go-rwx /home/hadoop/.ssh/authorized_keys 运行 hadoop 使用 Hadoop 用户,切换到 hadoop/bin 目录下 格式化分布式文件系统./hadoop namenode -format 执行命令./start-all.sh 启动 hadoop 在 master 上执行 jps 命令查看运行的进程如下: [hadoop@master hadoop]$ jps 3200 SecondaryNameNode 3271 JobTracker 3370 TaskTracker 3002 NameNode
3106 DataNode 5687 Jps 在 node1 和 node2 上执行 jps 结果如下: [hadoop@node1 ~]$ jps 1477 DataNode 3337 Jps 1547 TaskTracker 访问 http://master:50070 可以查看分布式文件系统的状态 运行单词统计程序 WordCount 是 hadoop 自带的实例,统计一批文本文件中各单词出现的资料,输出 到指定的 output 目录中,输出目录如果已经存在会报错。 hadoop jar hadoop-0.20.2-examples.jar wordcount input output
分享到:
收藏