Ubuntu16.4-Hadoop2.7.5分布式集群搭建(一)

一:安装Ubuntu虚拟机

1.Ubuntu系统下载

下载地址:http://www.ubuntu-china.cn/download/

2.Ubuntu系统安装

这里我安装了三台虚拟机,分别命名为masternode1node2

3.设置root用户密码(三台虚拟机都需要进行)

打开终端并输入"sudo passwd"

二:修改虚拟机host相关文件

以下操作三台虚拟机都需进行

1.修改hostname文件

使用root用户登录,在终端输入"vim /etc/hostname",对于三台虚拟机,分别修改其内容为: master, node1, node2

2.修改hosts文件

使用root用户登录,在终端输入"vim /etc/hosts",在文件中加入三台虚拟机的IP,如下图所示:

本机的IP可以在终端输入"ifconfig"查看

3. 检验各主机是否联通

在终端使用"ping + ip",来检验各主机是否联通

三:创建组和用户

以下操作三台虚拟机都需进行

1. 创建hadoop用户组

使用root用户,在终端输入"addgroup hadoop"

2. 创建hdfs用户

使用root用户,在终端输入"adduser -ingroup hadoop hdfs"

3. 为hdfs用户添加sudo权限

使用root用户,在终端输入"vim /etc/sudoers", 在 "root ALL=(ALL:ALL) ALL"下面添加"hdfs ALL=(ALL:ALL) ALL"

四:配置ssh免密登录

1. 安装ssh服务

在三台虚拟机分别在终端输入"apt-get install openssh-server"

2. 生产公匙

使用hdfs用户,在终端输入"ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa"

3. 添加公匙到公匙证书列表中

master主机节点中,使用hdfs用户,在终端输入"cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys"

4. 在子节点新建.ssh文件夹

node1node2两个子节点中,使用hdfs用户,在终端输入"mkdir ~/.ssh"

5. 将公匙证书添加到其他节点中

master主机节点中,使用hdfs用户,在终端输入"scp ~/.ssh/authorized_keys hdfs@node1:~/.ssh/"

master主机节点中,使用hdfs用户,在终端输入"scp ~/.ssh/authorized_keys hdfs@node2:~/.ssh/"

五:安装JDK

master主机下进行以下操作

1. 下载jdk

下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html

2. 安装jdk

将下载好的jdk文件解压到"/usr/local"文件下。

3. 修改.bashrc文件

使用hdfs用户,在终端输入"vim ~/.bashrc"。在文件中最后添加以下内容:

export JAVA_HOME=/usr/local/jdk1.8.0
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

4. 更新.basrc文件

使用hdfs用户,在终端输入"source ~/.bashrc"

5. 测试jdk

使用hdfs用户,在终端输入"java -version",出现以下内容即为安装成功:

6. 发送jdk到子节点

使用master节点,在终端输入"scp -r /usr/local/jdk1.8.0 hdfs@node1:~",进去node1节点,在终端输入"sudo mv /usr/local/jdk1.8.0"。

按照同样的方式修改子节点上~/.bashrc文件。

六:hadoop的安装

以下操作在master主节点上进行

1.下载hadoop

下载地址:https://mirrors.aliyun.com/apache/hadoop/common/

2. 创建hadoop目录(三台虚拟机都要进行这一步)

使用root用户,在终端输入"mkdir hadoop",并输入"chown -R hdfs:hadoop /usr/local/hadoop"以及"chmod -R 775 /usr/local/hadoop"修改权限

3. 安装hadoop

使用hdfs用户,解压下载好的hadoop文件到"/usr/local/hadoop/"下

七:hadoop集群搭建

以下操作在master主节点上进行

1. 修改core-site.xml文件

在终端输入"vim /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/core-site.xml"

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/hadoop-2.7.5/tmp</value>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <property>
        <name>io.file.buffer.size</name>
        <value>4096</value>
    </property>
</configuration>

2. 修改hdfs-site.xml文件

在终端输入"vim /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/hdfs-site.xml"

