DataStax Help Center

OpsCenter 6.0 process fails to start and no errors are returned

Summary

In OpsCenter 6.0 , the opscenterd process fails to start and no errors are reported to the log file.

Symptoms

When running the process in the foreground the following generic python error is seen:

# /usr/share/opscenter/bin/opscenter -f 
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0 
2016-07-22 17:47:03,844 [opscenterd] INFO: Loading OpsCenter... 
2016-07-22 17:47:03,851 [opscenterd] INFO: Updating system path 
2016-07-22 17:47:03,854 [opscenterd] INFO: Importing twisted logging 
2016-07-22 17:47:06,384 [opscenterd] INFO: Finished importing twisted logging 
2016-07-22 17:47:06,384 [opscenterd] INFO: Opscenterd starting up... 
Traceback (most recent call last): 
File "./bin/twistd", line 63, in <module> 
from twisted.scripts.twistd import run 
File "/usr/share/opscenter/lib/py/twisted/scripts/twistd.py", line 13, in <module> 
from twisted.application import app 
File "/usr/share/opscenter/lib/py/twisted/application/app.py", line 17, in <module> 
from twisted.application import service, reactors 
File "/usr/share/opscenter/lib/py/twisted/application/service.py", line 24, in <module> 
from twisted.internet import defer 
File "/usr/share/opscenter/lib/py/twisted/internet/defer.py", line 29, in <module> 
from twisted.python import lockfile, failure 
File "/usr/share/opscenter/lib/py/twisted/python/lockfile.py", line 23, in <module> 
from os import kill 
ImportError: cannot import name kill 

Cause

 

When the opcenterd process starts up it uses JNA for off heap memory allocation. This in turn uses the /tmp directory for some temporary files. If /tmp has been mounted with noexec then the process fails but does not report the reason.

 
The issue will be addressed by the following internal jira:
 
OPSC-9446 - Provide error message when opscenter/jython cannot execute from the /tmp dir when the drive is mounted with noexec

Workaround

The following may be added into the /usr/share/opscenter/bin/opscenter script:

OPSC_JVM_OPTS="-server -Xmx1024m -Xms1024m -XX:MaxPermSize=128m -Dpython.cachedir.skip=false
                -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled
                -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -verbose:gc -XX:+PrintGCDateStamps
                -XX:+PrintGCDetails -XX:+PrintGCCause -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime
                -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=1M -Xloggc:$OPSC_GC_LOG_PATH/gc.log
                $OPSC_JVM_OPTS"
OPSC_JVM_OPTS="$OPSC_JVM_OPTS -Djava.io.tmpdir=/<placeholder>" <<<= added this here

Note: <placeholder> above to be replace with an alternative directory accessible on the file system

Solution

At the time of writing there is no available fix for OPSC-9446. Please use the workaround as detailed above.
Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

Powered by Zendesk