建议使用自动化部署吧。 这个还是不太难做到哦。 能否看一下my网名呢?帮助搞定一下
一、前期准备:
下载hadoop: :hadoop.apache./core/releases.
:hadoop.apache./mon/releases.
:apache./dyn/closer.cgi/hadoop/core/
:labs.xiaonei./apache-mirror/hadoop/core/hadoop-0.20.1/hadoop-0.20.1.tar.gz
:labs.xiaonei./apache-mirror/hadoop/
二、硬体环境
共有3台机器,均使用的CentOS,Java使用的是jdk1.6.0。
三、安装JAVA6
sudo apt-get install sun-java6-jdk
/etc/environment
开启之后加入:#中间是以英文的冒号隔开,记得windows中是以英文的分号做为宏没分隔的
CLASSPATH=.:/usr/local/java/lib
JAVA_HOME=/usr/local/java
三、配置host表
[root@hadoop ~]# vi /etc/hosts
127.0.0.1 localhost
192.168.13.100 namenode
192.168.13.108 datanode1
192.168.13.110 datanode2
[root@test ~]# vi /etc/hosts
127.0.0.1 localhost
192.168.13.100 namenode
192.168.13.108 datanode1
[root@test2 ~]# vi /etc/host
127.0.0.1 localhost
192.168.13.100 namenode
192.168.13.110 datanode2
新增使用者和使用者组
addgroup hadoop
adduser hadoop
usermod -a -G hadoop hadoop
passwd hadoop
配置ssh:
服务端:
su hadoop
ssh-keygen -t rsa
cp id_rsa.pub authorized_keys
客户端
chmod 700 /home/hadoop
chmod 755 /home/hadoop/.ssh
su hadoop
cd /home
mkdir .ssh
服务端:
chmod 644 /home/hadoop/.ssh/authorized_keys
scp authorized_keys datanode1:/home/hadoop/.ssh/
scp authorized_keys datanode2:/home/hadoop/.ssh/
ssh datanode1
ssh datanode2
如果ssh配置好了就会蔽和纳出现以下提示棚纤资讯
The authenticity of host [dbrg-2] can't be established.
Key fingerpr is 1024 5f:a0:0b:65:d3:82:df:ab:44:62:6d:98:9c:fe:e9:52.
Are you sure you want to continue connecting (yes/no)?
OpenSSH告诉你它不知道这台主机但是你不用担心这个问题你是第次登入这台主机键入“yes”这将把
这台主机“识别标记”加到“~/.ssh/know_hosts”档案中第 2次访问这台主机时候就不会再显示这条提示信
不过别忘了测试本机ssh dbrg-1
mkdir /home/hadoop/HadoopInstall
tar -zxvf hadoop-0.20.1.tar.gz -C /home/hadoop/HadoopInstall/
cd /home/hadoop/HadoopInstall/
ln -s hadoop-0.20.1 hadoop
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:/usr/local/java/lib
export HADOOP_HOME=/home/hadoop/HadoopInstall/hadoop
export HADOOP_CONF_DIR=/home/hadoop/hadoop-conf
export PATH=$HADOOP_HOME/bin:$PATH
cd $HADOOP_HOME/conf/
mkdir /home/hadoop/hadoop-conf
cp hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml masters slaves /home/hadoop/hadoop-conf
vi $HADOOP_HOME/hadoop-conf/hadoop-env.sh
# The java implementation to use. Required. --修改成你自己jdk安装的目录
export JAVA_HOME=/usr/local/java
export HADOOP_CLASSPATH=.:/usr/local/java/lib
# The maximum amount of heap to use, in MB. Default is 1000.--根据你的记忆体大小调整
export HADOOP_HEAPSIZE=200
vi /home/hadoop/.bashrc
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:/usr/local/java/lib
export HADOOP_HOME=/home/hadoop/HadoopInstall/hadoop
export HADOOP_CONF_DIR=/home/hadoop/hadoop-conf
export PATH=$HADOOP_HOME/bin:$PATH
配置
namenode
#vi $HADOOP_CONF_DIR/slaves
192.168.13.108
192.168.13.110
#vi $HADOOP_CONF_DIR/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:192.168.13.100:9000</value>
</property>
</configuration>
#vi $HADOOP_CONF_DIR/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.replication</name>
<value>3</value>
<description>Default block replication.
The actual number of replications can be specified when the file is created.
The default is used if replication is not specified in create time.
</description>
</property>
</configuration>
#vi $HADOOP_CONF_DIR/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>192.168.13.100:11000</value>
</property>
</configuration>
~
在slave上的配置档案如下(hdfs-site.xml不需要配置):
[root@test12 conf]# cat 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:namenode:9000</value>
</property>
</configuration>
[root@test12 conf]# cat 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>namenode:11000</value>
</property>
</configuration>
启动
export PATH=$HADOOP_HOME/bin:$PATH
hadoop namenode -format
start-all.sh
停止s-all.sh
在hdfs上建立danchentest资料夹,上传档案到此目录下
$HADOOP_HOME/bin/hadoop fs -mkdir danchentest
$HADOOP_HOME/bin/hadoop fs -put $HADOOP_HOME/README.txt danchentest
cd $HADOOP_HOME
hadoop jar hadoop-0.20.1-examples.jar wordcount /user/hadoop/danchentest/README.txt output1
09/12/21 18:31:44 INFO input.FileInputFormat: Total input paths to process : 1
09/12/21 18:31:45 INFO mapred.JobClient: Running job: job_200912211824_0002
09/12/21 18:31:46 INFO mapred.JobClient: map 0% reduce 0%
09/12/21 18:31:53 INFO mapred.JobClient: map 100% reduce 0%
09/12/21 18:32:05 INFO mapred.JobClient: map 100% reduce 100%
09/12/21 18:32:07 INFO mapred.JobClient: Job plete: job_200912211824_0002
09/12/21 18:32:07 INFO mapred.JobClient: Counters: 17
09/12/21 18:32:07 INFO mapred.JobClient: Job Counters
09/12/21 18:32:07 INFO mapred.JobClient: Launched reduce tasks=1
检视输出结果档案,这个档案在hdfs上
[root@test11 hadoop]# hadoop fs -ls output1
Found 2 items
drwxr-xr-x - root supergroup 0 2009-09-30 16:01 /user/root/output1/_logs
-rw-r--r-- 3 root supergroup 1306 2009-09-30 16:01 /user/root/output1/part-r-00000
[root@test11 hadoop]# hadoop fs -cat output1/part-r-00000
(BIS), 1
(ECCN) 1
检视hdfs执行状态,可以通过web介面来访问:192.168.13.100:50070/dfshealth.jsp检视map-reduce资讯,
可以通过web介面来访问:192.168.13.100:50030/jobtracker.jsp下面是直接命令列看到的结果。
出现08/01/25 16:31:40 INFO ipc.Client: Retrying connect to server: foo.bar./1.1.1.1:53567. Already tried 1 time(s).
的原因是没有格式化:hadoop namenode -format
如何在windows下安装hadoop建议你在windows上安装linux的虚拟机器,然后在linux上安装hadoop
1、安装Cygwin
下载cygwin的setup.exe,双击执行:
选择从Inter安装:
设定安装目录:
设定安装包目录:
设定“Inter Connection”的方式,选择“Direct Connection”:
选择一个下载站点:
“下一步”之后,可能会d出下图的“Setup Alert”对话方块,直接“确定”即可
在“Select Packages”对话方块中,必须保证“Net Category”下的“OpenSSL”被安装:
如果还打算在eclipse 上编译Hadoop,则还必须安装“Base Category”下的“sed”:
“Devel Category”下的subversion 建议安装:
下载并安装:
当下载完后,会自动进入到“setup”的对话方块:
在上图所示的对话方块中,选中“Create icon on Desk”,以方便直接从桌面上启动
Cygwin,然后点选“完成”按钮。至此,Cgywin 已经安装完成。
2、配置环境变数
需要配置的环境变数包括PATH 和JAVA_HOME:将JDK 的bin 目录、Cygwin 的bin 目录
以及Cygwin 的usr\bin( *** in)目录都新增到PATH 环境变数中;JAVA_HOME 指向JRE 安装目录。
3、windows系统上执行hadoop丛集,伪分散式模式安装步骤:
①启动cygwin,解压hadoop安装包。通过cygdrive(位于Cygwin根目录中)可以直接对映到windows下的各个逻辑磁碟分割槽。例如hadoop安装包放在分割槽D:\下,则解压的命令为$ tar -zxvf /cygdrive/d/hadoop-0.20.2.tar.gz,解压后可使用ls命令检视,如下图:
预设的解压目录为使用者根目录,即D:\cygwin\home\lsq(使用者帐户)。
②编辑conf/hadoop-env.sh档案,将JAVA_HOME变数设定为java的安装目录。例如java安装在目录C:\Program Files\java\jdk1.6.0_13,如果路径没空格,直接配置即可。存在空格,需将Program Files缩写成Progra_1,如下图:
③依次编辑conf目录下的core-site.xml、mapred-site.xml和hdfs-site.xml档案,如下图:
④安装配置SSH
点选桌面上的Cygwin图示,启动Cygwin,执行ssh-host-config命令,然后按下图上的选择输入:
当提示Do you want to use a different name?输入yes,这步是配置安装的sshd服务,以哪个使用者登入,预设是cyg_server这个使用者,这里就不事先新建cyg_server这个使用者,用当前本机的超管本地使用者:chenx,后续根据提示,2次输入这个账户的密码
出现Host configuration finished. Have fun! 一般安装顺利完成。如下图:
输入命令$ start sshd,启动SSH,如下图:
注:sshd服务安装完之后,不会预设启动,如果启动报登入失败,不能启动,可在服务属性-Log On视窗手工修改,在前述的过程之中,cygwin不会校验密码是否正确,应该只是校验了2次的输入是否一致,然后再手工启动。不知道为什么,sshd服务如果选择local system的登入方式,后续会有问题,所以sshd服务最好设定成当前的登入使用者。
⑤配置ssh登入
执行ssh-keygen命令生成金钥档案
输入如下命令:
cd ~/.ssh
ls -l
cat id_rsa.pub >>authorized_keys
完成上述 *** 作后,执行exit命令先退出Cygwin视窗,如果不执行这一步 *** 作,下面的 *** 作可能会遇到错误。接下来,重新执行Cygwin,执行ssh localhost命令,在第一次执行ssh localhost时,会有“are you sure you want to continue connection<yes/no>?”提示,输入yes,然后回车即可。当出现下图提示,即顺利完成该步:
⑥hadoop执行
格式化namenode
开启cygwin视窗,输入如下命令:
cd hadoop-0.20.2
mkdir logs
bin/hadoop namenode –format
启动Hadoop
在Cygwin 中,进入hadoop 的bin 目录,
执行./start-all.sh 启动hadoop;
可以执行./hadoop fs -ls /命令,检视hadoop 的根目录;
可以执行jps 检视相关程序;
如下图:(如果显示和下图类似,一般hadoop安装/启动成功)
如何在hadoop 环境下安装hive不行。 安装 vm 下载:去官网下 VMware-player-5.0.1-894247.zip 安装和配置ubanto 下载:去官网下 ubuntu-12.10-desk-i386.iso 开启vm,载入ubanto iso档案,进行安装更新 进入ubanto,如果是第一个进入,则需要设定root的密码
如何在ubantu环境下安装hadoop上apache的hadoop页下编译好的包,解压,配一些档案就行了 很容易 网上教程很多
如何在 Linux 下安装 PyCharmPyCharm 是由 Jetbrains 公司开发的一个跨平台编辑器。如果你之前是在 Windows 环境下进行开发,那么你会立刻认出 Jetbrains 公司,它就是那个开发了 Resharper 的公司。 这篇文章将讨论如何在 Linux 系统上获取、安装和执行 PyCharm 。
如何在linux下安装opencv新建一个perl,名为bar.pl
内容如下:
#!/usr/bin/perl
while (<>){
chomp
s/([^-]+) - .*/\1/g
system "apt-get install ".$_
}
然后apt-cache search opencv | perl bar.pl
掌握在Linux虚拟机中安装Hadoop和Spark的方法,熟悉HDFS的基本使用方法,掌握使用Spark访问本地文件和HDFS文件的方法。进入Linux系统,参照本教程官网“实验指南”栏目的“Hadoop的安装和使用”,完成Hadoop伪分布式模式的安装。完成Hadoop的安装以后铅困,再安装Spark(Local模式)。使用hadoop用户名登录槐哪念进入Linux系统,启动Hadoop,参照相关Hadoop书籍或网络资料,或者也可以参考本教程官网的“实验指缓橘南”栏目的“HDFS *** 作常用Shell命令”。
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
我的环境是:Ubuntu14.04+Hadoop2.6.0+JDK1.8.0_25官网2.6.0的安装教程:http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/SingleCluster.html
为了方面配置,我在每台机器上都使用了hadoop用户来 *** 作,这样做的确够方便。
结点信息:(分布式集群架构:master为主节点,其余为从节点)
机器名
IP
作用
master
122.205.135.254
NameNode and JobTracker
slave1
122.205.135.212
DataNode and TaskTracker
1.JDK的安装
首先Hadoop运行需要Java的支持,所以必须在集群中所有的节点安装JDK,
jdk1.8.0_25的详细安装见我的另一篇文章:http://www.linuxidc.com/Linux/2015-01/112030.htm 注意:最好将集群中的JDK都安装在同一目录下前仿陆,便于配置。实践中,笔者一般将JDK安装在/usr/java这个目录,但并不是必须的。
2.配置hosts文件
修改集群中所有机器的/etc/hosts,打开该文件的命令如下:
sudo gedit /etc/hosts
添加:
122.205.135.254 master
122.205.135.212 slave1
如图所示:
注意:这里的master、slave1、slave2等等,指的是机器的机器名(使用命令hostname可以查看本机的机器名),切记,如果不是机器名的话会出慧顷问题的,并且集群中所有结点的机器名都应该不一样。
3.SSH无密码登录
Hadoop主从节点无密码登录的安装配置详细见我的另一篇章:点击打开链接
4.Hadoop的安装与配置
(1).下载解压Hadoop稳定版
我用的是hadoop-2.6.0,下载地址:http://mirrors.hust.edu.cn/apache/hadoop/common/stable/
将下载后的Hadoop 拷贝到hadoop目录下,解压到master服务器的/hadoop目录下(配置好master结点后再将其复制到其它的服务器上,一般来说,群集中所有的hadoop都安装在同一目录下):
解压命令如下:
tar xzfv hadoop-2.6.0.tar.gz
(2).配置Hadoop
1.修改hadoop-2.6.0/etc/hadoop/hadoop-env.sh,添加JDK支持:
export JAVA_HOME=/usr/java/jdk1.8.0_25
如果不知道你的JDK目录,使用命令echo $JAVA_HOME查看。
2.修改hadoop-2.6.0/etc/hadoop/core-site.xml
注意:必须加在<configuration></configuration>节点内
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.6.0/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<大铅name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
3.修改hadoop-2.6.0/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/hadoop-2.6.0/dfs/name</value>
<description>Path on the local filesystem where the NameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hadoop-2.6.0/dfs/data</value>
<description>Comma separated list of paths on the local filesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
4.修改hadoop-2.6.0/etc/hadoop/mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
<description>Host or IP and port of JobTracker.</description>
</property>
5. 修改hadoop-2.6.0/etc/hadoop/masters
列出所有的master节点:
master
6.修改hadoop-2.6.0/etc/hadoop/slaves
这个是所有datanode的机器,例如:
slave1
slave2
slave3
slave4
7.将master结点上配置好的hadoop文件夹拷贝到所有的slave结点上
以slave1为例:命令如下:
scp -r ~/hadoop-2.6.0 hadoop@slave1:~/
安装完成后,我们要格式化HDFS然后启动集群所有节点。
5.启动Hadoop
1.格式化HDFS文件系统的namenode
(这里要进入hadoop-2.6.0目录来格式化好些):
cd hadoop-2.6.0 //进入hadoop-2.6.0目录
bin/hdfs namenode -format //格式化
2.启动Hadoop集群
启动hdrs命令如下:
sbin/start-dfs.sh //开启进程
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)