hadoop是一个基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个(Hadoop Distributed File System),简称HDFS。HDFS有着高的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughput)来访问的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以流的形式访问(streaming access)文件系统中的数据。
我用8块A10搭建了一个集群,经过测试性能还是很不错的。去官网看,这里还有一些高清的。打算在上面做一些应用:HDFS写读文件,mapreduce并行计算,hadoop编程.....感兴趣的朋友可以自己搭建一个简单的集群,单机版,双核版都可以,下面有些资源:1. Hadoop-CB定制 。这个适用于CB-A10,集成了集群搭建需要的JDK和Openssh,其中JDK的路径为exportJAVA_HOME=/lib/jdk。
2. Hadoop软件下载 , 集群搭建 ,我见过集群搭建详细的教程,绝对要分享。 结合CB的具体情况,搭建集群说明如下:1.先配置 master,其他的节点大同小异。就那么几个要求:JDK环境、任意slave 和master 无密码相互登录、 hadoop参数配置。2.完全可以在自己电脑上完成每一块CB的配置,用ssh登录 linaro 用户,我是在自己熟悉的ubuntu12.04上用vim 配置hadoop. 也可为CB 配置输入输出,直接配置CB。可以更新一下CB的vi 到 vim ,个人习惯用vim。3.创建用户:$sudo addgroup hadoop$sudo adduser -ingroup hadoop hadoop$sudo vim ./etc/sudoers :hadoop ALL=(ALL:ALL) ALL4.修改Hostname&添加hosts:sudo vim ./etc/hosts192.168.1.40 master192.168.1.41 slave1192.168.1.42 slave2192.168.1.43 slave3192.168.1.44 slave4192.168.1.45 slave5192.168.1.46 slave6192.168.1.47 slave7sudo vim ./etc/hostnamecubieboard => master 或 slave5.静态IP设置sudo vim ./etc/network/interfaces //资源位置#auto lo# iface lo inet loopback#iface lo eth0 dhcp // 让原来配置失效auto eth0iface eth0 inet staticaddress 192.168.1.40gateway 192.168.1.1netmask 255.255.255.0network 192.168.1.0broadcast 192.168.1.255 //sudo vim ./etc/resolvconf/resolv.conf.d/basenameserver 192.168.1.1 //网关sudo /etc/init.d/networking restart //重启network6..SSH 双方无密码登录:教程讲的很详细,归纳一下: A <=>B : A&B 的authorized_keys 要同时有双方的 id_rsa.pubA:ssh-keygen –t rsa –P '' // 获得密钥cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys //追加chmod 600 ~/.ssh/authorized_keysssh localhost //验证scp ~/.ssh/id_rsa.pub :~/B:mkdir ~/.sshchmod 700 ~/.sshcat ~/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysrm –r ~/id_rsa.pub7.JDK 路径: #export JAVA_HOME=/lib/jdk ,记得把“#”去掉。8.参数配置:1. core-site.xml<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name>fs.default.name</name><value>hdfs://master:9000</value></property></configuration>2.hdfs-site.xml<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name>dfs.name.dir</name><value>/usr/local/hadoop/datalog1,/usr/local/hadoop/datalog2</value></property><property><name>dfs.data.dir</name><value>/usr/local/hadoop/data1,/usr/local/hadoop/data2</value></property><property><name>dfs.replication</name><value>2</value></property></configuration>3.mapred-site.xml<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name>mapred.job.tracker</name><value>master:9001</value></property></configuration>9.基本命令:在hadoop 根目录:bin/hadoop namenode -format //格式化bin/hadoop dfsadmin -report //文件报告bin/start-all.sh // 开启所有进程bin/stop-all.sh // 结束所有进程./bin/hadoop jar hadoop-examples-0.20.203.0.jar pi 100 100 //计算pi10.要是节点多的话,可采用shell脚本减少工作量,希望可以看到shell脚本教程。后续会在集群上做一些应用,再更新吧。原文作者:原文链接:http://forum.cubietech.com/forum.php?mod=viewthread&tid=852&highlight=hadoop