HDP方式构建Hadoop集群

目录

1、修改主机名称

2、修改ip映射(三台机器都需要如下三行配置)

3、3台机器互相配置免密登录

4、安装jdk

5、http服务安装

方式1、 apache http server

方式2 python http server

6、所有节点关闭python的安全认证

7、安装ntp服务

8、安装ambari

8.1、安装ambari.repo本地源

8.2、修改本地源

8.3、安装ambari-server:

8.4、设置ambari-server

8.5、启动 ambari-server

8.6、安装ambari-agent

8.6.1、 72服务器安装ambari-agent

8.6.2、73服务器安装ambari-agent

8.6.3、74服务器安装ambari-agent


配置要求如下:

安装包:

ambari-2.6.2.0-centos7.tar.gz    #ambari组件用于监控、安装、管理Hadoop套件

HDP-2.6.3.0-centos7-rpm.tar.gz #hadoop套件安装包,yarn,hdfs,hive等都在里面

HDP-UTILS-1.1.0.21-centos7.tar.gz 

服务器:

192.168.31.72   主机名称:master

192.168.31.73   主机名称:slave1

192.168.31.74   主机名称:slave2

防火墙关闭:

关闭防火墙: systemctl stop firewalld.service
禁用防火墙:systemctl disable firewalld.service
查看防火墙状态 systemctl status firewalld.service

1、修改主机名称

方式一、修改配置文件 

vim /etc/hostname

添加主机名称

方式二、通过命令行,永久生效

hostnamectl set-hostname master    

查看主机名称

2、修改ip映射(三台机器都需要如下三行配置)

vim /etc/hosts

添加映射

配置完成后使用ping命令检查这3个机器是否相互ping得通(互相检查一下)。

3、3台机器互相配置免密登录

1.在机器A输入下面命令,三次回车后,就在机器A产生公钥和私钥
ssh-keygen
2.在机器A的/root/.ssh目录下执行下面命令,就复制到了机器B上
ssh-copy-id 机器B的ip
3.这样就可以SSH免密到机器B上了,想要相互免密,就相互按照上述步骤

如下为真实操作:

1)主节点执行命令

ssh-keygen

ssh-copy-id 192.168.31.72

ssh-copy-id 192.168.31.73

ssh-copy-id 192.168.31.74

2)在从节点1执行如下命令

ssh-keygen

ssh-copy-id 192.168.31.72

ssh-copy-id 192.168.31.73

ssh-copy-id 192.168.31.74

3)在从节点2执行命令

ssh-keygen

ssh-copy-id 192.168.31.72

ssh-copy-id 192.168.31.73

ssh-copy-id 192.168.31.74

完成之后通过  ssh 用户@ip 来确定是否可以免密登录

注意:每台机子上也要对本机设置免密,否则开启/关闭自己服务的时候还是需要输入密码

4、安装jdk

注意:jdk不能放在/home下

这里做了软连接

ln -s /usr/local/jdk1.8.0_91 /usr/local/java

export JAVA_HOME=/usr/local/java
export JRE_HOME=/usr/local/java/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAV_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

source /etc/profile

5、http服务安装

为ambari-server构建应用服务器,考虑两种方式apache或者python

方式1、 apache http server

##安装
yum install httpd
##启动
httpd
##关闭
httpd -k stop
##设置开机自启动
chkconfig httpd on

 

Apache默认将网站的根目录指向/var/www/html,配置文件的目录默认在/etc/httpd/conf/httpd.conf

安装过程报错

解决方式:

修改配置文件/etc/httpd/conf/httpd.conf

将#ServerName 解开

将离线安装包ambari-2.6.2.0-centos7.tar.gz, HDP-2.6.3.0-centos7-rpm.tar.gz, HDP-UTILS-1.1.0.21-centos7.tar.gz解压至/var/www/html中

#解压
tar -zxvf ambari-2.6.2.0-centos7.tar.gz
tar –zxvf HDP-2.6.3.0-centos7-rpm.tar.gz
tar –zxvf HDP-UTILS-1.1.0.21-centos7.tar.gz –C HDP-UTILS-1.1.0.21-centos7

方式2 python http server

##安装依赖组件
yum -y groupinstall development
yum -y install zlib-devel
##下载文件 wget速度较慢,建议在宿主浏览器提前下载
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
##解压
tar xJf Python-3.6.0.tar.xz
cd Python-3.6.0
##配置
./configure
##编译及安装
make && make install
##查看python3路径
which python3
##测试安装是否成功
python3 -V

##服务启动 -d 指定映射路径
python3 -m http.server -b 192.168.31.72 -d /usr/local/htsoft/  8080

6、所有节点关闭python的安全认证

修改所有主机配置

vim /etc/python/cert-verification.cfg
cation.cfgverify=disable

7、安装ntp服务

