信息技术服务税率信息技术服务增值税一般纳税人的增税率是6%。信息技术服务属于现代服务业,现在服务业税率为6%;从事信息技术服务增值税小规模纳税人实行的是3%的征收率。信息
安装Hadoop时下载了hadoop-2.6.0.tar.gz文件
大数据:Hadoop入门
什么是大数据:(1.)大数据是指在一定时间内无法用常规软件对其内容进行抓取,管理和处理的数据集合,简而言之就是数据量非常大,大到无法用常规工具进行处理,如关系型数据库,数据仓库等。这里“大”是一个什么量级呢?如在阿里巴巴每天处理数据达到20PB(即20971520GB).
2.大数据的特点:
(1.)体量巨大。按目前的发展趋势来看,大数据的体量已经到达PB级甚至EB级。
(2.)大数据的数据类型多样,以非结构化数据为主,如网络杂志,音频,视屏,图片,地理位置信息,交易数据,社交数据等。
(3.)价值密度低。有价值的数据仅占到总数据的一小部分。比如一段视屏中,仅有几秒的信息是有价值的。
(4.)产生和要求处理速度快。这是大数据区与传统数据挖掘最显著的特征。
3.除此之外还有其他处理系统可以处理大数据。
Hadoop (开源)
Spark(开源)
Storm(开源)
MongoDB(开源)
IBM PureDate(商用)
Oracle Exadata(商用)
SAP Hana(商用)
Teradata AsterData(商用)
EMC GreenPlum(商用)
HP Vertica(商用)
注:这里我们只介绍Hadoop。
二:Hadoop体系结构
Hadoop来源:
Hadoop源于Google在2003到2004年公布的关于GFS(Google File System),MapReduce和BigTable的三篇论文,创始人Doug Cutting。Hadoop现在是Apache基金会顶级项目,“
Hadoop”一个虚构的名字。由Doug Cutting的孩子为其黄色玩具大象所命名。
Hadoop的核心:
(1.)HDFS和MapReduce是Hadoop的两大核心。通过HDFS来实现对分布式储存的底层支持,达到高速并行读写与大容量的储存扩展。
(2.)通过MapReduce实现对分布式任务进行处理程序支持,保证高速分区处理数据。
3.Hadoop子项目:
(1.)HDFS:分布式文件系统,整个Hadoop体系的基石。
(2.)MapReduce/YARN:并行编程模型。YARN是第二代的MapReduce框架,从Hadoop 0.23.01版本后,MapReduce被重构,通常也称为MapReduce V2,老MapReduce也称为 MapReduce V1。
(3.)Hive:建立在Hadoop上的数据仓库,提供类似SQL语音的查询方式,查询Hadoop中的数据,
(5.)HBase:全称Hadoop Database,Hadoop的分布式的,面向列的数据库,来源于Google的关于BigTable的论文,主要用于随机访问,实时读写的大数据。
(6.)ZooKeeper:是一个为分布式应用所设计的协调服务,主要为用户提供同步,配置管理,分组和命名等服务,减轻分布式应用程序所承担的协调任务。
还有其它特别多其它项目这里不做一一解释了。
三:安装Hadoop运行环境
用户创建:
(1.)创建Hadoop用户组,输入命令:
groupadd hadoop
(2.)创建hduser用户,输入命令:
useradd –p hadoop hduser
(3.)设置hduser的密码,输入命令:
passwd hduser
按提示输入两次密码
(4.)为hduser用户添加权限,输入命令:
#修改权限
chmod 777 /etc/sudoers
#编辑sudoers
Gedit /etc/sudoers
#还原默认权限
chmod 440 /etc/sudoers
先修改sudoers 文件权限,并在文本编辑窗口中查找到行“root ALL=(ALL)”,紧跟后面更新加行“hduser ALL=(ALL) ALL”,将hduser添加到sudoers。添加完成后切记还原默认权限,否则系统将不允许使用sudo命令。
(5.)设置好后重启虚拟机,输入命令:
Sudo reboot
重启后切换到hduser用户登录
安装JDK
(1.)下载jdk-7u67-linux-x64.rpm,并进入下载目录。
(2.)运行安装命令:
Sudo rpm –ivh jdk-7u67-linux-x64.rpm
完成后查看安装路径,输入命令:
Rpm –qa jdk –l
记住该路径,
(3.)配置环境变量,输入命令:
Sudo gedit /etc/profile
打开profile文件在文件最下面加入如下内容
export JAVA_HOME=/usr/java/jdk.7.0.67
export CLASSPATH=$ JAVA_HOME/lib:$ CLASSPATH
export PATH=$ JAVA_HOME/bin:$PATH
保存后关闭文件,然后输入命令使环境变量生效:
Source /etc/profile
(4.)验证JDK,输入命令:
Java –version
若出现正确的版本则安装成功。
配置本机SSH免密码登录:
(1.)使用ssh-keygen 生成私钥与公钥文件,输入命令:
ssh-keygen –t rsa
(2.)私钥留在本机,公钥发给其它主机(现在是localhost)。输入命令:
ssh-copy-id localhost
(3.)使用公钥来登录输入命令:
ssh localhost
配置其它主机SSH免密登录
(1.)克隆两次。在VMware左侧栏中选中虚拟机右击,在弹出的快捷键菜单中选中管理---克隆命令。在克隆类型时选中“创建完整克隆”,单击“下一步”,按钮直到完成。
(2.)分别启动并进入三台虚拟机,使用ifconfig查询个主机IP地址。
(3.)修改每台主机的hostname及hosts文件。
步骤1:修改hostname,分别在各主机中输入命令。
Sudo gedit /etc/sysconfig/network
步骤2:修改hosts文件:
sudo gedit /etc/hosts
步骤3:修改三台虚拟机的IP
第一台对应node1虚拟机的IP:192.168.1.130
第二台对应node2虚拟机的IP:192.168.1.131
第三台对应node3虚拟机的IP:192.168.1.132
(4.)由于已经在node1上生成过密钥对,所有现在只要在node1上输入命令:
ssh-copy-id node2
ssh-copy-id node3
这样就可以将node1的公钥发布到node2,node3。
(5.)测试SSH,在node1上输入命令:
ssh node2
#退出登录
exit
ssh node3
exit
四:Hadoop完全分布式安装
1. Hadoop有三种运行方式:
(1.)单机模式:无须配置,Hadoop被视为一个非分布式模式运行的独立Java进程
(2.)伪分布式:只有一个节点的集群,这个节点即是Master(主节点,主服务器)也是Slave(从节点,从服务器),可在此单节点上以不同的java进程模拟分布式中的各类节点
(3.)完全分布式:对于Hadoop,不同的系统会有不同的节点划分方式。
2.安装Hadoop
(1.)获取Hadoop压缩包hadoop-2.6.0.tar.gz,下载后可以使用VMWare Tools通过共享文件夹,或者使用Xftp工具传到node1。进入node1 将压缩包解压到/home/hduser目录下,输入命令: #进入HOME目录即:“/home/hduser”
cd ~
tar –zxvf hadoop-2.6.0.tar.gz
(2.)重命名hadoop输入命令:
mv hadoop-2.6.0 hadoop
(3.)配置Hadoop环境变量,输入命令:
Sudo gedit /etc/profile
将以下脚本加到profile内:
#hadoop
export HADOOP_HOME=/home/hduser/hadoop
export PATH=$HADOOP_HOME/bin:$PATH
保存关闭,最后输入命令使配置生效
source /etc/profile
注:node2,和node3都要按照以上配置进行配置。
3.配置Hadoop
(1.)hadoop-env.sh文件用于指定JDK路径。输入命令:
[hduser@node1 ~]$ cd ~/hadoop/etc/hadoop
[hduser@node1 hadoop]$ gedit hadoop-env.sh
然后增加如下内容指定jDK路径。
export JAVA_HOME=/usr/java/jdk1.7.0_67
(2.)打开指定JDK路径,输入命令:
export JAVA_HOME=/usr/java/jdk1.7.0_67
(4.)core-site.xml:该文件是Hadoop全局配置,打开并在
Linux中md5sum ~/下载/hadoop-2.6.0.tar.gz | tr "a-z" "A-Z" 什么意思?谁能详解,必有重谢Hadoop
tar –xvf file.tar //解压 tar包 tar -xzvf file.tar.gz //解压tar.gz tar -xjvf file.tar.bz2 //解压 tar.bz2 tar –xZvf file.tar.Z //解压tar.Z unrar e file.rar //解压rar unzip file.zip //解压zip安装hadoop的步骤有哪些
hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFSHA、YARN等。最新的hadoop-2.4.1又增加了YARNHA
注意:apache提供的hadoop-2.4.1的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库,
所以如果在64位的操作上安装hadoop-2.4.1就需要重新在64操作系统上重新编译
(建议第一次安装用32位的系统,我将编译好的64位的也上传到群共享里了,如果有兴趣的可以自己编译一下)
前期准备就不详细说了,课堂上都介绍了
1.修改Linux主机名
2.修改IP
3.修改主机名和IP的映射关系
######注意######如果你们公司是租用的服务器或是使用的云主机(如华为用主机、阿里云主机等)
/etc/hosts里面要配置的是内网IP地址和主机名的映射关系
4.关闭防火墙
5.ssh免登陆
6.安装JDK,配置环境变量等
集群规划:
主机名 IP 安装的软件 运行的进程
HA181 192.168.1.181 jdk、hadoop NameNode、DFSZKFailoverController(zkfc)
HA182 192.168.1.182 jdk、hadoop NameNode、DFSZKFailoverController(zkfc)
HA183 192.168.1.183 jdk、hadoop ResourceManager
HA184 192.168.1.184 jdk、hadoop ResourceManager
HA185 192.168.1.185 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain
HA186 192.168.1.186 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain
HA187 192.168.1.187 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain
说明:
1.在hadoop2.0中通常由两个NameNode组成,一个处于active状态,另一个处于standby状态。ActiveNameNode对外提供服务,而StandbyNameNode则不对外提供服务,仅同步activenamenode的状态,以便能够在它失败时快速进行切换。
hadoop2.0官方提供了两种HDFSHA的解决方案,一种是NFS,另一种是QJM。这里我们使用简单的QJM。在该方案中,主备NameNode之间通过一组JournalNode同步元数据信息,一条数据只要成功写入多数JournalNode即认为写入成功。通常配置奇数个JournalNode
这里还配置了一个zookeeper集群,用于ZKFC(DFSZKFailoverController)故障转移,当ActiveNameNode挂掉了,会自动切换StandbyNameNode为standby状态
2.hadoop-2.2.0中依然存在一个问题,就是ResourceManager只有一个,存在单点故障,hadoop-2.4.1解决了这个问题,有两个ResourceManager,一个是Active,一个是Standby,状态由zookeeper进行协调
安装步骤:
1.安装配置zooekeeper集群(在HA185上)
1.1解压
tar-zxvfzookeeper-3.4.5.tar.gz-C/app/
1.2修改配置
cd/app/zookeeper-3.4.5/conf/
cpzoo_sample.cfgzoo.cfg
vimzoo.cfg
修改:dataDir=/app/zookeeper-3.4.5/tmp
在最后添加:
server.1=HA185:2888:3888
server.2=HA186:2888:3888
server.3=HA187:2888:3888
保存退出
然后创建一个tmp文件夹
mkdir/app/zookeeper-3.4.5/tmp
再创建一个空文件
touch/app/zookeeper-3.4.5/tmp/myid
最后向该文件写入ID
echo1>/app/zookeeper-3.4.5/tmp/myid
1.3将配置好的zookeeper拷贝到其他节点(首先分别在HA186、HA187根目录下创建一个weekend目录:mkdir/weekend)
scp-r/app/zookeeper-3.4.5/HA186:/app/
scp-r/app/zookeeper-3.4.5/HA187:/app/
注意:修改HA186、HA187对应/weekend/zookeeper-3.4.5/tmp/myid内容
HA186:
echo2>/app/zookeeper-3.4.5/tmp/myid
HA187:
echo3>/app/zookeeper-3.4.5/tmp/myid
2.安装配置hadoop集群(在HA181上操作)
2.1解压
tar-zxvfhadoop-2.4.1.tar.gz-C/weekend/
2.2配置HDFS(hadoop2.0所有的配置文件都在$HADOOP_HOME/etc/hadoop目录下)
#将hadoop添加到环境变量中
vim/etc/profile
exportJAVA_HOME=/app/jdk1.7.0_79
exportHADOOP_HOME=/app/hadoop-2.4.1
exportPATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
#hadoop2.0的配置文件全部在$HADOOP_HOME/etc/hadoop下
cd/home/hadoop/app/hadoop-2.4.1/etc/hadoop
2.2.1修改hadoop-env.sh
exportJAVA_HOME=/app/jdk1.7.0_79
2.2.2修改core-site.xml
fs.defaultFS
hdfs://ns1/
hadoop.tmp.dir
/app/hadoop-2.4.1/tmp
ha.zookeeper.quorum
HA185:2181,HA186:2181,HA187:2181
2.2.3修改hdfs-site.xml
dfs.nameservices
ns1
dfs.ha.namenodes.ns1
nn1,nn2
dfs.namenode.rpc-address.ns1.nn1
HA181:9000
dfs.namenode.http-address.ns1.nn1
HA181:50070
dfs.namenode.rpc-address.ns1.nn2
HA182:9000
dfs.namenode.http-address.ns1.nn2
HA182:50070
dfs.namenode.shared.edits.dir
qjournal://HA185:8485;HA186:8485;HA187:8485/ns1
dfs.journalnode.edits.dir
/app/hadoop-2.4.1/journaldata
dfs.ha.automatic-failover.enabled
true
dfs.client.failover.proxy.provider.ns1
org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider
dfs.ha.fencing.methods
sshfence
shell(/bin/true)
dfs.ha.fencing.ssh.private-key-files
/home/hadoop/.ssh/id_rsa
dfs.ha.fencing.ssh.connect-timeout
30000
2.2.4修改mapred-site.xml
mapreduce.framework.name
yarn
2.2.5修改yarn-site.xml
yarn.resourcemanager.ha.enabled
true
yarn.resourcemanager.cluster-id
yrc
yarn.resourcemanager.ha.rm-ids
rm1,rm2
yarn.resourcemanager.hostname.rm1
HA183
yarn.resourcemanager.hostname.rm2
HA184
yarn.resourcemanager.zk-address
HA185:2181,HA186:2181,HA187:2181
yarn.nodemanager.aux-services
mapreduce_shuffle
2.2.6修改slaves(slaves是指定子节点的位置,因为要在HA181上启动HDFS、在HA183启动yarn,
所以HA181上的slaves文件指定的是datanode的位置,HA183上的slaves文件指定的是nodemanager的位置)
HA185
HA186
HA187
2.2.7配置免密码登陆
#首先要配置HA181到HA182、HA183、HA184、HA185、HA186、HA187的免密码登陆
#在HA181上生产一对钥匙
ssh-keygen-trsa
#将公钥拷贝到其他节点,包括自己
ssh-copy-idHA181
ssh-copy-idHA182
ssh-copy-idHA183
ssh-copy-idHA184
ssh-copy-idHA185
ssh-copy-idHA186
ssh-copy-idHA187
#配置HA183到HA184、HA185、HA186、HA187的免密码登陆
#在HA183上生产一对钥匙
ssh-keygen-trsa
#将公钥拷贝到其他节点
ssh-copy-idHA184
ssh-copy-idHA185
ssh-copy-idHA186
ssh-copy-idHA187
#注意:两个namenode之间要配置ssh免密码登陆,别忘了配置HA182到HA181的免登陆
在HA182上生产一对钥匙
ssh-keygen-trsa
ssh-copy-id-iHA181
2.4将配置好的hadoop拷贝到其他节点
scp-r/app/hadoop-2.5.1/HA182:/app/
scp-r/app/hadoop-2.5.1/HA183:/app/
scp-r/app/hadoop-2.5.1/HA184:/app/
scp-r/app/hadoop-2.5.1/HA185:/app/
scp-r/app/hadoop-2.5.1/HA186:/app/
scp-r/app/hadoop-2.5.1/HA187:/app/
###注意:严格按照下面的步骤
2.5启动zookeeper集群(分别在HA185、HA186、tcast07上启动zk)
cd/app/zookeeper-3.4.5/bin/
./zkServer.shstart
#查看状态:一个leader,两个follower
./zkServer.shstatus
2.6启动journalnode(分别在在HA185、HA186、HA187上执行)
cd/app/hadoop-2.5.1
hadoop-daemon.shstartjournalnode
#运行jps命令检验,HA185、HA186、HA187上多了JournalNode进程
2.7格式化ZKFC(在HA181上执行即可) hdfszkfc-formatZK
2.8格式化HDFS
#在HA181上执行命令:
hdfsnamenode-format
#格式化后会在根据core-site.xml中的hadoop.tmp.dir配置生成个文件,这里我配置的是/app/hadoop-2.4.1/tmp,然后将/weekend/hadoop-2.4.1/tmp拷贝到HA182的/weekend/hadoop-2.4.1/下。
scp-rtmp/HA182:/app/hadoop-2.5.1/
##也可以这样,建议hdfsnamenode-bootstrapStandby
2.9启动HDFS(在HA181上执行)
sbin/start-dfs.sh
2.10启动YARN(#####注意#####:是在HA183上执行start-yarn.sh,把namenode和resourcemanager分开是因为性能问题,因为他们都要占用大量资源,所以把他们分开了,他们分开了就要分别在不同的机器上启动)
sbin/start-yarn.sh
到此,hadoop-2.4.1配置完毕,可以统计浏览器访问:
http://192.168.1.181:50070
NameNode'HA181:9000'(active)
http://192.168.1.182:50070
NameNode'HA182:9000'(standby)
验证HDFSHA
首先向hdfs上传一个文件
hadoopfs-put/etc/profile/profile
hadoopfs-ls/
然后再kill掉active的NameNode
kill-9
通过浏览器访问:http://192.168.1.182:50070
NameNode'HA182:9000'(active)
这个时候HA182上的NameNode变成了active
在执行命令:
hadoopfs-ls/
-rw-r--r--3rootsupergroup19262014-02-0615:36/profile
刚才上传的文件依然存在!!!
手动启动那个挂掉的NameNode
sbin/hadoop-daemon.shstartnamenode
通过浏览器访问:http://192.168.1.181:50070
NameNode'HA181:9000'(standby)
验证YARN:
运行一下hadoop提供的demo中的WordCount程序:
hadoopjarshare/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jarwordcount/profile/out
OK,大功告成!!!
CID-74d21742-3e4b-4df6-a99c-d52f703b49c0
测试集群工作状态的一些指令:
bin/hdfsdfsadmin-report 查看hdfs的各节点状态信息
bin/hdfshaadmin-getServiceStatenn1 获取一个namenode节点的HA状态
sbin/hadoop-daemon.shstartnamenode单独启动一个namenode进程
./hadoop-daemon.shstartzkfc单独启动一个zkfc进程
如何在Linux上安装与配置Hadoop
Hadoop最早是为了在Linux平台上使用而开发的,但是Hadoop在UNIX、Windows和Mac OS X系统上也运行良好。不过,在Windows上运行Hadoop稍显复杂,首先必须安装Cygwin以模拟Linux环境,然后才能安装Hadoop。Hadoop的安装非常简单,大家可以在官网上下载到最近的几个版本,在Unix上安装Hadoop的过程与在Linux上安装基本相同,因此下面不会对其进行详细介绍。
在Linux上安装与配置Hadoop
在Linux上安装Hadoop之前,需要先安装两个程序:
1. JDK 1.6或更高版本;
2. SSH(安全外壳协议),推荐安装OpenSSH。
下面简述一下安装这两个程序的原因:
1. Hadoop是用Java开发的,Hadoop的编译及MapReduce的运行都需要使用JDK。
2. Hadoop需要通过SSH来启动salve列表中各台主机的守护进程,因此SSH也是必须安装的,即使是安装伪分布式版本(因为Hadoop并没有区分集群式和伪分布式)。对于伪分布式,Hadoop会采用与集群相同的处理方式,即依次序启动文件conf/slaves中记载的主机上的进程,只不过伪分布式中salve为localhost(即为自身),所以对于伪分布式Hadoop,SSH一样是必须的。
一、安装JDK 1.6
安装JDK的过程很简单,下面以Ubuntu为例。
(1)下载和安装JDK
确保可以连接到互联网,输入命令:
sudoapt-getinstallsun-java6-jdk输入密码,确认,然后就可以安装JDK了。
这里先解释一下sudo与apt这两个命令,sudo这个命令允许普通用户执行某些或全部需要root权限命令,它提供了详尽的日志,可以记录下每个用户使用这个命令做了些什么操作;同时sudo也提供了灵活的管理方式,可以限制用户使用命令。sudo的配置文件为/etc/sudoers。
apt的全称为the Advanced Packaging Tool,是Debian计划的一部分,是Ubuntu的软件包管理软件,通过apt安装软件无须考虑软件的依赖关系,可以直接安装所需要的软件,apt会自动下载有依赖关系的包,并按顺序安装,在Ubuntu中安装有apt的一个图形化界面程序synaptic(中文译名为“新立得”),大家如果有兴趣也可以使用这个程序来安装所需要的软件。(如果大家想了解更多,可以查看一下关于Debian计划的资料。)
(2)配置环境变量
输入命令:
sudogedit/etc/profile输入密码,打开profile文件。
在文件的最下面输入如下内容:
#setJavaEnvironmentexportJAVA_HOME=(你的JDK安装位置,一般为/usr/lib/jvm/java-6-sun)
exportCLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
exportPATH="$JAVA_HOME/:$PATH"
这一步的意义是配置环境变量,使你的系统可以找到JDK。
(3)验证JDK是否安装成功
输入命令:
java-version查看信息:
javaversion"1.6.0_14"Java(TM)SERuntimeEnvironment(build1.6.0_14-b08)
JavaHotSpot(TM)ServerVM(build14.0-b16,mixedmode)
二、配置SSH免密码登录
同样以Ubuntu为例,假设用户名为u。
1)确认已经连接上互联网,输入命令
sudoapt-getinstallssh2)配置为可以无密码登录本机。
首先查看在u用户下是否存在.ssh文件夹(注意ssh前面有“.”,这是一个隐藏文件夹),输入命令:
ls-a/home/u一般来说,安装SSH时会自动在当前用户下创建这个隐藏文件夹,如果没有,可以手动创建一个。
接下来,输入命令:
ssh-keygen-tdsa-P''-f~/.ssh/id_dsa解释一下,ssh-keygen代表生成密钥;-t(注意区分大小写)表示指定生成的密钥类型;dsa是dsa密钥认证的意思,即密钥类型;-P用于提供密语;-f指定生成的密钥文件。(关于密钥密语的相关知识这里就不详细介绍了,里面会涉及SSH的一些知识,如果读者有兴趣,可以自行查阅资料。)
在Ubuntu中,~代表当前用户文件夹,这里即/home/u。
这个命令会在.ssh文件夹下创建两个文件id_dsa及id_dsa.pub,这是SSH的一对私钥和公钥,类似于钥匙及锁,把id_dsa.pub(公钥)追加到授权的key里面去。
输入命令:
cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys这段话的意思是把公钥加到用于认证的公钥文件中,这里的authorized_keys是用于认证的公钥文件。
至此无密码登录本机已设置完毕。
3)验证SSH是否已安装成功,以及是否可以无密码登录本机。
输入命令:
ssh-version显示结果:
OpenSSH_5.1p1Debian-6ubuntu2,OpenSSL0.9.8g19Oct2007Badescapecharacter'rsion'.
显示SSH已经安装成功了。
输入命令:
sshlocalhost会有如下显示:
Theauthenticityofhost'localhost(::1)'can'tbeestablished.RSAkeyfingerprintis8b:c3:51:a5:2a:31:b7:74:06:9d:62:04:4f:84:f8:77.
Areyousureyouwanttocontinueconnecting(yes/no)?yes
Warning:Permanentlyadded'localhost'(RSA)tothelistofknownhosts.
Linuxmaster2.6.31-14-generic#48-UbuntuSMPFriOct1614:04:26UTC2009i686
ToaccessofficialUbuntudocumentation,pleasevisit:
http://help.ubuntu.com/
Lastlogin:MonOct1817:12:402010frommaster
admin@Hadoop:~$
这说明已经安装成功,第一次登录时会询问你是否继续链接,输入yes即可进入。
实际上,在Hadoop的安装过程中,是否无密码登录是无关紧要的,但是如果不配置无密码登录,每次启动Hadoop,都需要输入密码以登录到每台机器的DataNode上,考虑到一般的Hadoop集群动辄数百台或上千台机器,因此一般来说都会配置SSH的无密码登录。
三、安装并运行Hadoop
介绍Hadoop的安装之前,先介绍一下Hadoop对各个节点的角色定义。
Hadoop分别从三个角度将主机划分为两种角色。第一,划分为master和slave,即主人与奴隶;第二,从HDFS的角度,将主机划分为NameNode和DataNode(在分布式文件系统中,目录的管理很重要,管理目录的就相当于主人,而NameNode就是目录管理者);第三,从MapReduce的角度,将主机划分为JobTracker和TaskTracker(一个job经常被划分为多个task,从这个角度不难理解它们之间的关系)。
Hadoop有官方发行版与cloudera版,其中cloudera版是Hadoop的商用版本,这里先介绍Hadoop官方发行版的安装方法。
Hadoop有三种运行方式:单节点方式、单机伪分布方式与集群方式。乍看之下,前两种方式并不能体现云计算的优势,在实际应用中并没有什么意义,但是在程序的测试与调试过程中,它们还是很有意义的。
你可以通过以下地址获得Hadoop的官方发行版,下载Hadoop-0.20.2.tar.gz并将其解压,这里会解压到用户目录下,一般为:/home/[你的用户名]/。
单节点方式配置:
安装单节点的Hadoop无须配置,在这种方式下,Hadoop被认为是一个单独的Java进程,这种方式经常用来调试。
伪分布式配置:
你可以把伪分布式的Hadoop看做是只有一个节点的集群,在这个集群中,这个节点既是master,也是slave;既是NameNode也是DataNode;既是JobTracker,也是TaskTracker。
伪分布式的配置过程也很简单,只需要修改几个文件,如下所示。
进入conf文件夹,修改配置文件:
Hadoop-env.sh:exportJAVA_HOME=“你的JDK安装地址”
指定JDK的安装位置:
conf/core-site.xml:这是Hadoop核心的配置文件,这里配置的是HDFS的地址和端口号。
conf/hdfs-site.xml:这是Hadoop中HDFS的配置,配置的备份方式默认为3,在单机版的Hadoop中,需要将其改为1。
conf/mapred-site.xml:这是Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口。
需要注意的是,如果安装的是0.20之前的版本,那么只有一个配置文件,即为Hadoop-site.xml。
接下来,在启动Hadoop前,需格式化Hadoop的文件系统HDFS(这点与Windows是一样的,重新分区后的卷总是需要格式化的)。进入Hadoop文件夹,输入下面的命令:
bin/HadoopNameNode-format格式化文件系统,接下来启动Hadoop。
输入命令:
bin/start-all.sh(全部启动)最后,验证Hadoop是否安装成功。
打开浏览器,分别输入网址:
http://localhost:50030(MapReduce的Web页面)http://localhost:50070(HDFS的Web页面)
如果都能查看,说明Hadoop已经安装成功。
对于Hadoop来说,安装MapReduce及HDFS都是必须的,但是如果有必要,你依然可以只启动HDFS(start-dfs.sh)或MapReduce(start-mapred.sh)。
hadoop安装问题!!!
现在hadoop1.0都出了 简单说一下吧 你的java jdk的环境变量没有设置吧? 最好按以下步骤再做一遍: 1 用root用户安装jdk1.6以上 2 用root用户 创建hadoop用户 3 在hadoop用户下安装hadoop(你上面说的1到4) 4 修改/home/hadoop/.bash_profile将JDK和hadoop的环境变量设置好 5 安装ssh(伪集群也需要ssh)相关文章
- 详细阅读
-
Linux如何使用虚拟磁带机?详细阅读
如何在Linux中使用虚拟机在Linux下可以下载virtualbox下来,这个虚拟机在Linux下还是很好用的。 方法可以是在网上直接下载或者在新德里软件包你下载,最好是用最新版本的。 如
-
linux telnet 不了内外网,其它服务详细阅读
局域网内电脑能ping通服务器,telnet不通,但外界电脑能telnet通服务器1 ping是ICMP协议,ICMP仅包含控制信息,没有端口。telnet是TCP协议,有端口,能承载数据。 2 不能telnet并不代
-
Linux shell脚本,请高手求助。详细阅读
Linux shell脚本问题,请高手解答expr运算中,运算符两侧都要有空格的,除此格式错误外其他没有错误! 另外,` `内的命令及shell外部命令(如expr)都会新建子shell去执行,开销大。强烈建
-
求推荐一款linux系统用的模拟器详细阅读
有什么好用的linux终端模拟软件吗??推荐Xshell,linux最常用的终端模拟器。功能强大而且相对安全,支持SSH、SFTP、TELNET、RLOGIN和SERIAL。支持SSH1、SSH2以及Microsoft
Windo -
linux执行文件时出现加载共享库时详细阅读
linux下运行java命令报错“无法打开共享对象文件: 没有那个文件或目录”你命令错了啊 运行的时候直接 java Demo 别加.class Sorry 没看到你下面重新又运行一遍 你这问题是
-
bin/hadoop jar share/hadoop/mapr详细阅读
搭建hadoop集群,常用配置文件是什么,以及配置哪些属性一. 简介参考了网上许多教程,最终把hadoop在ubuntu14.04中安装配置成功。下面就把详细的安装步骤叙述一下。我所使用的环
-
Linux中数据库导出导入和数据泵导详细阅读
数据库导入方式和数据泵导入方式的区别1、使用tables参数 TABLES 标识要导入的表的列表。 例如, TABLES=HR.EMPLOYEES,SH.SALES:SALES_1995。 例如: impdp dexter/d director
-
零基础的小白学那个编程语言,最容易详细阅读
零基础入门学习什么编程语言比较好如果你想学习编程,虽然选择第一门编程语言与你想用它来做什么最终达到什么目的有很大的关系,但是事实上某些编程语言的确比其他语言要好学。
-
在利用Ambari部署Hadoop集群中step详细阅读
ambari部署hadoop集群以后怎么运行hadoop实例1、我这里用的是三个虚拟机 centos 6.4 64位操作系统,一台做Master,两台做Slave 2、三台机器都安装jdk,我这里的版本是7_79,同样是6