解析Cloudera Manager内部结构、功能包括配置文件、目录位置等

时间:2022-07-26 17:18:21
<iframe id="cproIframe_u1728839_3" width="120" height="250" src="http://pos.baidu.com/acom?adn=4&amp;adp=1&amp;at=0&amp;aurl=&amp;c01=1&amp;cad=1&amp;ccd=24&amp;cec=GBK&amp;cfv=13&amp;ch=0&amp;col=zh-CN&amp;conBW=1&amp;conOP=0&amp;cpa=1&amp;dai=3&amp;dis=0&amp;layout_filter=rank%2Cimage&amp;ltr=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3Dn26bNlj8AUuQBNTVssZr73tD6uT0olS_d2mvhIi1Lm9PDr5iBmUDzYlA86CZufOKMo1xgATUuLv1-NiVHsNLCq%26wd%3D%26eqid%3Dae2ce9180001204a000000035599e563&amp;ltu=http%3A%2F%2Fwww.aboutyun.com%2Fthread-9189-1-1.html&amp;lunum=6&amp;n=92051019_cpr&amp;pat=6&amp;pcs=1423x775&amp;pih=0&amp;pis=10000x10000&amp;piw=0&amp;ps=605x1170&amp;psr=1440x900&amp;pss=1423x902&amp;ptbg=90&amp;ptp=0&amp;ptt=0&amp;qn=4300b9f2172f06eb&amp;rad=&amp;rsi0=120&amp;rsi1=250&amp;rsi5=4&amp;rss0=%23FFFFFF&amp;rss1=%23FFFFFF&amp;rss2=%23000000&amp;rss3=%23444444&amp;rss4=%23008000&amp;rss5=&amp;rss6=%23e10900&amp;rss7=&amp;scale=&amp;skin=tabcloud_skin_3&amp;stid=5&amp;td_id=1728839&amp;titFF=%25E5%25BE%25AE%25E8%25BD%25AF%25E9%259B%2585%25E9%25BB%2591&amp;titFS=14&amp;titSU=0&amp;tn=baiduCustNativeAD&amp;tpr=1436149098100&amp;ts=1&amp;version=2.0&amp;xuanting=0&amp;dtm=BAIDU_DUP2_SETJSONADSLOT&amp;dc=2&amp;di=u1728839&amp;ti=%E8%A7%A3%E6%9E%90Cloudera%20Manager%E5%86%85%E9%83%A8%E7%BB%93%E6%9E%84%E3%80%81%E5%8A%9F%E8%83%BD%E5%8C%85%E6%8B%AC%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E3%80%81%E7%9B%AE%E5%BD%95%E4%BD%8D%E7%BD%AE%E7%AD%89-Cloudera%20CDH-about%E4%BA%91%E5%BC%80%E5%8F%91&amp;tt=1436149098064.197.557.558" align="center,center" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="word-wrap: break-word;"></iframe>

转:http://www.aboutyun.com/thread-9189-1-1.html



















本帖最后由 nettman 于 2014-9-17 00:10 编辑


问题导读
1.CM的安装目录在什么位置?


2.hadoop配置文件在什么位置?


3.Cloudera manager运行所需要的信息存在什么位置?

4.CM结构和功能是什么?

解析Cloudera Manager内部结构、功能包括配置文件、目录位置等


1. 相关目录
  • /var/log/cloudera-scm-installer : 安装日志目录。
  • /var/log/* : 相关日志文件(相关服务的及CM的)。
  • /usr/share/cmf/ : 程序安装目录。
  • /usr/lib64/cmf/ : Agent程序代码。
  • /var/lib/cloudera-scm-server-db/data : 内嵌数据库目录。
  • /usr/bin/postgres : 内嵌数据库程序。
  • /etc/cloudera-scm-agent/ : agent的配置目录。
  • /etc/cloudera-scm-server/ : server的配置目录。
  • /opt/cloudera/parcels/ : Hadoop相关服务安装目录。
  • /opt/cloudera/parcel-repo/ : 下载的服务软件包数据,数据格式为parcels。
  • /opt/cloudera/parcel-cache/ : 下载的服务软件包缓存数据。
  • /etc/hadoop/* : 客户端配置文件目录。

2. 配置
  • Hadoop配置文件
    配置文件放置于/var/run/cloudera-scm-agent/process/目录下。如:/var/run/cloudera-scm-agent/process/193-hdfs-NAMENODE/core-site.xml。这些配置文件是通过Cloudera Manager启动相应服务(如HDFS)时生成的,内容从数据库中获得(即通过界面配置的参数)。
    在CM界面上更改配置是不会立即反映到配置文件中,这些信息会存储于数据库中,等下次重启服务时才会生成配置文件。且每次启动时都会产生新的配置文件。
    CM Server主要数据库为scm基中放置配置的数据表为configs。里面包含了服务的配置信息,每一次配置的更改会把当前页面的所有配置内容添加到数据库中,以此保存配置修改历史。
    scm数据库被配置成只能从localhost访问,如果需要从外部连接此数据库,修改vim /var/lib/cloudera-scm-server-db/data/pg_hba.conf文件,之后重启数据库。运行数据库的用户为cloudera-scm。


  • 查看配置内容

    • 直接查询scm数据库的configs数据表的内容。
    • 访问REST API: http://hostname:7180/api/v4/cm/deployment,返回JSON格式部署配置信息。


  • 配置生成方式
    CM为每个服务进程生成独立的配置目录(文件)。所有配置统一在服务端查询数据库生成(因为scm数据库只能在localhost下访问)生成配置文件,再由agent通过网络下载包含配置文件的zip包到本地解压到指定的目录。


  • 配置修改
    CM对于需要修改的配置预先定义,对于没有预先定义的配置,则通过在高级配置项中使用xml配置片段的方式进行配置。而对于/etc/hadoop/下的配置文件是客户端的配置,可以在CM通过部署客户端生成客户端配置。

3. 数据库
Cloudera manager主要的数据库为scm,存储Cloudera manager运行所需要的信息:配置,主机,用户等。

4. CM结构
CM分为Server与Agent两部分及数据库(自带更改过的嵌入Postgresql)。它主要做三件事件:
  • 管理监控集群主机。
  • 统一管理配置。
  • 管理维护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框架。


5. 升级
在CM中可以通过界面向导升级相关服务。升级过程为三步:
  • 下载服务软件包。
  • 把所下载的服务软件包分发到集群中受管的机器上。
  • 安装服务软件包,使用软链接的方式把服务程序目录链接到新安装的软件包目录上。


6. 卸载
sudo /usr/share/cmf/uninstall-scm-express.sh, 然后删除/var/lib/cloudera-scm-server-db/目录,不然下次安装可能不成功。


7. 开启postgresql远程访问
CM内嵌数据库被配置成只能从localhost访问,如果需要从外部查看数据,数据修改vim /var/lib/cloudera-scm-server-db/data/pg_hba.conf文件,之后重启数据库。运行数据库的用户为cloudera-scm。