HDFS 分布式环境搭建

作者:Grey

原文地址:

博客园:HDFS 分布式环境搭建

CSDN:HDFS 分布式环境搭建

准备四个Linux实例

每个实例对应的 host 和 ip 地址如下

node01 192.168.150.128

node02 192.168.150.138

node03 192.168.150.139

node04 192.168.150.140

每个节点的安排如下

host NN SNN DN
node01
node02
node03
node04

首先,需要配置静态 ip,

node01~node04上,分别执行

vi /etc/sysconfig/network-scripts/ifcfg-ens33

内容参考如下内容修改

在 node01 上

修改BOOTPROTO="static"

新增IPADDR="192.168.150.128"

然后执行:

service network restart

在 node02 上

修改BOOTPROTO="static"

新增IPADDR="192.168.150.138"

然后执行

service network restart

在 node03 上

修改BOOTPROTO="static"

新增IPADDR="192.168.150.139"

然后执行

service network restart

在 node04 上

修改BOOTPROTO="static"

新增IPADDR="192.168.150.140"

然后执行

service network restart

接下来,配置 hostname

在 node01 上

执行hostnamectl set-hostname node01

执行

vi /etc/sysconfig/network

设置为

NETWORKING=yes
HOSTNAME=node01

在 node02 上

执行hostnamectl set-hostname node02

执行

vi /etc/sysconfig/network

设置为

NETWORKING=yes
HOSTNAME=node02

在 node03 上

执行hostnamectl set-hostname node03

执行

vi /etc/sysconfig/network

设置为

NETWORKING=yes
HOSTNAME=node03

在 node04 上

执行hostnamectl set-hostname node04

执行

vi /etc/sysconfig/network

设置为

NETWORKING=yes
HOSTNAME=node01

设置本机的ip到主机名的映射关系,在node01~node04上分别执行vi /etc/hosts

并添加如下信息:

192.168.150.128 node01 

192.168.150.138 node02 

192.168.150.139 node03 

192.168.150.140 node04

接下来,需要关闭防火墙

node01~node04上都执行如下命令

systemctl stop firewalld.service

systemctl disable firewalld.service

firewall-cmd --reload

service iptables stop

chkconfig iptables off

关闭 SELINUX

node01~node04上执行vi /etc/selinux/config, 配置如下选项

SELINUX=disabled

做时间同步

node01~node04上分别执行yum install ntp -y

且做如下配置

vi /etc/ntp.conf

添加如下信息

server ntp1.aliyun.com

然后在node01~node04上都执行如下命令

service ntpd start

chkconfig ntpd on

接下来是配置免密登录

node01~node04上分别执行

ssh localhost

输入yes

输入密码

node01~node04上执行如下命令生成本机的密钥和公钥ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

node01的公钥发送到另外三个机器,在node01上执行

scp ~/.ssh/id_dsa.pub root@node02:~/.ssh/node1.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node03:~/.ssh/node1.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node04:~/.ssh/node1.id_rsa.pub

node02的公钥发送到另外三个机器,在node02上执行

scp ~/.ssh/id_dsa.pub root@node01:~/.ssh/node2.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node03:~/.ssh/node2.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node04:~/.ssh/node2.id_rsa.pub

node03的公钥发送到另外三个机器,在node03上执行

scp ~/.ssh/id_dsa.pub root@node01:~/.ssh/node3.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node02:~/.ssh/node3.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node04:~/.ssh/node3.id_rsa.pub

node04的公钥发送到另外三个机器,在node04上执行

scp ~/.ssh/id_dsa.pub root@node01:~/.ssh/node4.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node02:~/.ssh/node4.id_rsa.pub

scp ~/.ssh/id_dsa.pub root@node03:~/.ssh/node4.id_rsa.pub

node01上执行

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

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

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

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

node02上执行

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

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

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

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

node03上执行

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

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

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

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

node04上执行

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

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

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

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

接下来,需要在node01~node04上都安装Java环境,安装过程略。

node01~node04上都创建好目录

mkdir -p /opt/bigdata

node01~node04上,将hadoop安装包上传到/opt/bigdata下,然后执行:

tar xf hadoop-2.6.5.tar.gz

然后执行:

mv hadoop-2.6.5 hadoop

添加环境变量vi /etc/profile

Hadoop加入环境变量:

export JAVA_HOME=/usr/local/jdk

export HADOOP_HOME=/opt/bigdata/hadoop

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

然后执行source /etc/profile

接下来是 Hadoop 配置,在node01~node04

执行vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh

配置 JAVA_HOME:export JAVA_HOME=/usr/local/jdk

node01~node04上执行vi $HADOOP_HOME/etc/hadoop/core-site.xml

<configuration></configuration>之间,加入如下配置:

<property>
<name>fs.defaultFS</name>
<value>hdfs://node01:9000</value>
</property>

node01~node04上执行vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml

<configuration></configuration>之间,加入如下配置

<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/var/bigdata/hadoop/full/dfs/name</value>
</property> <property>
<name>dfs.datanode.data.dir</name>
<value>/var/bigdata/hadoop/full/dfs/data</value>
</property> <property>
<name>dfs.namenode.secondary.http-address</name>
<value>node02:50090</value>
</property> <property>
<name>dfs.namenode.checkpoint.dir</name>
<value>/var/bigdata/hadoop/full/dfs/secondary</value>
</property>

node01~node04上执行vi $HADOOP_HOME/etc/hadoop/slaves

node02
node03
node04

node01上格式化启动

格式化hdfs namenode -format

启动start-dfs.sh

如果使用 Windows作为客户端,那么可以配置 hosts 条目

进入C:\Windows\System32\drivers\etc

host 文件中增加如下条目:

