Maintenance Experiment CDH

来源:互联网 发布:apt get install java 编辑:程序博客网 时间:2024/06/11 16:40

青云上的QQ邮箱:
防火墙开着1000到65535,下行规则和上行规则
Timeout错误总是拒绝的,防火墙的问题的
发邮箱的端口是25号端口的
history | grep mail
!332进程号
echo aaa | mail -s “test” 785246661@qq.com
删除掉自带的邮箱服务:
yum remove postfix
yum install postfix重新安装的
一个QQ号授权的密码发送过来的
/etc/mail.rc中的文件中每行记录是没有空格的
tail -f /var/log/maillog
service postfix restart
echo aaa
cloudera management service—>alert publisher—>只需改动:Alerts:Mail Message Recipients

CDH中不小心删除掉一个服务的时候,启动不了则:
cloudera management service启动不了
db
server cmf
agent
cms 5个进程 amon进程元数据
HDFS/YARN/zk/hive
数据库db挂掉了,对HDFS/YARN/zk是没有影响的但是对hive有影响的,hive的元数据在mysql中的,

若server挂掉,对HDFS/YARN/zk/Spark是不受影响的,它们是一种耦合的关系的

本次由于删除了agent的服务的,cloudera management service是启动不了的,service did not start successfully not all of the required roles started,only 0/5 roles started Reasons:服务只有0 service monitor个角色运行,而不是所需的最少1个

检查一下:
service cloudera-scm-agent status
rpm -qa | grep cloudera-scm-agent
rpm -qa | grep cloudera
cloudera-scm-agent删掉了之后并不影响HDFS的服务
ps -ef | grep hdfs进程是存在的
不存在cloudera-scm-agent的,安装cloudera-scm-agent的rpm包
cd /var/www/html/cm5/redhat/6/x86_64/cm/5/RPMS/x86_64
yum install ./cloudera-manager-agent-5.10.0-1.cm.xxxx.rpm
安装完毕之后,改动一些配置信息
cd /etc/cloudera-scm-agent/下修改config.ini的文件的
agent端安装完成必须要配置一个连接指向server端的,不知道修改的值是多少的时候可以参考其他的机器上的配置信息的
server_host=cm机器的内网IP地址的,保存成功即可启动agent端的服务
service cloudera-scm-agent start
service cloudera-scm-agent status
cloudera management service进行restart的

证明Cloudera Management Service也是通过agent端进行管理的
Alert Publisher
Caused by :java.net.BindException:Address already in use;
1.ps进程的额,netstat端口的检查,进行kill掉的
2.诡异的情况是进行重启机器的
由于服务是alertpublicsher
ps -ef | grep alert发现存在就restart服务或者kill掉
netstat -nlp | grep 进程号
还是启动报错的额,三种日志类型:
stdout:Linux命令的console输出结果
stderr:
Role log:进程日志
Cloudera management Service中的五个进程服务是可以进行删除的然后在进行建立的,在重新建立之前一定要清除掉目录路径中的信息文件
Add Role Instances进行的操作的

将日志信息down到本地桌面上进行分析

神奇的一件事情是当ps -ef | grep alert时候,进行kill -9后,再次进行ps -ef | grep alert的时候,服务会再次的重启动的。
service cloudera-scm-agent stop停掉服务的
ps -ef | grep supervisord同时要干掉父进程的,否则父进程会再次的重启agent服务的
ps -ef | grep alert后kill掉
再次的重启service cloudera-scm-agent start服务的,
ps -ef | grep alert看看有无alert的服务
顽固的特性由于父进程导致的supervisord的原因的
切记一点的是supervisord父进程是由agent启动时候生成的,不必进行单独的启动的,由于supervisord父进程的顽固,在agent端中kill掉某个服务进程时候,则supervisord父进程会再次的把该服务给重启的

遇到问题,异常的情况,不用怕,淡定一定要分析日志报错的原因的

agent端中的supervisord父进程太顽固了,一直会重启kill掉的服务的,导致强调内容服务就会再次重启的,端口占用的异常!!!kill掉多少次,则supervisord会重启多少次的 ps -ef | grep super进程,但是在super之前一定要关闭掉agent端才可以进行操作的

安装服务不上去的情况,一是删掉重新安装,选择其他的机器进行安装的

JAVA Heap Size of Broker
broker max heap size=50m默认的配置参数大小太小了

CDH中的邮件警告:
Cloudera Management Service—》Alert Publisher—》Alerts:Mail Message Recipients

演示ZK服务挂掉的时候:邮件发送不成功的时候,一定要去查看日志信息的,查看Alert服务的log信息
tail -F /var/log/cloudera-scm-alertpublisher/mgmt-cmf-mgmt-ALERTPUBLISHER-hadoop35.log.out
实时查看Linux日志:
tail -f /var/log/maillog
根据日志信息进行判断来Google定位问题的所在原因,检查收件箱收到来自CDH的测试邮件,回复一下邮件进行建立信用关系的

SNN的checkpoint是一小时检查一次的额,需要进行配置HA的机制
Enable High Availability for HDFS:
JournalNode Hosts:3台 you must have a minimum of three
NameNode Hosts:2台
对应的机器上的磁盘目录比较大的路径

HDFS的HA的架构设计:hdfs ha
Standby NN是热备份的
SecondaryNameNode是一小时进行备份的,属于冷备份的
Client端上传压缩文件到HDFS中的存储目录中,提交到Active NN上,操作的记录会记录在Journal Node上的,Standby NN会实时的读取Journal Node中的操作记录日志信息的,重演一份的,用户并不用关心谁是Active NN谁是Standby NN的节点的,NameSpace命名空间nameservice1会自动去寻找谁是Active NN谁是Standby NN的节点的,JournalNode的机器最少是3台的,

