1. 先关闭CM服务
# /opt/cm-5.11.1/etc/init.d/cloudera-scm-server stop
# /opt/cm-5.11.1/etc/init.d/cloudera-scm-agent stop
2. 删除以前的CDH版本
# rm -rf /opt/cloudera
# rm -rf /opt/cm-5.11.1
3.删除与Cloudera Manager相关的数据文件
rm -Rf /usr/share/cmf /var/lib/cloudera* /var/cache/yum/cloudera* /var/log/cloudera* /var/run/cloudera*
4.输出与CDH安装的软件相关的文件
rm -Rf /var/lib/flume-ng /var/lib/hadoop* /var/lib/hbase /var/lib/impala /var/lib/hive /var/lib/sentry /var/lib/spark* /var/lib/sqoop* /var/lib/hue /var/lib/navigator /var/lib/oozie /var/lib/solr /var/lib/sqoop* /var/lib/zookeeper /var/lib/kafka /var/lib/accumulo
rm -rf /dfs /impala /yarn /hbase
rm -rf /etc/hadoop* /etc/zookeeper* /etc/hive* /etc/hue /etc/impala /etc/sqoop* /etc/oozie /etc/hbase* /etc/hcatalog /etc/spark* /etc/kafka /etc/sentry /etc/accumulo
5.删除链接
还有一个很重要的路径,之前从cdh5.11.1 update 到cdh5.12.1,一直有软链接到旧的5.11.1的目录,找了很久,终于在strace工具帮助下找到了问题所在。
rm -rf /var/lib/alternatives/{cdh.app}
简单的删除/var/lib/alternatives/*
下所有的文件是有风险的,由于系统可能还使用了alternatives做了其他的工具版本控制,所以楼主建议是挑出cdh相关的文件删除。
rm -rf /var/lib/alternatives/avro-tools /var/lib/alternatives/beeline /var/lib/alternatives/bigtop-detect-javahome /var/lib/alternatives/flume* /var/lib/alternatives/hadoop* /var/lib/alternatives/hbase* /var/lib/alternatives/hcat /var/lib/alternatives/hdfs /var/lib/alternatives/hive* /var/lib/alternatives/hue* /var/lib/alternatives/impala* /var/lib/alternatives/mahout* /var/lib/alternatives/mapred /var/lib/alternatives/pyspark* /var/lib/alternatives/sentry* /var/lib/alternatives/solr* /var/lib/alternatives/spark* /var/lib/alternatives/sqoop* /var/lib/alternatives/yarn /var/lib/alternatives/zookeeper* /var/lib/alternatives/oozie /var/lib/alternatives/pig* /var/lib/alternatives/parquet* /var/lib/alternatives/accumulo* /var/lib/alternatives/kafka*
删除无效链接脚本:
rmLinks.sh:
删除/usr/bin下面的无效链接:如hdfs spark等
#!/bin/sh
for a in `find /usr/bin -type l`
do
stat -L $a >/dev/null 2>/dev/null
if [ $? -gt 0 ]
then
rm $a
fi
done
删除/etc/alternatives下面的无效链接:如hdfs spark等
#!/bin/sh
for a in `find /etc/alternatives -type l`
do
stat -L $a >/dev/null 2>/dev/null
if [ $? -gt 0 ]
then
rm $a
fi
done
然后按照 CM 重新安装
文档进行安装即可。