192.168.150.128 node01 

192.168.150.138 node02 

192.168.150.139 node03 

192.168.150.140 node04

测试一下

node01上,执行如下命令,

hdfs dfs -mkdir /bigdata

hdfs dfs -mkdir -p /user/root

hdfs dfs -put hadoop-2.6.5.tar.gz /user/root

打开浏览器

通过:

http://node01:50070/explorer.html#/user/root

可以看到上传的文件 hadoop-2.6.5.tar.gz

HDFS 分布式环境搭建的更多相关文章

  1. 【转】Hadoop HDFS分布式环境搭建

    原文地址  http://blog.sina.com.cn/s/blog_7060fb5a0101cson.html Hadoop HDFS分布式环境搭建 最近选择给大家介绍Hadoop HDFS系统 ...

  2. Alluxio1.0.1最新版(Tachyon为其前身)介绍,+HDFS分布式环境搭建

    Alluxio(之前名为Tachyon)是世界上第一个以内存为中心的虚拟的分布式存储系统.它统一了数据访问的方式,为上层计算框架和底层存储系统构建了桥梁. 应用只需要连接Alluxio即可访问存储在底 ...

  3. 大数据:Hadoop(JDK安装、HDFS伪分布式环境搭建、HDFS 的shell操作)

    所有的内容都来源与 Hadoop 官方文档 一.Hadoop 伪分布式安装步骤 1)JDK安装 解压:tar -zxvf jdk-7u79-linux-x64.tar.gz -C ~/app 添加到系 ...

  4. HDFS 伪分布式环境搭建

    HDFS 伪分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 伪分布式环境搭建 CSDN:HDFS 伪分布式环境搭建 相关软件版本 Hadoop 2.6.5 CentOS 7 Oracle ...

  5. HDFS 高可用分布式环境搭建

    HDFS 高可用分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 高可用分布式环境搭建 CSDN:HDFS 高可用分布式环境搭建 首先,一定要先完成分布式环境搭建 并验证成功 然后在 no ...

  6. 攻城狮在路上(陆)-- hadoop分布式环境搭建(HA模式)

    一.环境说明: 操作系统:Centos6.5 Linux node1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 ...

  7. Hadoop-04-HBase全然分布式环境搭建

    Hbase分布式具体安装步骤 Hadoop全然分布式环境已经搭建完毕(參见01_Hadoop全然分布式环境搭建). 注意:Hbase和Hadoop的版本号必须相应! 不然会出现各种问题! 这里选用的是 ...

  8. Hadoop-2.4.1完全分布式环境搭建

      Hadoop-2.4.1完全分布式环境搭建   Hadoop-2.4.1完全分布式环境搭建 一.配置步骤如下: 主机环境搭建,这里是使用了5台虚拟机,在ubuntu 13系统上进行搭建hadoop ...

  9. Hadoop2.7.3+Spark2.1.0 完全分布式环境 搭建全过程

    一.修改hosts文件 在主节点,就是第一台主机的命令行下; vim /etc/hosts 我的是三台云主机: 在原文件的基础上加上; ip1 master worker0 namenode ip2 ...

随机推荐

  1. leetcode二叉树题目总结

    leetcode二叉树题目总结 题目链接:https://leetcode-cn.com/leetbook/detail/data-structure-binary-tree/ 前序遍历(NLR) p ...

  2. Docker 与 K8S学习笔记(二十五)—— Pod的各种调度策略(上)

    上一篇,我们学习了各种工作负载的使用,工作负载它会自动帮我们完成Pod的调度和部署,但有时我们需要自己定义Pod的调度策略,这个时候该怎么办呢?今天我们就来看一下如何定义Pod调度策略. 一.Node ...

  3. 解决github.com 的响应时间过长以及hosts配置不能保存的问题

    github.com 的响应时间过长 1 获取github可以使用的DNS域名 DNS查询 选择TTL值最小的 2 修改hosts配置 打开之后在最后加上如下内容,保存即可 3 出现hosts不能保存 ...

  4. identityserver4 (ids4)中如何获取refresh_token刷新令牌token 使用offline_access作用域

    ids4默认自带的api接口/api/connect/token 调用这个接口的时候,需要在body里面的 x-www-form-urlencoded模式下写 {     grant_type: &q ...

  5. go-zero微服务实战系列(九、极致优化秒杀性能)

    上一篇文章中引入了消息队列对秒杀流量做削峰的处理,我们使用的是Kafka,看起来似乎工作的不错,但其实还是有很多隐患存在,如果这些隐患不优化处理掉,那么秒杀抢购活动开始后可能会出现消息堆积.消费延迟. ...

  6. Spring框架系列(13) - SpringMVC实现原理之DispatcherServlet的初始化过程

    前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet ...

  7. 写出个灵活的系统竟然可以如此简单!小白也能写出高级的Java业务!

    一 最近正好公司里有个需求,一个短信业务接了多个第三方供应商,某些业务需要查询第三方供应商剩余的短信包数量去选择剩余量最多的渠道去批量发送.有些业务是指定了某个短信供应商,有些场景需要根据业务的值去动 ...

  8. Ros的通信第一课

    //////////////////////////Ros创建发布者talker//////////////////////////////////////////////////////////// ...

  9. JUC源码学习笔记1——AQS和ReentrantLock

    笔记主要参考<Java并发编程的艺术>并且基于JDK1.8的源码进行的刨析,此篇只分析独占模式,后续在ReentrantReadWriteLock和 CountDownLatch中 会重点 ...

  10. Dubbo源码(四) - 服务引用(消费者)

    前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 上一篇文章,讲了Dubbo的服务导出: Dubbo源码(三) - 服务导出(生产者) 本文,咱们 ...