用centos7的cdh安装包在bclinux8上安装
cdh官方网站给出的操作系统支持情况如下
Operating System Requirements | 6.x | Cloudera Documentation
可见并不支持国产国产化操作系统,甚至连centos8目前也不支持,cdh更早的版本支持的更少
问题:
openssl-devel isneeded by cloudera-manager-agent-6.3.1-1466458.el7.x86_64
需要centos7的openssl版本
解决方案:
???????? 将国产化操作系统的openssl更新成centos7的对应版本
A、 安装前保存原有系统上的?libssl.so.1.1
libcrypto.so.1.1 文件并上传centos7的libcrypto.so.1.1? libssl.so.1.1 文件到国产化操作系统
B、 rpm -Uvh openssl-libs-1.0.2k-19.el7.x86_64.rpm --nodeps –force
C、 将A步骤备份的libcrypto.so.1.1? libssl.so.1.1 文件放回原位置
注意:必须执行A步骤,因为安装完centos7的openssl后会自动卸载国产化操作系统的openssl,此时会导致操作系统的ssh功能受损,需要执行C步骤后才能正常
问题:
CM分发CDH安装包失败
解决方案:
A、安装前修改manifest.json,添加复制一份其他操作系统的配置,将操作系统标识修改为unknown,示例如下:
{
??????????? "components": [
??????????????? {
??????????????????? "name":"kafka",
??????????????????? "pkg_release":"1470567",
??????????????????? "pkg_version":"2.2.1+cdh6.3.1",
??????????????????? "version":"2.2.1-cdh6.3.1"
??????????????? },
??????????????? {
??????????????????? "name":"hadoop",
??????????????????? "pkg_release":"1470567",
??????????????????? "pkg_version":"3.0.0+cdh6.3.1",
??????????????????? "version":"3.0.0-cdh6.3.1"
??????????????? },
??????????????? ……
??????????? ],
??????????? "hash":"9955cf590d67baa4fe7462bf319db695cae35efc",
??????????? "parcelName":"CDH-6.3.1-1.cdh6.3.1.p0.1470567-unknown.parcel",
??????????? "replaces": "IMPALA,SOLR, SPARK, KAFKA, IMPALA_KUDU, KUDU, SPARK2"
??????? },
B、重命名下载好的安装包
CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel
-----修改为------->
CDH-6.3.1-1.cdh6.3.1.p0.1470567-unknown.parcel
原理详解:
manifest.json配置里面定义了不同操作系统对应的cdh安装包名称、校验文件。当cdh安装时,agent先判断当前操作系统是什么操作系统,然后向server发起拉取请求,拉取对应的parcel安装包。cdh不支持国产化操作系统,因此获取操作系统时会获取错误,返回一个unknown,因此需要在manifest.json文件中添加一个操作系统名为unknown的parcel安装包名称配置并重命名下载好的安装包即可。
注意:需要在登录CM界面之前做好AB两步骤,不然会导致cmf数据库初始化完毕,这个时候再需要进行国产化操作系统的适配还需要修改mysql中的cmf库的parcels?表