CDH实操部署--离线

cdh实操练习

目录

1、节点初始化

1、每台机器添加域名解析到hosts文件,如下

2、关闭所有节点的防火墙、清空防火墙规则、关闭selinux,需重启机器selinux配置才会生效

3、同步所有节点的时区及时钟

4、所有节点部署JDK

2、选择001主节点离线部署mysql5.7

3、在安装了数据库的主机上创建CDH的元数据库和用户、amon服务的数据库及用户,部署

==============准备结束 开始CDH离线部署================

4、部署CM server+agent  官方rpm包安装

1、所有节点创建目录及解压

2、选择001为cm server,不下载依赖包直接部署

3、所有节点(包含001)为cm agent,不下载依赖包直接部署(必须先安装daemons)

4、所有节点包括server(001)修改agent的配置,指向server的节点001    

5、001节点部署离线parcel源

总结&故障


1.离线部署主要分为三块:

 

a.MySQL离线部署

b.CM离线部署

c.Parcel 文件离线源部署

2.规划:

节点

MySQL部署组件

Parcel 文件离线源

CM服务进程

 大数据组件

 

 

 

 

 

001

MySQL

Parcel

Activity Monitor

NN RM DN NM

 

 

 

 

 

002

 

 

Alert Publisher

DN NM

 

 

Event Server

 

 

 

 

 

 

 

 

 

003

 

 

Host Monitor

DN NM

 

 

Service Monitor

 

 

 

 

 

 

 

 

 

3.下载版本:

支持的版本 : requirements supported versions

CM   cm6.3.1-redhat7.tar.gz

Parcel

CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel

CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha1

manifest.json

JDK

https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html

下载jdk-8u181-linux-x64.tar.gz

MySQL https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下载mysql-5.7.26-el7-x86_64.tar.gz

MySQL jdbc jar

mysql-connector-java-5.1.47.jar

下载完成后要重命名去掉版本号:

mv mysql-connector-java-5.1.47.jar mysql-connector-java.jar

=======================================================================================

1、节点初始化

查看ip以及ip段、必须同一网段

CDH实操部署--离线_第1张图片

1、每台机器添加域名解析到hosts文件,如下

CDH实操部署--离线_第2张图片

2、关闭所有节点的防火墙、清空防火墙规则、关闭selinux,需重启机器selinux配置才会生效

CDH实操部署--离线_第3张图片

3、同步所有节点的时区及时钟

选择主节点作为ntp服务器,修改其ntp配置文件:/etc/ntp.conf
#time

server 0.asia.pool.ntp.org

server 1.asia.pool.ntp.org

server 2.asia.pool.ntp.org

server 3.asia.pool.ntp.org

#当外部时间不可用时,可使用本地硬件时间

server 127.127.1.0 iburst local clock

#允许哪些 网段的机器 来同步时间

restrict 172.26.138.0 mask 255.255.252.0 nomodify notrap

CDH实操部署--离线_第4张图片

start ntp服务

CDH实操部署--离线_第5张图片

验证一下:

所有从节点停⽌并禁用ntpd服务

CDH实操部署--离线_第6张图片

在所有从节点同步主节点时间

在从节点设置定时同步(分时日月周)

 crontab -e 

00 01 * * * /usr/sbin/ntpdate huxiaoyan001

4、所有节点部署JDK

CDH实操部署--离线_第7张图片

记得是所有节点

mkdir /usr/java 
tar -xzvf jdk-8u181-linux-x64.gz -C /usr/java/ 
#切记必须修正所属⽤用户及⽤用户组 
chown -R root:root /usr/java/jdk1.8.0_181
##添加到环境变量文件
echo "export JAVA_HOME=/usr/java/jdk1.8.0_181" >> /etc/profile 
echo 'export PATH=${JAVA_HOME}/bin:${PATH}' >> /etc/profile 
source /etc/profile 
which java

检查:

CDH实操部署--离线_第8张图片

2、选择001主节点离线部署mysql5.7

http://note.youdao.com/noteshare?id=74ad62007fcc38766915d1b87081f26c

安装完成、进行登录测试