<configuration>
    <property>
        <name>dfs.nameservices</name>
        <value>master-hadoop-cluster</value>
    </property>

    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>master:50090</value>
    </property>

    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///usr/local/hadoop/hadoop-2.7.5/dfs/name</value>
    </property>

    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///usr/local/hadoop/hadoop-2.7.5/dfs/data</value>
    </property>

    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>

    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
</configuration>

3.修改mapred-site.xml文件

现在终端输入

"cp /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/mapred-site.xml"

然后在终端输入"vim /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/mapred-site.xml",在文件中修改内容如下:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value> </property>
    <property>
        <name>mapreduce.jobtracker.http.address</name>
        <value>master:50030</value> </property>
    <property> 
        <name>mapreduce.jobhistory.address</name> 
        <value>master:10020</value>
    </property> 
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>master:19888</value> 
    </property>
</configuration>

4. 修改yarn-site.xml文件

在终端输入"vim /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/yarn-site.xml", 在文件中修改内容如下:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value> 
    </property>

    <property> 
        <name>yarn.resourcemanager.address</name> 
        <value>master:8032</value>
    </property> 

    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>master:8030</value> 
    </property>

    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>master:8031</value>
    </property> 

    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>master:8033</value> 
    </property>

    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>master:8088</value>
    </property>
<configuration>

5. 修改slaves配置文件

在终端输入"/usr/local/hadoop/hadoop-2.7.5/etc/hadoop/slaves",修改内容如下:

node1
node2

6. 修改相应文件中的JAVA_HOME

(1)在终端输入"/usr/local/hadoop/hadoop-2.7.5/etc/hadoop/hadoop-env.sh",修改内容如下:

export JAVA_HOME=/usr/local/jdk1.8.0

(2)在终端输入"/usr/local/hadoop/hadoop-2.7.5/etc/hadoop/yarn-env.sh",修改内容如下:

export JAVA_HOME=/usr/local/jdk1.8.0

7. 将hadoop发送到其他节点

使用以下命令将hadoop发送到其他子节点。

scp -r /usr/local/hadoop/hadoop-2.7.5/ hdfs@node1:/usr/local/hadoop/
scp -r /usr/local/hadoop/hadoop-2.7.5/ hdfs@node2:/usr/local/hadoop/

8. 配置hadoop环境变量

三台虚拟机都需进行这一步,并使用hdfs用户登录

(1).在终端输入"vim ~/.bashrc",修改配置文件如下图:

(2).在终端输入"source ~/.bashrc"

八:启动hadoop服务

master节点下进行如下操作

1. 格式化文件系统

使用hdfs用户,在终端输入"hdfs namenode -format",返回状态为" 0 "即为格式化成功:

2. 启动服务

使用hdfs用户,在终端输入"start-all.sh"启动hadoop服务

3.检验是否成功启动

(1). 在master主节点上,输入jps,出现NameNode即为启动成功:

(2). 在node1、noed2子节点上,输入jps,显现DataNode即为启动成功:

九:Hadoop入门之——"WordCount"

1. 创建测试文件

在任意目录下创建名为test.txt的文件。随便输入一些内容。

2. 将文件上传到hdfs文件系统

(1). 使用以下命令查看hdfs目录:

hdfs dfs -ls /

(2). 使用以下命令新建test目录:

hdfs dfs -mkdir /test

(3). 将文件上传到hdfs:

hdfs dfs -put test.txt /test/

(4). 使用hadoop自带jar包执行wordcount程序

hadoop jar /usr/local/hadoop/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /test /output

(5). 查看hdfs根目录,可以看到多了名为"output"和"tmp"的目录,进入output目录。查看"part-r-00000"文件

 

 

第一次写这样的博客,如有任何不妥,请您及时联系我。

email: 17126252@bjtu.edu.cn

 

版权声明:博客编写不易,转载时请注明出处,万分感谢 !

http://blog.csdn.net/zyy_2018/article/details/79576252

 

Ubuntu16.4-Hadoop2.7.5分布式集群搭建(二)--- Spark集群搭建

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值