刚开始的时候是单节点是有数据的,就在配置HA的时候,有数据就不会格式化的,但是会抛出ERROR的错误异常信息:格式化NameNode失败
the name directories are not empty,this is expected to fail

演示HA的作用:
hdfs dfs -ls / /表示的是hdfs:nameservice1:8020/ 或者用本地的IP地址号
Operation category READ is not supported in state standby visit https://s.apache.org/sbnn-error

hdfs haadmin中涉及到的serviceId号,可以去配置hdfs中的配置文件中进行查找的
hdfs haadmin -failover通过shell可以将hdfs强制起来,并不依赖于CDH的调度的额,因为CDH中的调度粒度是非常大的,每5分钟调度一次并结合发送邮件。
hdfs haadmin -transitionToActive
hdfs hadmin -transitionToStandby
hdfs haadmin -checkHealth
可以通过自己写的shell脚本来搭建的监控系统来检测hdfs中的状态信息

hdfs fsck检测文件有无损坏,
hdfs fsck /权限是hdfs用户操作
Corrupt blocks损坏块的数量
打印出丢失的块属于哪一个的
hdfs fsck -list-corruptfileblocks检查出损坏块所属于的目录路径
hdfs fsck -delete /xxxx/xxxx/xxxx/损坏文件的路径
hdfs不会自动检查去删除掉那些损坏文件的路径的额, 用hdfs fsck /会打印出损坏文件的路径的,

损坏的块删除之后,块所属于的文件就会删掉的,修复不了的额,丢失了。

blocks块丢失的情况,hdfs是可以自动修复的

hdfs进程服务是由hdfs用户来进行管理的
yarn进程服务是由yarn用户来进行管理的
zookeeper进程服务是由zookeeper用户来进行管理
ps -ef | grep namenode
cat /etc/passwd机器上所有的用户名称

跨数据中心的,机架的概念,
NameNode NameService:nameservice1

角色的组:DataNode Group
按照组来修改的话,则组下面的所有机器都会修改的

Yarn的HA配置:
ResourceManager:
Enable High Availability for Yarn
Yarn的HA架构图:
Yarn的HA是基于Zookeeper实现的
yarn任务调度的,资源的申请管理,不需要记录日志信息的
which yarn
su - yarn
yarn命令查看:
yarn rmadmin -failover
yarn rmadmin -checkHealth
yarn rmadmin -getServiceStatus
web界面去操作的Yarn的

yarn application -list是正在显示运行中的作业的
yarn application -kill
CDH版本的hdfs中的案例的路径:
cd /opt/cloudera/parcels/CDH/lib是家目录
hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.10.0.jar pi 5 10

other CDH Component HA 配置

CDH动态添加机器
添加机器的时候,不需要ssh密钥的,直接使用密码即
可的,
在添加机器之前一定要准备好机器上的环境的,jdk1.8,防火墙,python版本,hosts文件同步,yum源等
可以备份镜像一台生产上的机器,用备份生成一个新的机器的环境

All Hosts—》Add New Hosts to Cluster指定内网ip即可的,外网IP是走流量的
Falied to install cloudera-manager-agent package
couldn’t connect to host http://ip/cm5/redhat/6/x86_64/cm/5
没有开启http服务的。
登陆到cm机器上开启HTTP服务:
service httpd start
CDH页面上安装过程中报错,一定要去查看日志报错内容。
refreshing package metadata不停刷新元数据包
yum makecache生成缓存
去机器上ps -ef | grep yum
查看/usr/bin/python /usr/bin/yum info cloudera-manager-agent
页面上是没有完全的kill掉的
CDH搭建联盟集群
Remote Parcel Repository URLs
添加机器的过程中,最好是选择不要模板的服务的none的安装,然后再去选择具体的服务进行安装。

dfs.datanode.failed.volumes.tolerated
DataNode tolerance for failed volumns is greater or equal to the number of data directories允许失败的目录0

生产过程最好是不要修改配置参数的额,以免重启服务的,正在写的作业由于重启服务时候会丢失东西的

迁移服务时候,先要停止服务先删掉服务然后再添加服务
DataNode可以进行迁移Migrate Roles for HDFS
迁移JournalNode dfsNameNode一起依赖的都会迁移过去
先删除在添加

删除掉没有任何服务的机器节点:
10台机器上只有DN/NM
迁移的时候由于机器节点上只有单一的服务的,所以迁移的过程是非常方便的,不会牵扯到其他服务一起迁移过去的情况的。

迁移=先删除后添加
迁移服务或者添加机器影响集群的。会拉取数据的,占用带宽的,shuffle操作的。一般都是停止作业的情况进行操作的
HDFS中的rebalance
写个shell脚本每天晚上进行调度这个reblance命令的
hdfs balancer进行同步的平衡数据的

先是要停止机器上的所有服务进程的,然后从集群中remove掉的,登陆到机器节点上删除掉数据目录路径中的信息。
Decommission Roles
Skip Management Roles

Waiting for Decommission to finish
等待很长时间的:
Decommission—》delete删除掉—》
诡异的情况是删除掉机器后,刷新一下,机器会重新添加上来的。原因是因为要先进行stop的然后再去删除掉的service cloudera-scm-agent stop
删掉机器后可以执行暴力卸载脚本的
删除掉rpm包是要执行俩次的
默认的路径的
大磁盘的路径

ssh免密码登陆是apache的,CDH中是不需要做的,CDH中只需要账号密码即可的,
jdk的家目录默认是/usr/java
jdbc的家目录默认是/usr/share/java

CDH动态添加服务(hive/spark1,spark2/hbase)

CDH动态删除以及迁移DataNode进程
CDH升级

原创粉丝点击