CDH实操部署--离线_第9张图片

3、在安装了数据库的主机上创建CDH的元数据库和用户、amon服务的数据库及用户,部署

1、创建元数据库

登录数据库:

create database cmf default character set utf8;
create database amon default character set utf8;

grant all privileges on  cmf.* to 'cmf'@'%' identified by 'huxiaoyan'; 
grant all privileges on amon.* to 'amon'@'%' identified by 'huxiaoyan';
##创建amon数据库 允许来自所有主机的root用户使用huxiaoyan这个密码登录
flush privileges;    ##刷新权限

CDH实操部署--离线_第10张图片

2、选择第一台部署 amon的进程 那么此机器需要安装mysql、jdbc、jar包

注意一定要把版本号去掉

 mkdir -p /usr/share/java 
 cp -prf mysql-connector-java-5.1.47.jar /usr/share/java/mysql-connector-java.jar
 

=====准备结束 开始CDH离线部署=====

4、部署CM server+agent  官方rpm包安装

有如下包:

server服务器需要安装:

cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm

agent服务器需要安装:

cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm

1、所有节点创建目录及解压

##scp 把cm6.3.1-redhat7.tar.gz 包传到所有节点 也可以使用xsync脚本
mkdir /opt/cloudera-manager 
tar -xzvf cm6.3.1-redhat7.tar.gz -C /opt/cloudera-manager/

2、选择001为cm server,不下载依赖包直接部署

cd /opt/cloudera-manager/cm6.3.1/RPMS/x86_64

rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm --nodeps --force

rpm -ivh  cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm --nodeps --force

如果服务器有网络,可直接yum install ....rpm

--force 即使覆盖属于其它包的文件也强迫安装 

--nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 

卸载命令:
cd  /opt/cloudera-manager/cm6.3.1/RPMS/x86_64/
rpm -qa |grep cloudera
rpm -e cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
rpm -e cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm

CDH实操部署--离线_第11张图片

修改 /etc/cloudera-scm-server/db.properties 文件、核对,注意修改所有的文件不要留有空格

[root@huxiaoyan001 x86_64]# vim /etc/cloudera-scm-server/db.properties
# Copyright (c) 2012 Cloudera, Inc. All rights reserved.
#
# This file describes the database connection.
#

# The database type
# Currently 'mysql', 'postgresql' and 'oracle' are valid databases.
com.cloudera.cmf.db.type=mysql ##mysql

# The database host
# If a non standard port is needed, use 'hostname:port'
com.cloudera.cmf.db.host=huxiaoyan001:3306  ##启用

# The database name
com.cloudera.cmf.db.name=cmf ##启用

# The database user
com.cloudera.cmf.db.user=cmf ##启用

# The database user's password
com.cloudera.cmf.db.password=huxiaoyan ##启用并填写cmf密码

# The db setup type
# After fresh install it is set to INIT
# and will be changed post config.
# If scm-server uses Embedded DB then it is set to EMBEDDED
# If scm-server uses External DB then it is set to EXTERNAL
com.cloudera.cmf.db.setupType=EXTERNAL  ##启用并使用外部

起服务:service cloudera-scm-server start

服务启动日志:/var/log/cloudera-scm-server.log 查看7180端口是否启用 grep

检查是否开放了7180端口,如果开放了 就可以直接使用公网ip:7180打开web界面了,默认初始密码是admin/admin 先不要登录,接着手动安装从节点的agent、不要在web界面安装!

CDH实操部署--离线_第12张图片

3、所有节点(包含001)为cm agent,不下载依赖包直接部署(必须先安装daemons)

cd /opt/cloudera-manager/cm6.3.1/RPMS/x86_64

rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm --nodeps --force

rpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm  --nodeps --force

4、所有节点包括server(001)修改agent的配置,指向server的节点001    

sed -i "s/server_host=localhost/server_host=huxiaoyan001/g" /etc/cloudera-scm-agent/config.ini

CDH实操部署--离线_第13张图片

然后把所有节点的angent起来:

CDH实操部署--离线_第14张图片

可以从主节点server机日志看到

