使用三台阿里云服务器搭建Hadoop集群(云计算实验踩坑集锦)
使用阿里云服务器搭建这个hadoop集群,踩得坑人已经傻了,浪费了我快一周的时间。
1.准备环节
准备三台阿里云服务器
Namenode | 121.196.224.191 |
---|---|
Datanode1 | 121.196.226.12 |
Datanode2 | 47.96.42.166 |
端口设置(后面会有坑)
Namenode
通过安全组手动开放9000端口
在控制台查看Namenode的私网ip
Datanode1和Datanode2
通过安全组开放50010端口
2.配置环境
我们只需要把Namenode环境配置好,其他datanode采用主传的方式即可
配置Namenode环境
- 下载并解压所需包
ssh 121.196.224.191 //连接Namenode节点
mkdir /home/hadoop
cd /home/hadoop/
wget http://denglab.org/cloudcomputing/download/hadoop.tar.gz
tar -zxvf hadoop.tar.gz
mkdir /home/jdk
cd /home/jdk/
wget http://denglab.org/cloudcomputing/download/jdk.tar.gz
tar -zxvf jdk.tar.gz
- 设置bash profile
vi ~/.bash_profile
将原有的配置替换为下面代码
#export PATH
export JAVA_HOME=/home/jdk/jdk1.7.0_75
export JAVA_JRE=/home/jdk/jdk1.7.0_75/jre
export HADOOP_HOME=/home/hadoop/hadoop-2.6.0# path
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export PATH=$JAVA_HOME/bin:$PATH
source ~/.bash_profile //保存配置
- 修改Hadoop配置文件(以下都是将原有的配置进行替换)
cd $HADOOP_HOME
mkdir namenode
mkdir datanode
cd etc/hadoop/
vi core-site.xml
<configuration><property><name>fs.default.name</name><value>hdfs://Namenode:9000</value></property><property><name>hadoop.tmp.dir</name><value>/home/hadoop/hadoop-2.6.0/tmp/hadoop-${user.name}</value></property>
</configuration>
vi hdfs-site.xml
<configuration><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.namenode.name.dir</name><value>/home/hadoop/hadoop-2.6.0/namenode/name_1, /home/hadoop/hadoop-2.6.0/namenode/name_2</value></property><property><name>dfs.datanode.data.dir</name><value>/home/hadoop/hadoop-2.6.0/datanode/data_1, /home/hadoop/hadoop-2.6.0/datanode/data_2</value></property>
</configuration>
vi mapred-site.xml
<configuration><property><name>mapred.job.tracker</name><value>Namenode:9001</value></property>
</configuration>
vi hadoop-env.sh
export JAVA_HOME=/home/jdk/jdk1.7.0_75
vi slaves
设置数据节点
Datanode1
Datanode2
- 设置3个节点间的无密码访问
更改主机名称
ssh 121.196.224.191
vi /etc/hostname
Namenode
vi /etc/hosts
121.196.224.191 Namenode
121.196.226.12 Datanode1
47.96.42.166 Datanode2
ssh 121.196.226.12
vi /etc/hostname
Datanode1
ssh 47.96.42.166
vi /etc/hostname
Datanode2
ssh Namenode
vi /etc/hosts
将Namenode改为私网ip
将Namenode节点配置复制到datanode上
scp /etc/hosts root@121.196.226.12:/etc/hosts
scp /etc/hosts root@47.96.42.166:/etc/hosts
scp ~/.bash_profile root@121.196.226.12:~/.bash_profile
scp ~/.bash_profile root@47.96.42.166:~/.bash_profile
进行密钥生成
ssh-keygen -t rsa //点击三次enter即可
ssh Datanode1
ssh-keygen -t rsa //点击三次enter即可
scp /root/.ssh/id_rsa.pub root@Namenode:/root/.ssh/id_rsa.pub.Datanode1
ssh Datanode2
ssh-keygen -t rsa //点击三次enter即可
scp /root/.ssh/id_rsa.pub root@Namenode:/root/.ssh/id_rsa.pub.Datanode2
密钥交互
ssh Namenode
cd /root/.ssh
cat id_rsa.pub >> authorized_keys
cat id_rsa.pub.Datanode1 >> authorized_keys
cat id_rsa.pub.Datanode2 >> authorized_keys
chmod 644 authorized_keys
scp ~/.ssh/authorized_keys root@Datanode1:/root/.ssh/authorized_keys
scp ~/.ssh/authorized_keys root@Datanode2:/root/.ssh/authorized_keys
测试连接
ssh Datanode1
ssh Datanode2
ssh Namenode
- 启动及测试hadoop
把hadoop,jdk文件和配置从namenode复制到datanode中
scp -r /home/hadoop/ root@Datanode1:/home/hadoop
scp -r /home/hadoop/ root@Datanode2:/home/hadoop
scp -r /home/jdk/ root@Datanode1:/home/jdk
scp -r /home/jdk/ root@Datanode2:/home/jdk
cd $HADOOP_HOME
cd etc/hadoop
hdfs namenode -format //初始化hadoop,不要多次初始化,可能会导致生成id不唯一
start-all.sh
查看HDFS文件系统状态
hdfs dfsadmin -report
jps
测试HDFS文件系统
hadoop fs -ls /
vi aaa.txt
hadoop fs -put aaa.txt /aaa.txt
恭喜我们到了这里,接下来让我们看下到这一步的比较难受的坑
- namenode没有启动,jps找不到namenode,运行hdfs dfsadmin -report报如下错误
Retrying connect to server: hadoop/121.196.224.191:9000. Already tried 0 time(s);
原因:完成到datanode节点配置复制后,没有将namenode中 /etc/hosts 文件中namenode的ip改为私网ip
详细见这篇博客 - datanode未启动,查看datanode日志文件,发现报如下错误
Retrying connect to server: Namenode/121.196.224.191:9000. Already tried 0 time(s);
原因:没有通过安全组规则设置打开namenode的9000端口 - hadoop fs -put aaa.txt /aaa.txt 这步时,相应很长时间,报这种错误
INFO hdfs.DFSClient: Excluding datanode 47.96.42.166:50010
原因:没有打开47.96.42.166 这个datanode2的50010端口,通过安全组规则设置将其打开即可。
4. 如果datanode此时未启动可用 hadoop-daemon.sh start datanode 启动
使用三台阿里云服务器搭建Hadoop集群(云计算实验踩坑集锦)相关推荐
- 基于阿里云服务器搭建hadoop集群:HDFS的namenode WEB访问9870端口打不开解决方法
基于阿里云服务器搭建hadoop集群:HDFS的namenode WEB访问9870端口打不开解决方法 以下是基于我所面临问题的解决办法. 1.在本地的c:windows/system32/dirve ...
- 利用云服务器搭建hadoop集群
利用云服务器搭建hadoop集群 测试连接 一. Linux配置 二. 3台服务器免密码登录 1. 三台机器生成公钥与私钥: 2. 拷贝公钥到同一台机器 3. 复制第一台机器的认证到其他机器 4. 通 ...
- 阿里云ESC搭建hadoop集群
阿里云ESC搭建hadoop集群 前置 购买至少三台服务器,为了节约成本借了两个账号买了三台同一区域的服务器,安装的是 centos7:因此设计到不同账号相同地域之间通讯问题,阿里给了解决方案,详情参 ...
- 使用微软云服务器搭建Hadoop集群
使用微软云服务器搭建Hadoop集群 环境准备 修改主机名 配置无秘钥登录 下载并安装JDK Java相关命令的讲解 关闭3台机器的防火墙(微软云服务器上的防火墙默认是关闭的,此步可以跳过) 三台机器 ...
- 三台云服务器搭建hadoop集群
hadoop-2.10.1百度云资源链接: 链接:https://pan.baidu.com/s/1agl2Cg8MrBSYyFM2vq_4GA 提取码:lbsm 上传hadoop压缩包至云服务器并解 ...
- 华为云 和 阿里云 跨服务器搭建Hadoop集群
目录 华为云 和 阿里云 跨服务器搭建Hadoop集群 说明 期间遇到的问题 CentOS6 7 8更换阿里yum源 修改服务器名称 安装JDK 安装Hadoop 编写集群分发脚本 xsync scp ...
- 华为云Centos7搭建hadoop集群二:yum源替换,ssh免密处理,hadoop用户sudo
华为云Centos7搭建hadoop集群二:yum源替换,ssh免密处理,hadoop用户sudo 新建hadoop用户并设置密码,密码不要设置为简单的123456等,我这里已经创建过了hadoop用 ...
- 三台服务器搭建hadoop集群
集群 准备好三台服务器或虚拟机,系统版本centos7.5,本集群使用虚拟机搭建 修改服务器hostname vim /etc/hostname 将内容修改为要设置的主机名,三台主机hostname分 ...
- 云服务器搭建redis集群
在搭建redis集群之前需要安装ruby.redis使用ruby来做集群的.用一个叫redis-trib.rb的ruby脚本.redis-trib.rb是redis官方推出的管理redis集群的工具, ...
最新文章
- ubuntu 刷 android 5.0,IT之家学院:将刷了Ubuntu Touch的魅族PRO 5恢复为安卓系统
- aaaaaaaaaaa
- Lambda表达式【转】
- 优化内存中DataTable搜索速度,IP区域汇总
- HDU - 1054 Strategic Game(最小点覆盖-二分图最大匹配)
- 《数据库SQL实战》查找最晚入职员工的所有信息
- javaone_JavaOne正在重建动力
- AngularJs ngIf、ngSwitch、ngHide/ngShow
- django-反向解析-有位置参数的情况-视图反解-模板反解
- __gnu_cxx::hash_map使用中的一些问题
- utf-8编码用于asp出现乱码的问题--从数据库调用的是乱码
- matlab 贝叶斯信息标准_Matlab中贝叶斯(bayes)分类器实现分类
- java基础总结06-常用api类-时间日期类
- 自适应的设置字体的方式
- 抽签小程序,妈妈再也不用担心谁洗碗(分配任务)了,so easy
- 励志:滴滴打车CTO张博:生死战役,技术和时间赛跑
- Idea 编译报错:Ambiguous method call. Both...
- SQL小挑战——第3期(电影院选择连续座位)
- 2022年HELIUM3将引领链游开启gaming2.0时代
- Oceanbase和TiDB粗浅对比之 - 执行计划
热门文章
- pcb钻孔披锋改善报告_入坑15年,他总结出PCB人一定要知道的钻孔知识
- 关于身份证图片加密安全技术
- [国家集训队] 部落战争
- js ajax上传文件功能
- 铁电存储器FRAM的特性
- 让文字和图片垂直居中对齐
- 微信公众号文章阅读量分钟级监控_一键搞定
- 南昌计算机高职公立学校,南昌公立大专院校排名,2021年南昌专科学校名单及排名榜...
- java计算机毕业设计门诊药品管理系统源码+数据库+系统+lw文档+mybatis+运行部署
- Stata中因子变量的使用方法