改变你成就你

linux

正文

HDFS的安装和部署

原创

ydt619

2013-06-27 10:42:53

评论(0)

3183人阅读

HDFS 的安装和部署 1. 准备工作 准备 3 台机器,设置好 hosts 一台作为 Namenode , cc-staging-session2 命名为 master , 两台作为 dataNode , cc-staging-front 命名为 slave1, cc-staging-imcenter 命名为 slave2 #3 台机器都创建 hadoop 用户 useradd hadoop passwd hadoop # 安装 JDK ,并设置 JAVA_HOME 和 PATH # 下载安装 jdk1.7 http://www.oracle.com/technetwork/java/javase/downloads/index.html tar zxvf jdk-7u21-linux-x64.gz -C /usr/local/ #/etc/profile 增加环境变量 pathmunge /usr/local/jdk1.7.0_21/bin export JAVA_HOME=/usr/local/jdk1.7.0_21/ export JRE_HOME=/usr/local/jdk1.7.0_21/jre export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 2. 下载安装 hadoop # 下载 hadoop 下载地址 https://ccp.cloudera.com/display/SUPPORT/CDH3+Downloadable+Tarballs wget http://archive.cloudera.com/cdh/3/hadoop-0.20.2-cdh3u6.tar.gz wget http://archive.cloudera.com/cdh/3/hbase-0.90.6-cdh3u6.tar.gz wget http://archive.cloudera.com/cdh/3/hive-0.7.1-cdh3u6.tar.gz # 在 3 太机器上创建相同的目录路径 , name 目录只存放在 master 上,且权限为 755 ,否则会导致后面的格式化失败 mkdir -p /hadoop/{install,name,data1, data2,tmp} # 解压安装包到 /hadoop/install 下 tar zxvf hadoop-0.20.2-cdh3u6.tar.gz -C /hadoop/install/ # 修改属主为 hadoop chown -R hadoop.hadoop /hadoop 3. 设置 hadoop 账户的 ssh 信任关系 # 在 master 机器上操作 su – hadoop ssh-keygen ssh-copy-id -i .ssh/id_rsa.pub hadoop@cc-staging-front ssh-copy-id -i .ssh/id_rsa.pub hadoop@cc-staging-imcenter ssh-copy-id -i .ssh/id_rsa.pub hadoop@cc-staging-session2 # 测试一下 , 都能成功登录就行 ssh hadoop@master ssh hadoop@slave1 ssh hadoop@slave2 4. 编辑 HDFS 配置文件 , 所以节点都有保持一致 cd /hadoop/install/hadoop-0.20.2-cdh3u6/conf #core-site.xml 核心配置 < configuration> < property>

< name>fs.default.name <

ame>

< value>hdfs://master:9000 < /value>

< /property> < /configuration> #hdfs-site.xml :站点多项参数配置 < configuration> < property>

< name>dfs.replication <

ame>

< value>2 < /value> < /property> < property>

< name>dfs.name.dir <

ame>

< value>/hadoop ame < /value> < /property> < property>

< name>dfs.data.dir <

ame>

< value>/hadoop/data1,/hadoop/data2 < /value> < /property> < property>

< name>dfs.tmp.dir <

ame>

