HDFS 分布式环境搭建
HDFS 分布式环境搭建
作者:Grey
原文地址:
准备四个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 分布式环境搭建的更多相关文章
- 【转】Hadoop HDFS分布式环境搭建
原文地址 http://blog.sina.com.cn/s/blog_7060fb5a0101cson.html Hadoop HDFS分布式环境搭建 最近选择给大家介绍Hadoop HDFS系统 ...
- Alluxio1.0.1最新版(Tachyon为其前身)介绍,+HDFS分布式环境搭建
Alluxio(之前名为Tachyon)是世界上第一个以内存为中心的虚拟的分布式存储系统.它统一了数据访问的方式,为上层计算框架和底层存储系统构建了桥梁. 应用只需要连接Alluxio即可访问存储在底 ...
- 大数据:Hadoop(JDK安装、HDFS伪分布式环境搭建、HDFS 的shell操作)
所有的内容都来源与 Hadoop 官方文档 一.Hadoop 伪分布式安装步骤 1)JDK安装 解压:tar -zxvf jdk-7u79-linux-x64.tar.gz -C ~/app 添加到系 ...
- HDFS 伪分布式环境搭建
HDFS 伪分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 伪分布式环境搭建 CSDN:HDFS 伪分布式环境搭建 相关软件版本 Hadoop 2.6.5 CentOS 7 Oracle ...
- HDFS 高可用分布式环境搭建
HDFS 高可用分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 高可用分布式环境搭建 CSDN:HDFS 高可用分布式环境搭建 首先,一定要先完成分布式环境搭建 并验证成功 然后在 no ...
- 攻城狮在路上(陆)-- 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 ...
- Hadoop-04-HBase全然分布式环境搭建
Hbase分布式具体安装步骤 Hadoop全然分布式环境已经搭建完毕(參见01_Hadoop全然分布式环境搭建). 注意:Hbase和Hadoop的版本号必须相应! 不然会出现各种问题! 这里选用的是 ...
- Hadoop-2.4.1完全分布式环境搭建
Hadoop-2.4.1完全分布式环境搭建 Hadoop-2.4.1完全分布式环境搭建 一.配置步骤如下: 主机环境搭建,这里是使用了5台虚拟机,在ubuntu 13系统上进行搭建hadoop ...
- Hadoop2.7.3+Spark2.1.0 完全分布式环境 搭建全过程
一.修改hosts文件 在主节点,就是第一台主机的命令行下; vim /etc/hosts 我的是三台云主机: 在原文件的基础上加上; ip1 master worker0 namenode ip2 ...
随机推荐
- django--ORM表的多对一关系
多对一关系是什么 Django使用django.db.models.ForeignKey定义多对一关系. ForeignKey需要一个位置参数:与该模型关联的类 class Info(models. ...
- zabbix监控mysql主从同步
获取主从复制sql线程和I/O线程状态是否为yes #!/bin/bash HOSTNAME="数据库IP" PORT="端口" USERNAME=" ...
- idea 查看 类所有方法的快捷键
idea 查看 类 所有方法的快捷键 Idea:ctrl+F12 Eclipse:Ctrl+O
- GameFramework食用指南
1.框架简介 GF框架分两部分,GameFramework(GF)和UnityGameFramework(UGF): 通过接口的形式对Unity引擎进行了解耦: GF独立于Unity,具体业务逻辑实现 ...
- Bash脚本debug攻略
初学Bash时, 我从未想过想过bash也能debug, 也从未想过去debug Bash脚本. 随着技术的增长, 写的脚本越来越复杂, 使用echo打印日志来调试脚本的方式越来越捉襟见肘了. 直到某 ...
- esp8266模拟输入(ADC)检测问题
今天使用esp12f读取A0数据时一直出现错误; Serial.println(analogRead(A0));读取值一直为1024 因为前段时间一直用的是开发板,读取电压值正常 而从昨天换为了esp ...
- 通过Nginx(OpenResty)修改UserAgent
通过OpenResty修改UserAgent,非常简单,Demo里做了多次反向代理是为了日志输出显示效果.实际应用中不必这么麻烦. 浏览器访问如下地址即可 http://127.0.0.1:10090 ...
- ZooKeeper3.4.10集群安装配置-Docker
一. 服务器规划 主机 IP 端口 备注 b-mid-24 172.16.0.24 2181, 2888, 3888 2181:对cline端提供服务 3888:选举leader使用 2888:集群内 ...
- php命名空间粗解
// 创建命名空间Articlenamespace Article;class Comment { } // 创建命名空间MessageBoardnamespace MessageBoard;clas ...
- 【Github开源项目体验】- ZFile 基于 Java 的在线网盘
[Github开源项目体验]- ZFile 基于 Java 的在线网盘 在线云盘.网盘.OneDrive.云存储.私有云.对象存储.h5ai.上传.下载 date: 2022-08-02 addres ...