web网页登陆

CDH实操部署--离线_第15张图片

选择继续>同意条约

CDH实操部署--离线_第16张图片

按需求选择、我选择免费版

CDH实操部署--离线_第17张图片

填写集群名称

CDH实操部署--离线_第18张图片

勾选我们已经安装好agent的机器,如果没有安装agent,那我们就需要在页面添加

CDH实操部署--离线_第19张图片

继续

CDH实操部署--离线_第20张图片

然后配置parcel, 不要关掉页面,在server机安装http

5、001节点部署离线parcel源

安装httpd服务  yum install -y httpd
mkdir -p /var/www/html/cdh6_parcel
cp -prf CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel /var/ www/html/cdh6_parcel/
 ###重命名为.sha文件
mv CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha1 / var/www/html/cdh6_parcel/CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha
mv manifest.json  /var/www/html/cdh6_parcel/

必须将sha1重命名为sha,因为安装包里面设置的就是.sha文件 重命名为.sha文件

不然在部署过程CM认为如上⽂文件下载未完整,会持续下载

CDH实操部署--离线_第21张图片

起服务

service httpd start

CDH实操部署--离线_第22张图片

然后打开80端口的网页http://39.100.80.44/cdh6_parcel 正常显示

CDH实操部署--离线_第23张图片

可以继续在cdh页面进行设置:

选择更多选项

CDH实操部署--离线_第24张图片

只保留这个库

CDH实操部署--离线_第25张图片

修改成内网地址   http://huxiaoyan001/cdh6_parcel   --保存

界面自动刷新CDH实操部署--离线_第26张图片

继续,等待

CDH实操部署--离线_第27张图片

如果有问题 看下日志:/var/log

CDH实操部署--离线_第28张图片

完成后查看网页的警告

单击进行检测

CDH实操部署--离线_第29张图片

看下检测结果

CDH实操部署--离线_第30张图片

CDH实操部署--离线_第31张图片

英文版:

CDH实操部署--离线_第32张图片

第一个页面压缩需要在所有机器操作下禁用,第二个警告的话查看下documentation, 根据需求可选择安装Psycopg2,不安装可选择忽略

echo never > /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/enabled    #以禁用此设置,然后将同一命令添加到 /etc/rc.local

设置完之后重新校验 run again

CDH实操部署--离线_第33张图片

选择继续

CDH实操部署--离线_第34张图片

自定义服务

CDH实操部署--离线_第35张图片

角色分配

CDH实操部署--离线_第36张图片

数据库设置

CDH实操部署--离线_第37张图片

如果不成功,就看下设置amon的时候关于密码权限或者包名后缀有没正确

继续

CDH实操部署--离线_第38张图片

CDH实操部署--离线_第39张图片

完成啊哈哈哈哈哈哈啊哈

CDH实操部署--离线_第40张图片

但是!当你点击完成

CDH实操部署--离线_第41张图片

根据警告对应修改

CDH实操部署--离线_第42张图片

时钟偏差,因为我们设置了001为ntp服务器,其他的机器设置了禁用,所以才会报错,

CDH实操部署--离线_第43张图片

进行忽略警告,选择主机里的所有主机--单击机器名称进行

CDH实操部署--离线_第44张图片

CDH实操部署--离线_第45张图片

找到时钟偏差进行禁用

CDH实操部署--离线_第46张图片

总结&故障

1.总结

5.16.1  tar包 + local file

6.3.1   rpm包 + http file  最优

2.故障及排查

2.1 centos6.x 使用 python2.6

    centos7.x 使用 python2.7  which python 查询

2.2 centos7.x 的parcel文件必须是 el7

2.3 java 默认路径

2.4 jdbc jar 默认路径

2.5 mysql flush privileges;

2.6 hosts文件 不要配置外网ip

2.7 parcel构建HTTP 而不是https

2.8 parcel无法激活  就参考 若泽大数据 公众号 最近的一篇文章 深度很大 

2.9 配置账户/密码等文件时注意不要多加空格

2.10 daemons先部署,再安装server/agent

你可能感兴趣的:(大数据)