< value>/hadoop/tmp < /value> < /property> < /configuration> # 在 hadoop-env.sh 中配置 JAVA_HOME 变量 export JAVA_HOME=/usr/local/jdk1.7.0_21/ 5. 初始化 namenode 节点 # 在 master 上操作 , 格式化 Image 文件的存储空间 , 必需是大写的 Y su - hadoop cd /hadoop/install/hadoop-0.20.2-cdh3u6/bin/ [hadoop@cc-staging-session2 bin]$ ./hadoop namenode -format 13/04/27 01:46:40 INFO namenode.NameNode: STARTUP_MSG: /******************** STARTUP_MSG: Starting NameNode STARTUP_MSG: host = cc-staging-session2/127.0.0.1 STARTUP_MSG: args = [-format] STARTUP_MSG: version = 0.20.2-cdh3u6 STARTUP_MSG: build = git://ubuntu-slave01/var/lib/jenkins/workspace/CDH3u6-Full-RC/build/cdh3/hadoop20/0.20.2-cdh3u6/source -r efb405d2aa54039bdf39e0733cd0bb9423a1eb0a; compiled by ‘jenkins’ on Wed Mar 20 11:45:36 PDT 2013 ********************/ Re-format filesystem in /hadoop ame ? (Y or N) Y 13/04/27 01:46:42 INFO util.GSet: VM type = 64-bit 13/04/27 01:46:42 INFO util.GSet: 2% max memory = 17.77875 MB 13/04/27 01:46:42 INFO util.GSet: capacity = 2^21 = 2097152 entries 13/04/27 01:46:42 INFO util.GSet: recommended=2097152, actual=2097152 13/04/27 01:46:42 INFO namenode.FSNamesystem: fsOwner=hadoop (auth:SIMPLE) 13/04/27 01:46:42 INFO namenode.FSNamesystem: supergroup=supergroup 13/04/27 01:46:42 INFO namenode.FSNamesystem: isPermissionEnabled=true 13/04/27 01:46:42 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=1000 13/04/27 01:46:42 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s) 13/04/27 01:46:43 INFO common.Storage: Image file of size 112 saved in 0 seconds. 13/04/27 01:46:43 INFO common.Storage: S torage directory /hadoop ame has been successfully formatted. 13/04/27 01:46:43 INFO namenode.NameNode: SHUTDOWN_MSG: /******************** SHUTDOWN_MSG: Shutting down NameNode at cc-staging-session2/127.0.0.1 ********************/ # 启动 namenode 和 datanode cd /hadoop/install/hadoop-0.20.2-cdh3u6/bin/ ./hadoop-daemon.sh start namenode # 在 /hadoop/install/hadoop-0.20.2-cdh3u6/bin/ 下有很多命令,

  • start-all.sh 启动所有的 Hadoop 守护,包括 namenode, datanode , jobtracker , tasktrack , secondarynamenode 。
  • stop-all.sh 停止所有的 Hadoop 。
  • start-mapred.sh 启动 Map/Reduce 守护,包括 Jobtracker 和 Tasktrack 。
  • stop-mapred.sh 停止 Map/Reduce 守护
  • start-dfs.sh 启动 Hadoop DFS 守护, Namenode 和 Datanode 。
  • stop-dfs.sh 停止 DFS 守护 # 在 slave1 和 slave2 上启动 datanode cd /hadoop/install/hadoop-0.20.2-cdh3u6/bin/ ./hadoop-daemon.sh start datanode # 可以在各个节点上运行 jps 命令查看是否启动成功 [hadoop@cc-staging-session2 bin]$ jps 11926 NameNode 12566 Jps 12233 SecondaryNameNode 12066 DataNode # 数据节点必需在硬盘上 不然会报错 [hadoop@cc-staging-front bin]$ jps 14582 DataNode 14637 Jps [hadoop@cc-staging-imcenter bin]$ jps 23355 DataNode 23419 Jps # 6. 简单的测试 # 在任意一个节点创建目录: ./hadoop dfs -mkdir test # 可以在所有数据节点上查看到目录: ./hadoop dfs -ls Found 2 items drwxr-xr-x - hadoop supergroup 0 2013-04-27 02:32 /user/hadoop/test # 拷贝文件,即把本地的文件存放到 HDFS 中 ./hadoop dfs -put /etc/services test # 删除文件 ./hadoop dfs -rm test/services

版权声明:原创作品,如需转载,请注明出处。否则将追究法律责任

hdfs

1

分享

收藏

上一篇:zookeeper集群安装部署

下一篇:CentOS 5.5 安装Graphite