Support Questions

Find answers, ask questions, and share your expertise

embedded postgresql database fails to start

avatar
Explorer

I am doing cloudera manger installation on Centos 6.5 VM using Installation path B. But want to use embedded postgresql database.

 

I have configured the yum repo in /etc/yum.repos.d with follwoing contents

 

------------------------

# Packages for Cloudera Manager, Version 5, on RedHat or CentOS 6 x86_64
name=Cloudera Manager
baseurl=http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5/
gpgkey = http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera
gpgcheck = 1

----------------------

 

and run following commands as mentioned in documentation:

 

1. sudo yum install cloudera-manager-server-db-2

2. sudo service cloudera-scm-server-db start

 

 

 

but it throws an error :

[root@clouderamaster1 ~]# sudo service cloudera-scm-server-db start
The files belonging to this database system will be owned by user "cloudera-scm".
This user must also own the server process.

The database cluster will be initialized with locale en_US.UTF8.
The default text search configuration will be set to "english".

fixing permissions on existing directory /var/lib/cloudera-scm-server-db/data ... initdb: could not change permissions of directory "/var/lib/cloudera-scm-server-db/data": Permission denied
Could not initialize database server.
  This usually means that your PostgreSQL installation failed or isn't working properly.
  PostgreSQL is installed using the set of repositories found on this machine. Please
  ensure that PostgreSQL can be installed. Please also uninstall any other instances of
  PostgreSQL and then try again., giving up

 

---------------------------------------------------------------------------------

Does it require to configure any more repo than configured above?

 

2 ACCEPTED SOLUTIONS

avatar
Community Manager

The error message you see would not prevent Cloudera Manager Server from starting.

 

Just to clarify:   Currently you are unable to connect from your desktop/laptop to port 7180 on the host running Cloudera Manager Server?

 

The above post indicates Cloudera Manager Server is listening for requests on *:7180, so you should be able to connect with http://<cm_server>:7180/

 

If you are not able to connect:

1.  Make sure iptables is turned off

2.  See if you can connect with telnet:   telnet <cm_server> 7180

 

 

The error message you see in the log indicates the background thread is attempting to locate a parcel repository from one of the defined parcel repo URLs.  This would not prevent Cloudera Manager Server from starting but would indicate the host where Cloudera Manager Server is running may not have access to the internet.   The default parcel URLs attempt to connect to http://archive.cloudera.com



David Wilder, Community Manager


Was your question answered? Make sure to mark the answer as the accepted solution.
If you find a reply useful, say thanks by clicking on the thumbs up button.

Learn more about the Cloudera Community:

Terms of Service

Community Guidelines

How to use the forum

View solution in original post

avatar
Explorer

you are correct.

iptables were ON.

 

after turnign them off, can access CM UI on port7180 from my desktop.

Thanks a lot for your timely support. 🙂

View solution in original post

9 REPLIES 9

avatar
Super Collaborator

No you do not need any more repo.

 

When you start the embedded db the first time using "service cloudera-scm-server-db start" then it will use the "initdb" command of Postgresql to create a new database to be used for CM. This command fails to change the permissions of the /var/lib/cloudera-scm-server-db/data/ directory.

 

Check the permissions of this directory.

 

For quick resolution I suggest to make sure permissions are correct, then start again:

 

# chown -R cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server-db/
# chmod 700 /var/lib/cloudera-scm-server-db/
# chmod 700 /var/lib/cloudera-scm-server-db/data
service cloudera-scm-server-db start

avatar
Explorer

Thank you for your reply.

 

Directory permissions are set to 700 already

 

drwx------. 3 cloudera-scm cloudera-scm 4096 Apr 10 11:43 cloudera-scm-server-db

drwx------. 2 cloudera-scm cloudera-scm 4096 Feb 25 09:44 data

 

still it gives the issue as mentioned above

avatar
Community Manager
Please confirm that selinux is disabled.


David Wilder, Community Manager


Was your question answered? Make sure to mark the answer as the accepted solution.
If you find a reply useful, say thanks by clicking on the thumbs up button.

Learn more about the Cloudera Community:

Terms of Service

Community Guidelines

How to use the forum

avatar
Explorer

selinux was "enforcing"

 

I disabled it and started db2 and cloudera manager server and checked. Still cloud manager UI is not accessible.

While starting db2 it shows only this much o/p

 

[root@clouderamaster01 ~]# sudo service cloudera-scm-server-db start
DB initialization done.
waiting for server to start.... done
server started

 

 

avatar
Super Collaborator

It appears as the Postgresql db has started up after disabling SELinux. Btw it is required to disable SELinux: http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/cm_ig_cm_requirements.h...

 

Can you please check status with

 

# service cloudera-scm-server-db status
* Cloudera manager database is running

 

If it reports the running status as shown above, then please restart CM and show it's status with

 

# service cloudera-scm-server restart

# service cloudera-scm-server status

 

 

Then check if CM is listening on port 7180 with 

 

# lsof -i | grep LISTEN | grep cloudera-scm 

