CDH01
CDH三种部署方式
bin 在线 需要网络带宽
rpm 离线部署 相应下载依赖的rpm包 不是真正的离线部署,需要访问外网,因为下载rpm包的时候需要外网或者公司Maven私服,可以跟公司的it人员说好先把外网打开,搞定了再把外网封了
tar包 真正的离线部署 不能访问外放,it人员也不同意服务器把外网放开
CDH真正离线部署
- MySQL离线部署 元数据
- CM离线部署 tar 闭源 主从架构 server agent
- Parcel文件离线源部署 hdfs yarn hive hbase zk这些压缩包裹文件
生产上尽量不适用cdh6.x系列的,有坑并且有节点的限制
生产上不用open jdk,都用oracle jdk
针对于内部服务器,建议防火墙关闭之后再部署,等部署好之后,也不用打开
如果是阿里云云主机的话,时区和时钟同步可以不做
非云主机是需要做的
如果有上百台机器,那么在第一台机器把所有该装的都装好,然后可以以第一台机器来制作镜像模板进行分发
MySQL的部署
rpm包部署的话就无法定制化
生产上需要调整innodb_buffer_pool_size这个参数,J总他们会调到12g
如果能访问外网,建议rpm包部署
如果有些配置文件没有这个配置,com.cloudera.cmf.db.setupType,那么可以不用管,否则统一配成external
datanode节点部署大磁盘,多个磁盘以逗号分隔
02
DN和NM same as datanode 数据本地化
正常启动和停止顺序
- service mysql start
- scm-server start hadoop001
- scm-agent start hadoop001-hadoop003
- web界面的cms服务
- web界面的大数据集群服务
停止顺序相反
cdh看到canary,看到直接suppress
server挂掉了对下游的Hadoop等集群没有影响,当然官方也有HA,但是没有必要
CDH配置必须通过web界面去修改
集群有多少机器就部署多少个agent
进程所属的配置,修改必须通过web界面
/opt/cloudera-manager/cm-5.16.1/run/cloudera-scm-agent/process/49-hdfs-DATANODE
配置可以在MySQL上面改,但是慎用
什么场景下在MySQL上修改配置信息?
CDH集群环境 IP必须发生变化
- agent 对server配置文件 hadoop001
- server连接MySQL的配置文件 hadoop001
- 修改hosts文件为最新
- MySQL中hosts表修改
客户端配置 假如节点没有这个目录/etc/hadoop/conf/,直接添加gateway,任何进程修改配置重启生效,其中一步就是要勾选 同时生效客户端
这个客户端就叫gateway,它的作用是把这个进程的配置文件发送到选中的节点,旧的会覆盖
spark提交作业到YARN需要HDFS的conf的目录
如果client是独立的非集群的节点,需要部署gateway
client正好是集群HDFS的节点,无需部署
不仅仅要看角色日志,stdout和stderr也要看
日志查看
server
agent
cat cloudera-scm-server.log|grep -c 10 ERROR
通过web界面去找 配置日志目录 --> 直接修改新目录地址
mv 移动到新的大磁盘目录,ln -s 指向以前的 校验权限
不建议使用kerberos,因为生产环境要不就是阿里云环境,阿里云本身有自己的防火墙策略,要不就是idc,idc机房本身是内网的
对性能有影响
我们在内部局域网,不跟外网连通,我们进去需要通过跳板机,也有一层自己的防火墙硬件配置,没有必要把Linux的防火墙启动起来,如果领导强行去开,我们可以先把端口号整理出来然后交给IT运维的小伙伴
生产上面一般是root部署,或者是sudo权限无密码的用户
生产上建议一套cm一套集群,独立开来
生产上 j总swap也是放出来的,空间最大不要超过16个g
如果要把一个节点下架,remove from cluster的时候hang住了,可以先把这个节点里面的进程一个一个手动删掉,然后停止agent进程,抛错了也没关系,再点击remove from cloudera manager刷新页面就好了
如果机器被挖矿了,但是就几台受到影响,但是没有留下勒索信息,所以决定要把这个集群下架,下架完之后把磁盘格式化,然后再按照我们的部署流程走,添加包啥的,package是需要激活的
模板一般不要用,有风险
部署HBase的时候。主节点放在hadoop002,rs部署在三个节点上,因为hbase是架在HDFS之上,dn有几个就部署几个rm
其他都不动
然后enable replication indexing也不需要勾
abort少做
在某个节点的某个进程先stop再移除
服务 service role instance是同一个东西
进程跟文件数是Linux调优