服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Ubuntu - linux下hadoop配置过程

linux下hadoop配置过程

2019-11-28 19:14Linux教程网 Ubuntu

折腾hadoop好久,期间几次完全推到重来,现在在这里写下来备份。本文不是写给别人作为教程,而是给我自己作提醒的,如果你碰巧看到了本文,那你可能需要一些linux基本知识才能正确理解。

1,安装linux 
本文假设从裸机开始,所以要先装linux。本人是ubuntu对支持者,所以装的是ubuntu,废话没有,很容易就装好了。在安装过程中,要注意所有节点对主机名应该有规律,比如node0, node1, node2 ... 
2,准备 
下面对软件对安装,全都使用了apt,这个软件需要互联网链接,如果你对网速极慢,或者根本链接不到外部网络(这个现象在教育网内很常见),可以从一个能上网对ubuntu电脑上的/var/cache/apt/archives文件夹里deb文件出来安装(什么?你问我这个文件夹里为什么没有想要的包,这个文件夹是apt对缓存文件夹,想要里面有你想要对东西,不用我提醒你应该怎么办了吧)。 
ubuntu默认已经装好了openssh-client,需要安装openssh-server。命令如下: 

复制代码

代码如下:


sudo apt-get install openssh-server 


然后是jdk: 

复制代码

代码如下:


sudo apt-get install default-jdk 



3,配置网络 
如果你的节点们可以通过dhcp服务器获得ip,我个人建议,这样做,原因是简单,不用怎么配置就搞定了。或者可以使用静态ip,作为一个牛b的linux大牛,应该可以通过一行命令来设置静态ip,但是我不会。我通常都是在gnome提供的网络管理器来设ip对。如果你用对linux里没有图形界面,那样请google。 
设置好了ip地址之后,记忆在/etc/hosts文件中给每个节点起个名字,最好就是各自对主机名,这样有利于下面对配置和管理。 
hadoop要求各节点间可以不需要输入密码就能用ssh互相登录。我使用了比官方方法简单一点方法来设置,但是据说安全性有点儿问题。下面是方法: 
在某个节点上执行如下命令: 

复制代码

代码如下:


rm -rf ~/.ssh 

 

复制代码

代码如下:


ssh-keygen -t rsa 


这个命令之后需要多按几次回车,知道再次出现命令提示符。当然,这个做法也不是很安全,里面有个输入key的地方,官方的建议是,输入一首歌的歌词,呵呵,这个建议很搞笑。当然在我的步骤中,这个key就是空值了。 

复制代码

代码如下:


cat ~/.ssh/id_rsa.pub >> authorized_keys 


然后把整个.ssh文件夹考到所有对节点上,具体方法可以使用scp命令,具体命令由于和具体环境有关,下面不写。 

这样网络就设置对差不多了。 
4,安装hadoop 
解压,这个比较简单,命令不写。解压对位置最好每个hadoop都一样,不一样有什么后果,我没试过。 
之后要进行一些配置,首先进入解压后目录对conf文件夹,要修改对配置文件包括hadoop-env.sh hadoop-site.xml masters slaves 
hadoop-env.sh中要uncomment下面一行: 
 

复制代码

代码如下:


export JAVA_HOME=/home/hadoop/jdk1.6.0_16/ 


当然具体的值,也要根据具体情况进行更改。 
接下来是hadoop-site.xml,下面是我的文件内容。 

复制代码

代码如下:


<configuration> 
<property> 
<name>fs.default.name</name> 
<value>hdfs://node0:6000</value> 
</property> 
<property> 
<name>mapred.job.tracker</name> 
<value>node0:6001</value> 
</property> 
</configuratiron> 


这个例子很直白,不解释。 

masters里面是jobtracker和namenode所在节点的主机名或者ip地址,我的masters文件里只有一行,当然如果你想要设置多个节点作为主节点,也可以。 
slaves里面是所有tasktracker和datanode对主机名或ip地址。 
5,运行 
先进入hadoop安装文件夹。然后依次运行如下命令: 

复制代码

代码如下:


bin/hadoop namenode -format 
bin/start-all.sh 


不出意外的话,现在hadoop就可以使用了。 

Hadoop是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以流的形式访问(streaming access)文件系统中的数据。

延伸 · 阅读

精彩推荐