java      78425 cloudera-scm  248u  IPv4 2129825      0t0  TCP *:7180 (LISTEN)

 

That should give you a line like above. If it does you should be able to connect to the CM UI. 

If not then please check the log file /var/log/cloudera-scm-server/cloudera-scm-server.log if any errors are seen there.

 

 

avatar
Explorer

yes. selinux need to be diabled. I missed that thing. Sorry.

 

[root@cloudera1 ~]# service cloudera-scm-server status
cloudera-scm-server (pid  3118) is running...

 

 

[root@cloudera1 ~]# service cloudera-scm-server status
cloudera-scm-server (pid  3118) is running...
[root@cloudera1 ~]# lsof -i | grep LISTEN | grep cloudera-scm
postgres  2407 cloudera-scm    3u  IPv4  26734      0t0  TCP *:7432 (LISTEN)
postgres  2407 cloudera-scm    4u  IPv6  26735      0t0  TCP *:7432 (LISTEN)
java      3120 cloudera-scm  236u  IPv4  31474      0t0  TCP *:7182 (LISTEN)
java      3120 cloudera-scm  256u  IPv4  31497      0t0  TCP *:7180 (LISTEN)

 

 

logs shows this eception:

 

2015-04-13 15:15:28,043 INFO ParcelUpdateService:com.cloudera.parcel.components.LocalParcelManagerImpl: Found files  under /opt/cloudera/parcel-repo
2015-04-13 15:15:28,052 INFO main:com.cloudera.server.cmf.jython.components.PythonInterpreterFactory: Constructing Python interpreter
2015-04-13 15:15:31,333 INFO main:com.cloudera.server.cmf.jython.components.PythonInterpreterFactory: Finished constructing Python interpreter
2015-04-13 15:15:31,380 INFO main:com.cloudera.server.cmf.jython.components.JythonObjectFactoryImpl: Constructing Jython object factory
2015-04-13 15:15:38,317 ERROR ParcelUpdateService:com.cloudera.parcel.components.ParcelDownloaderImpl: Unable to retrieve remote parcel repository manifest
java.util.concurrent.ExecutionException: java.util.concurrent.TimeoutException: No response received after 10
        at com.ning.http.client.providers.netty.NettyResponseFuture.get(NettyResponseFuture.java:223)
        at com.cloudera.parcel.components.ParcelDownloaderImpl.getRepoInfoFromFuture(ParcelDownloaderImpl.java:485)
        at com.cloudera.parcel.components.ParcelDownloaderImpl.getRepositoryInfo(ParcelDownloaderImpl.java:469)
        at com.cloudera.parcel.components.ParcelDownloaderImpl.syncRemoteRepos(ParcelDownloaderImpl.java:339)
        at com.cloudera.parcel.components.ParcelDownloaderImpl$1.run(ParcelDownloaderImpl.java:409)
        at com.cloudera.parcel.components.ParcelDownloaderImpl$1.run(ParcelDownloaderImpl.java:404)
        at com.cloudera.cmf.persist.ReadWriteDatabaseTaskCallable.call(ReadWriteDatabaseTaskCallable.java:36)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.util.concurrent.TimeoutException: No response received after 10
        at com.ning.http.client.providers.netty.NettyResponseFuture.get(NettyResponseFuture.java:215)
        ... 10 more
2015-04-13 15:15:39,650 INFO MainThread:com.cloudera.server.cmf.jython.components.JythonObjectFactoryImpl: Finished constructing Jython object factory
2015-04-13 15:15:39,980 INFO MainThread:com.cloudera.server.cmf.descriptor.components.DescriptorFactory: Refreshing service and role config defaults

 

 

UI is not up:(

avatar
Community Manager

The error message you see would not prevent Cloudera Manager Server from starting.

 

Just to clarify:   Currently you are unable to connect from your desktop/laptop to port 7180 on the host running Cloudera Manager Server?

 

The above post indicates Cloudera Manager Server is listening for requests on *:7180, so you should be able to connect with http://<cm_server>:7180/

 

If you are not able to connect:

1.  Make sure iptables is turned off

2.  See if you can connect with telnet:   telnet <cm_server> 7180

 

 

The error message you see in the log indicates the background thread is attempting to locate a parcel repository from one of the defined parcel repo URLs.  This would not prevent Cloudera Manager Server from starting but would indicate the host where Cloudera Manager Server is running may not have access to the internet.   The default parcel URLs attempt to connect to http://archive.cloudera.com



David Wilder, Community Manager


Was your question answered? Make sure to mark the answer as the accepted solution.
If you find a reply useful, say thanks by clicking on the thumbs up button.

Learn more about the Cloudera Community:

Terms of Service

Community Guidelines

How to use the forum

avatar
Explorer

you are correct.

iptables were ON.

 

after turnign them off, can access CM UI on port7180 from my desktop.

Thanks a lot for your timely support. 🙂

avatar

Is there a reason you can share, or a link to something that explains why disabling SELinux is necessary, and why we can't have nice things?