Hadoop集群安装指南(CHD5.9.1)(分布式+图文详解)
centos7.1,CDH5.9.1,3台机器,终极指导安装
下载链接如下:
安装文件下载链接如下:
链接:https://pan.baidu.com/s/1RQYNiWn9a-T8GXcCsoDBsA 密码:mu83
报错解决方法在最后面
报错解决方法在最后面
报错解决方法在最后面
基础配置
首先查看IP地址
$ ifconfig

如果没有显示的话,需要修改配置文件 ifcfg-enp5s0(名字不唯一,一般是第一个)
$ cd /etc/sysconfig/network-scripts
$ vim ifcfg-enp5s0

$ 修改箭头处,分别是静态地址,系统启动时是否激活网卡,ip地址,网关,DNS

重启服务
$ systemctl retart network.service
检测一下
$ ping www.baidu.com

修改主机名分别为master,node1,node2
$ hostname

更改yum源,Yum原本的源都在国外,更新特别浪费时间,我们改为阿里源:
首先我们将原来的源进行备份:
$ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
接下来我们用阿里源进行替换:
$ wget -O/etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

设置ssh
主要有三步:①生成公钥和私钥、②导入公钥到认证文件、③更改权限
首先添加各个节点的host
$ vim /etc/hosts
127.0.0.1 localhost
::1 localhost
210.44.71.51 master
210.44.71.52 node1
210.44.71.53 node2

