CDH报错cloudera-scm-server dead but pid file exists

CDH CM界面出现了无法访问的情现象,查看cloudera-scm-server状态

# service cloudera-scm-server status
cloudera-scm-server dead but pid file exists


提示cloudera-scm-server dead
# service cloudera-scm-server stop
# service cloudera-scm-server status
cloudera-scm-server is stopped

删除cloudera-scm-server.pid
# rm /var/run/cloudera-scm-server.pid


service cloudera-scm-server-db start
不能正常启动cloudera-scm-server-db
waiting for server to start ...............cloud not start server
# service cloudera-scm-server-db status
pg_ctl: no server running

cloudera-scm-server-db没有运行的情况下,如果存在postmaster.pid就删除了
#cd /var/lib/cloudera-scm-server-db/data
# rm postmaster.pid

查看db.log
cat /var/log/cloudera-scm-server/db.log
报错:could not write to log file:No space left on device
cloud not create shared memory segment:Invalid argument。


#cat /var/lib/cloudera-scm-server-db/data/postgresql.conf|grep shared_buffers
shared_buffers=308493

#cat /etc/sysctl.conf|grep kernel.shmmax
kernel.shmmax = 68719476736
kernel.shmmax = 4294967296

注释

vi /etc/sysctl.conf

kernel.shmmax = 4294967296

保留大的设置。


重新启动
service cloudera-scm-server-db start
service cloudera-scm-server-db status
postgresql启动正常了。


# service cloudera-scm-server-db start
DB initialization done.
waiting for server to start.... done
server started

# service cloudera-scm-server start
Starting cloudera-scm-server:                              [  OK  ]

问题解决了,CM可以正常访问了,问题应该是postgresql使用的共享内存超过了系统设置的kernel.shmmax,需要改大些。

这段日志是在执行一个命令时产生的错误信息。让我逐步解释一下: 1. 第一行是设置了JAVA_HOME环境变量的路径为"/opt/module/jdk1.8.0_212"。这是指定了Java安装的目录。 2. "Verifying that we can write to /etc/cloudera-scm-server" 表示正在验证是否有权限写入 /etc/cloudera-scm-server 目录。 3. "Creating SCM configuration file in /etc/cloudera-scm-server" 表示正在创建配置文件,在 /etc/cloudera-scm-server 目录下。 4. "Executing: /opt/module/jdk1.8.0_212/bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/usr/share/java/postgresql-connector-java.jar:/opt/cloudera/cm/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db." 这是执行的具体命令,使用了Java来运行 com.cloudera.enterprise.dbutil.DbCommandExecutor 类,并传递了一些参数。 5. "[ main] DbCommandExecutor INFO Unable to find JDBC driver for database type: MySQL" 表示无法找到 MySQL 数据库的 JDBC 驱动程序。 6. "[ main] DbCommandExecutor ERROR JDBC Driver com.mysql.jdbc.Driver not found." 表示找不到 com.mysql.jdbc.Driver 这个 JDBC 驱动程序。 7. "[ main] DbCommandExecutor ERROR Exiting with exit code 3" 表示程序以错误代码 3 退出。 8. "--> Error 3, giving up (use --force if you wish to ignore the error)" 表示错误代码为 3,如果想要忽略该错误,可以使用 --force 参数。 根据日志信息来看,主要的问题是找不到 MySQL 的 JDBC 驱动程序。你可能需要确保已经正确安装了 MySQL JDBC 驱动,并且在命令中指定正确的驱动程序路径。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值