72/73/74安装ntp服务并同步时间

yum -y install ntp; ntpdate time.buptnet.edu.cn
systemctl start ntpd
systemctl enable ntpd

8、安装ambari

8.1、安装ambari.repo本地源

下载ambari.repo文件并存至/etc/yum.repos.d/ambari.repo中,因为yum命令安装服务时,默认从/etc/yum.repos.d/目录下寻找 .repo结尾的文件源

wget http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.6.2.0/ambari.repo -O /etc/yum.repos.d/ambari.repo


8.2、修改本地源

修改/etc/yum.repos.d/ambari.repo

改成如下配置,红框圈起来的部分表示ambari在apache服务器的目录

若下载本地源的时候报错403 forbiden,则手动构建源文件

#如果下载不成功,则新建文件
/etc/yum.repos.d/ambari.repo

#将如下内容cp里面
#VERSION_NUMBER=2.7.4.0-118
[Updates-ambari-2.7.4.0]
name=ambari-2.7.4.0 - Updates
baseurl=http://192.168.101.214/ambari/centos7/2.7.4.0-118/
gpgcheck=1
gpgkey=http://192.168.101.214/ambari/centos7/2.7.4.0-118/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

 

8.3、安装ambari-server:

##执行如下命令的时候,会从apache目录下http://192.168.31.72:8095/ambari/centos7/2.6.2.0-155
寻找安装文件。而不会从互联网
yum install ambari-server -y

若安装成功,直接按照8.4的步骤继续安装,无需看下面步骤;

若安装过程中如果报错403 forbidden,则说明没有权限需要修改 /etc/httpd/conf/httpd.conf下的配置来开通权限。具体百度

##关闭SELinux 将SELINUX=disabled,重启系统
vim  /etc/selinux/config

重启系统

reboot

8.4、设置ambari-server

1、获取数据库脚本

cd /var/lib/ambari-server/resources/
#将Ambari-DDL-MySQL-CREATE.sql脚本cp到本地,运行到mysql数据库

2、mysql包配置

①将mysql的驱动包放到/usr/share/java

②在/etc/ambari-server/conf/ambari.properties中添加server.jdbc.driver.path=/usr/share/java/mysql-connector-java.jar

##安装ambari-server
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar

ambari-server setup

 

报错:Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java and set property "server.jdbc.driver.path=[path/to/custom_jdbc_driver]" in ambari.properties.
 解决方案:

1、将mysql的驱动包放到/usr/share/java
2、在/etc/ambari-server/conf/ambari.properties中添加server.jdbc.driver.path=/usr/share/java/mysql-connector-java.jar

执行ambari在mysql中的脚本i

8.5、启动 ambari-server

ambari-server start

访问地址:http://ip:8080/ 

登录用户密码 admin/admin

8.6、安装ambari-agent

8.6.1、 72服务器安装ambari-agent

在你的 hadoop 集群(namenode节点和datanode节点)的每一个节点上安装 Ambari Agent,ambari agent的作用是采集监控信息并上传给ambari-server

按照前面 下载的仓库repo文件.执行如下操作


##安装ambari-agent,安装之后会出现下一步中的ambari-agent.ini配置文件
yum install ambari-agent

##编辑配置 Ambari Agent 的 ambari-agent.ini 配置文件,将<your.ambari.server.hostname>替换成你的ambari-server服务器地址

vim /etc/ambari-agent/conf/ambari-agent.ini
[server] 
hostname=master

[security]
force_https_protocol=PROTOCOL_TLSv1_2

##启动服务
/etc/init.d/ambari-agent start
或者
ambari-agent start

 

8.6.2、73服务器安装ambari-agent

#此命令在72服务器执行
#将72本地安装源同步到73服务器上
scp /etc/yum.repos.d/ambari.repo root@192.168.31.73:/etc/yum.repos.d

#以下命令均在73服务器执行

##安装ambari-agent
yum install ambari-agent

##编辑ambari-agent配置文件
vi /etc/ambari-agent/conf/ambari-agent.ini
[server] 
hostname=master

[security]
force_https_protocol=PROTOCOL_TLSv1_2

##启动服务
/etc/init.d/ambari-agent start

 

8.6.3、74服务器安装ambari-agent

在刚才安装的服务器上执行如下命令

#此命令在72服务器执行
#将72本地安装源同步到74服务器上
scp /etc/yum.repos.d/ambari.repo root@192.168.31.74:/etc/yum.repos.d

#以下命令均在74服务器执行

##安装ambari-agent
yum install ambari-agent

##编辑ambari-agent配置文件
vi /etc/ambari-agent/conf/ambari-agent.ini
[server] 
hostname=master

[security]
force_https_protocol=PROTOCOL_TLSv1_2

##启动服务
/etc/init.d/ambari-agent start

 

 

 

 

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值