$ ssh-keygen -t rsa -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 700 ~/.ssh && chmod 600 ~/.ssh/*


设置主机->从机的无密码登录
$ cat ~/.ssh/id_rsa.pub | ssh root@node1 'cat - >> ~/.ssh/authorized_keys'
$ cat ~/.ssh/id_rsa.pub | ssh root@node2 'cat - >> ~/.ssh/authorized_keys'

测试
$ ssh node1
$ ssh node2


设置从机->主机的无密码登录
分别在node1、node2上执行
$ cat ~/.ssh/id_rsa.pub | ssh root@master 'cat - >> ~/.ssh/authorized_keys'

测试
$ ssh master

安装JDK
如果有openjdk先卸载
$ rpm -qa | grep java
$ rpm -e --nodeps +openjdkname
安装
$ rpm -ivh jdk-8u121-linux-x64.rpm

发给其他节点(主节点),然后重复上一次操作
$ scp /root/jdk-8u121-linux-x64.rpm node1:/root/
$ scp /root/jdk-8u121-linux-x64.rpm node2:/root/

检测一下
$ which java
$ java -version
$ which javac
$ javac -version

关闭防火墙,分别为关闭防火墙,禁止开机启动
$ systemctl stop firewalld.service
$ systemctl disable firewalld.service

关闭SELinux,重启生效
$ vim /etc/selinux/config
$ reboot

下载Cloudera相关rpm
下载cloudera-manager.repo:
http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/cloudera-manager.repo
修改其中的版本号为要安装的版本号
**修改所有的 https 为 http **
**baseurl=http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.9.1/ **
gpgkey =http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera
下载cloudera-manager-installer.bin:
http://archive.cloudera.com/cm5/installer/5.9.1/
下载RPMS(目录下的所有文件):
http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.9.1/RPMS/x86_64/
下载CDH-Parcel文件(三个): (注意manifest.json需要自己复制下来,粘到txt重命名,下载后将.sha1文件后缀更改为.sha)
CDH-5.9.1-1.cdh5.9.1.p0.4-el7.parcel
CDH-5.9.1-1.cdh5.9.1.p0.4-el7.parcel.sha1
manifest.json
http://archive.cloudera.com/cdh5/parcels/5.9.1/

在所有节点上拷贝安装文件
将cloudera-manager.repo文件拷贝到所有节点的/etc/yum.repos.d/文件夹下
$ mkdir -p /etc/yum.repos.d/
$ cp /root/cloudera-manager.repo /etc/yum.repos.d/
传给其他节点
$ scp /root/cloudera-manager.repo node1:/root/
$ cp /root/cloudera-manager.repo /etc/yum.repos.d/ //node1
$ cp /root/cloudera-manager.repo /etc/yum.repos.d/ //node2

将下载的RPMS所有文件,拷贝到/opt/cloudera-RPMS/目录下,需要新建目录(主节点全部,从节点部分):
$ mkdir -p /opt/cloudera-RPMS
node中不需要安装server的包,只需要安装下面两个
cloudera-manager-agent-5.9.1-1.cm591.p0.8.el7.x86_64.rpm
cloudera-manager-daemons-5.9.1-1.cm591.p0.8.el7.x86_64.rpm
$ scp /opt/cloudera-RPMS/cloudera-manager-agent-5.9.1-1.cm591.p0.8.el7.x86_64.rpm node1:/opt/cloudera-RPMS/
$ scp /opt/cloudera-RPMS/cloudera-manager-daemons-5.9.1-1.cm591.p0.8.el7.x86_64.rpm node1:/opt/cloudera-RPMS/
$ scp /opt/cloudera-RPMS/cloudera-manager-agent-5.9.1-1.cm591.p0.8.el7.x86_64.rpm node2:/opt/cloudera-RPMS/
$ scp /opt/cloudera-RPMS/cloudera-manager-daemons-5.9.1-1.cm591.p0.8.el7.x86_64.rpm node2:/opt/cloudera-RPMS/

将下载的CDH-Parcel文件(三个)拷贝到/opt/cloudera/parcel-repo 目录下 (如果该目录不存在,手动创建,所有节点)
传给其他节点
//主节点
$ mkdir -p /opt/cloudera/parcel-repo
//从节点
$ mkdir -p /opt/cloudera
$ scp -r /opt/cloudera/parcel-repo/ node1:/opt/cloudera/
$ scp -r /opt/cloudera/parcel-repo/ node2:/opt/cloudera/

所有节点都需要执行的
$ cd /opt/cloudera-RPMS
$ yum -y localinstall --nogpgcheck *.rpm
只需要在主节点(Master)上执行的
将cloudera-manager-installer.bin拷贝到/opt目录下
给.bin文件添加可执行权限
$ sudo chmod +x /opt/cloudera-manager-installer.bin
执行安装
/opt/cloudera-manager-installer.bin
依次出现这些页面








进入web页面210.44.71.51:7180
账号密码都是admin


在搜索框里输入节点名字,搜索,英文逗号分隔



不要选择JDK,已经安装过了

默认即可

设置密码

一定保证所有节点连网 这里图片有个错误,应该包含master节点


修改请看最后教程


默认即可







可能出现的错误
Fatal error

把数据文件删除(改名字)
如果后来又出现错误可继续删除
$ cd /etc/cloudera-scm-server/
$ mv /etc/cloudera-scm-server/db.properties /etc/cloudera-scm-server/db.properties.backup

更改SELinux需要重启
$ reboot
错误3

查看日志文件后发现是获取不到镜像,DNS没配好
错误8

可能是因为cloudera-manager.repo没有拷贝到目标文件夹
或者是因为启动失败,主节点中/etc/yum.repos.d目录下cloudera-manager.repo自动改名导致的,重新拷贝一份进去
cp /root/cloudera-manager.repo /etc/yum.repos.d/
配置时警告错误

1、透明大页面问题
临时关闭:
echo never > /sys/kernel/mm/transparent_hugepage/defrag
修改开机设置
vi /etc/rc.local
echo never > /sys/kernel/mm/transparent_hugepage/defrag

临时修改:
sysctl vm.swappiness=0
永久设置:
vi /etc/sysctl.conf
vm.swappiness = 10
sysctl -p
Hadoop集群安装指南(CHD5.9.1)(分布式+图文详解)的更多相关文章
- 大规模Hadoop集群实践:腾讯分布式数据仓库(TDW)
TDW 是腾讯最大的离线数据处理平台.本文主要从需求.挑战.方案和未来计划等方面,介绍了TDW在建设单个大规模集群中采取的 JobTracker 分散化和 NameNode 高可用两个优化方案. TD ...
- 集群之LVS(负载均衡)详解
提高服务器响应能力的方法 scale on 在原有服务器的基础上进行升级或者直接换一台新的性能更高的服务器. scale out 横向扩展,将多台服务器并发向外响应客户端的请求.优点:成本低,扩展 ...
- MySQL集群Percona XtraDB Cluster安装搭建步骤详解
http://www.linuxidc.com/Linux/2017-05/143501.htm http://blog.csdn.net/thundermeng/article/details/52 ...
- Centos mini系统下的Hadoop集群搭建
1.事前了解 1.1 Hadoop 百度百科:https://baike.baidu.com/item/Hadoop/3526507?fr=aladdin Hadoop是一个由Apache基金会所开发 ...
- Hadoop集群
你可以用以下三种支持的模式中的一种启动Hadoop集群: 单机模式 伪分布式模式 完全分布式模式 单机模式的操作方法 默认情况下,Hadoop被配置成以非分布式模式运行的一个独立Java进程.这对调试 ...
- Hadoop的学习前奏(二)——Hadoop集群的配置
前言: Hadoop集群的配置即全然分布式Hadoop配置. 笔者的环境: Linux: CentOS 6.6(Final) x64 JDK: java version "1.7 ...
- Hadoop集群搭建
配置IP,修改主机名,关闭防火墙,配置SSH免密码登录
- Hadoop集群搭建的详细过程
Hadoop集群搭建 一.准备 三台虚拟机:master01,node1,node2 时间同步 1.date命令查看三台虚拟机时间是否一致 2.不一致时间同步:ntpdate ntp.aliyun.c ...
- 大数据系列(3)——Hadoop集群完全分布式坏境搭建
前言 上一篇我们讲解了Hadoop单节点的安装,并且已经通过VMware安装了一台CentOS 6.8的Linux系统,咱们本篇的目标就是要配置一个真正的完全分布式的Hadoop集群,闲言少叙,进入本 ...
随机推荐
- P4692 [Ynoi2016]谁的梦
传送门 分别考虑每一种颜色对答案的贡献.每种颜色的贡献就是他出现的区间个数,那么可以用总区间减去不包含它的区间个数,把每一个序列里不包含它的区间个数加起来,然后不同序列用乘法原理计算即可 于是我辛辛苦 ...
- CF126B Password【KMP】By cellur925
题目传送门 其实$Chemist$在之前写了非常棒的题解! 我长话短说,补充两句. “那么当$next[n]$>$max$时显然不能将$next[n]$作为最长子串的长度”这句话其实在说,因为一 ...
- Ubuntu还是windows呢
本来想把才换不久的电脑也换成Ubuntu,犹豫再三,还是把这个老电脑作为Ubuntu的主力机把,毕竟大屏幕看着也得劲 新电脑还是win10吧,毕竟现在速度还是刷刷的,等过几年速度降下来了,就换成Ubu ...
- Access 中case when then else end不支持使用switch代替
Access 中case when then else end不支持使用switch代替 这里主要是实现一个表中多个字段,多个字段之间作比较然后取得最大值或者最小值用来处理 case when the ...
- DP+高精度 URAL 1036 Lucky Tickets
题目传送门 /* 题意:转换就是求n位数字,总和为s/2的方案数 DP+高精度:状态转移方程:dp[cur^1][k+j] = dp[cur^1][k+j] + dp[cur][k]; 高精度直接拿J ...
- 题解报告:hdu 6440 Dream(费马小定理+构造)
解题思路:给定素数p,定义p内封闭的加法和乘法运算(运算封闭的定义:若从某个非空数集中任选两个元素(同一元素可重复选出),选出的这两个元素通过某种(或几种)运算后的得数仍是该数集中的元素,那么,就说该 ...
- zoj3768Continuous Login
链接 这题通过暴力可以看出最多不超过3 具体为什么..等着看大牛的题解. 可以预处理出来两个数之和 用bool存下 然后枚举一个数 二分剩余数的位置就可以了 勉强可过 #include <ios ...
- 【转】哪个更快:Java堆还是本地内存
译文出处: shenzhang 原文出处:原文链接 使用Java的一个好处就是你可以不用亲自来管理内存的分配和释放.当你用new关键字来实例化一个对象时,它所需的内存会自动的在Java堆中分配.堆 ...
- c/s架构搭建
1.socket(套接字) Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接 ...
- re正则表达式公式讲解6
标识符 re.I (re.IGNORECASE) 忽略大小写 import re s = "Max@123uyt146" print(re.search("m" ...