CentOS7安装CDH 第六章:CDH的管理-CDH5.12
相关文章链接
CentOS7安装CDH 第二章:CentOS7各个软件安装和启动
CentOS7安装CDH 第四章:CDH的版本选择和安装方式
CentOS7安装CDH 第五章:CDH的安装和部署-CDH5.7.0
CentOS7安装CDH 第六章:CDH的管理-CDH5.12
CentOS7安装CDH 第七章:CDH集群Hadoop的HA配置
CentOS7安装CDH 第八章:CDH中对服务和机器的添加与删除操作
1. CDH体系架构剖析
1.1. 2个注意
- 所有的配置修改,都是从 7180 端口的 web 界面修改。当在web界面修改配置信息后会提示需要集群重启,此时选择重启,并选中其中的“重新部署客户端配置”。
- kill -9 cm 进程/hdfs 进程,supervisord 会启动被 kill 掉的进程。
- 修改配置信息步骤:Web 界面修改------>数据库表 configs 表------->/etc/hadoop/*------->/var/run/cloudera-scm-agent/process/*
- web 界面修改参数,保存,到 configs 表
- 重新部署客户端,到/etc/hadoop/的某个目录下,然后通过 alternatives 命令动态更新到 conf文件夹;且会在/var/run/cloudera-scm-agent/process/目录下生成 deploy 文件夹
- 重启集群或者重启单个服务,会在/var/run/cloudera-scm-agent/process/目录下生成各个组件的运行的配置文件夹(是有序号标识的)
1.2. 架构剖析
- CM 分为 Server 与 Agent 两部分及数据库(MySQL)。它主要做三件事件:
- 管理监控集群主机,包含自己。
- 统一管理配置,提供 web 端。
- 管理维护 Hadoop 平台系统。
- 实现采用 C/S 架构,Agent 为客户端,负责执行服务端发来的命令,执行方式一般为使用 python调用相应的服务 shell 脚本。Server 端为 Java REST 服务,提供 REST API,Web 管理端通过 REST API调用 Server 端功能,Web 界面使用富客户端技术(Knockout)。
- Server 端主体使用 Java 实现。
- Agent 端主体使用 Python, 服务的启动通过调用相应的 shell 脚本进行启动,如果启动失败会重复 4 次调用启动脚本。
- Agent 与 Server 保持心跳,使用 Thrift RPC 框架。
2. CM中的常用命令
service cloudera-scm-server start|stop|restart|status
service cloudera-scm-agent start|stop|restart|status
查看进程:jps / jps -l /jps –m
注意:
当使用jps命令时,出现如下情景:
1101 -- process information unavailable
但ps -ef|grep 1101 找不到该进程,那么就是残留文件,
此时cd /tmp/hsperfdata_hdfs/等类似文件夹中,找到 1101文件,删除即可。
3. CDH集群正确启动和停止顺序
3.1. 启动
1.su – mysqladmin service mysql start
2.service cloudera-scm-server start
3.service cloudera-scm-agent start (每台)
4.web: cms
5.web: cluster1
3.2. 停止
1.web: cluster1
2.web: cms
3.service cloudera-scm-agent stop (每台)
4.service cloudera-scm-server stop
5.su – mysqladmin service mysql stop
3.3. 注意点
cms 和 cluster1 无论哪个关闭、启动等等操作,会造成web界面的图表的 不绘制情景,此时可以采取如下操作:
1.cms 和 cluster1 都要启动 ,稍微等待 ,正在恢复中(30s)
2.先cluster1关闭,再重启cms服务
4. CDH配置QQ预警邮箱
4.1. 开启QQ邮箱的SMTP
这里使用了QQ邮箱的SMTP,需要获取QQ邮箱的授权码:
4.2. 安装并开启和关闭centos7对应的邮箱服务
# 卸载原有邮箱服务,并安装新的邮箱服务
yum remove postfix
yum install postfix # 关闭机器的sendmail服务
systemctl stop sendmail.service
systemctl disable sendmail # 开启postfix服务
systemctl start postfix.service
systemctl enable postfix
4.3. 创建证书文件
mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGINCERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -L -d /root/.certs
cd /root/.certs
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt
4.4. 在/etc/mail.rc文件末尾添加以下授权码
set from=1043797615@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=1043797615
#授权码
set smtp-auth-password=cgnrvyvbbsufbcbd
set smtp-auth=login
set smtp-use-starttls
set ssl-verify=ignore
set nss-config-dir=/root/.certs
4.5. 命令行验证邮箱服务
echo hello word | mail -s " title" 1028344078@qq.com
# 此时1028344078@qq.com 会收到一封邮件
4.6. CDH配置邮件测试
#查看 Alert 服务的 log
tail -F /var/log/cloudera-scm-alertpublisher/mgmt-cmf-mgmt-ALERTPUBLISHER-hadoop35.log.out # 实时查看Linux中的邮件日志
tail -f /var/log/maillog
选择警报,再选择编辑收件人:
点击发送测试警报,对应的邮箱会收到测试邮件。
4.7. 预警邮件中的坑
在Alert Publisher服务中,默认的邮件发件人地址如下,当邮件发送过多时,邮件的服务商会默认设置此地址为骚扰邮件,之后就不能接收到警告邮件了,此时可以在邮件网页中,点击回复,给此地址回复一封邮件,建立信任关系,就可以继续收到此地址发送的邮件了。
5. CDH集群不能运行时的一些问题汇总
在CDH中有如下服务:
db(mysql)
server (cmf)
agent 本次被删除了
cms(5个进程,amon )
HDFS/yarn/zk/hive 元数据
5.1. 数据库服务没有启动
CDH集群中,CM的server需要引用数据库中的cmf库,cms(Cloudera Management Service)需要引用数据库中的amon库,所以当数据库不能使用时,CDH集群启动不了,CDH中的数据库配置在/etc/cloudera-scm-server/db.properties路径中。(在cms中,一共有5个子服务)
5.2. 一个节点中agent完全崩溃
1.此时先检查节点中agent的状态,将agent的遗留文件删除。
2.进入/var/www/html/cm5/redhat/7/x86_64/cm/5.12.0/RPMS/x86_64文件夹中,安装agent服务,安装命令:yum install cloudera-manager-agent-5.12.0-1.cm5120.p0.120.el7.x86_64.rpm。
3.进入/etc/cloudera-scm-agent文件夹中,配置config.ini配置文件。
4.修改其中的server_host为cm的server安装机器的IP地址(可以查看其他能运行的节点的该配置文件的IP地址)。
5.使用service cloudera-scm-agent start命令启动该节点的agent,再去web界面重启CMS。
上述问题说明CMS也是通过agent来启动和管理的。
5.3. 地址已被使用问题
当CDH的启动异常,并报如下错误时有几种解决方法:
Caused by: java.net.BindException: Address already in use
1、此时为地址被占用,使用ps/netstat查看该进程号,并kill掉该进程即可。
例:
ps -ef | grep alert #查看alert的进程号
netstat -nlp |grep 12704 #查看该进程的端口号
kill -9 12704 #kill掉该进程,然后再查看端口号即可
2、可以在web界面将有问题的服务删除,在添加该实例:
3、可以将cloudera-scm-agent服务停止,在kill父进程super(ps –ef|grep super),然后再启动cloudera-scm-agent服务,再去web界面重启。
4、实在不行重启服务器
6. CDH中的日志介绍
stdout/stderr/role log
查看顺序:role log -> stderr -> stdout
CentOS7安装CDH 第六章:CDH的管理-CDH5.12的更多相关文章
- 第六章 Qt布局管理器Layout
第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置.当用户改变窗口的大小,组件还静静地呆在原来的 ...
- CDH集群安装配置(六)CDH agent
在线安装 sudo yum install cloudera-manager-agent cloudera-manager-daemons 离线安装 上传三个server的资源包到cdh1节点上(所有 ...
- Linux 笔记 - 第六章 Linux 磁盘管理
博客地址:http://www.moonxy.com 一.前言 1.1 硬盘 硬盘一般分为 IDE 硬盘.SCSI 硬盘和 SATA 硬盘.在 Linux 中,IDE 接口的设备被称为 hd,SCSI ...
- 【ELK】Centos7 安装 ELK 7.6.2 和 UI 管理界面以及测试例子
1. 初始化环境 1.0 初始化环境官网参考 https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config ...
- PMP 第六章 项目时间管理
定义活动 排列活动顺序 估算活动资源 估算活动持续时间 制定进度计划 控制进度计划 1.进度管理计划和进度计划的内容分别是什么,有什么区别? 进度计划:项目各活动计划完成日期的编排. 进度管理计 ...
- Oracle11g温习-第十六章:用户管理
2013年4月27日 星期六 10:50 1.概念 (1)schema : user.object 就是用户创建的对象 (2)用户认证方式: ...
- 第六章· MySQL索引管理及执行计划
一.索引介绍 1.什么是索引 1)索引就好比一本书的目录,它能让你更快的找到自己想要的内容. 2)让获取的数据更有目的性,从而提高数据库检索数据的性能. 2.索引类型介绍 1)BTREE:B+树索引 ...
- CentOS7安装CDH 第十四章:CDH的优化
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
- CentOS7安装CDH 第十三章:CDH资源池配置
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
随机推荐
- destoon 6.0 手机站支持在所有浏览器访问
我们的在本地调试destoon 6.0的手机站模板时,用浏览器的自带审查元素很不方便. 可是destoon 默认是在电脑端打不开手机站,如果这个设置能够去除掉,那就可以了. 去掉这个限制,指需要两步 ...
- API网关从入门到放弃
前言 假设你正在开发一个电商网站,那么这里会涉及到很多后端的微服务,比如会员.商品.推荐服务等等. 那么这里就会遇到一个问题,APP/Browser怎么去访问这些后端的服务? 如果业务比较简单的话,可 ...
- win7/Ubuntu双系统给Ubuntu扩大硬盘
问题 电脑上装了windows 7和ubuntu双系统,起初分配硬盘的时候,给ubuntu划分的量较少,如今硬盘空间已不够用,另外挂载分区也不够方便.希望能在不重装系统的情况下,从win7的硬盘中分一 ...
- 2、1 昨天讲列表缓存,为了让列表更新,我们需要在增、删、改方法之前加 @CacheEvict(value="list",allEntries = true)
package com.bw.service; import java.util.List; import javax.annotation.Resource; import org.springfr ...
- 25.Spark下载源码和安装和使用
安装scala 上传安装包 解压 配置scala相关的环境变量 export SCALA_HOME=/opt/modules/scala-2.11.4 export PATH=$PATH:$SCALA ...
- sqlite 版本更新维护, 表结构判断, 更新
sqlite会自动维护一个系统表sqlite_master,该表存储了我们所创建的各个table, view, trigger等等信息. sqlite_master表数据字段: type: 类型,取值 ...
- 路由器设置 WDS 桥接
步骤: 1.先更改路由器LAN口地址,然后重启路由器 2.连接SSID信道名称,先关闭DHCP服务,然后进入无线设置,基本设置,更改SSID号,开启WDS桥接,保存 3.连接新的SSID名称,无线设置 ...
- python学习-47 random模块
random模块 随机模块 random 的方法: print(random.random()) # [0,1] 的浮点数 print(random.randint(1,3)) print(rando ...
- electron窗口相关操作(放大缩小退出,可拖动,可resize等)
如下是对窗口最大化,最小化等相关操作: import { ipcMain, ipcRenderer, remote } from 'electron' import is from 'electron ...
- QMetaEnum获取枚举元信息
QMetaEnum 类提供了一个枚举的元数据.我们可以使用该类的静态模板函数,fromType<enumerator>来获得关于某个枚举的QMetaEnum对象,然后就可以调用该类的成员函 ...