You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ambari.apache.org by Pawel Akonom <pa...@vnomic.com> on 2016/06/15 19:48:57 UTC

Grafana service can't start because of missing config file

Hi,


I am trying to install HDP stack version 2.3.4.7 using ambari version 2.2.2.0.


After Hadoop cluster installation metrics are missing because grafana service can't be started.


[root@hdp-vora-slave ~]# tail  /var/lib/ambari-agent/data/output-76.txt
2016-06-15 14:52:27,237 - Changing permission for /etc/ambari-metrics-grafana/conf/ams-grafana.ini from 644 to 600
2016-06-15 14:52:27,237 - Execute[('chown', '-R', 'ams', '/etc/ambari-metrics-grafana/conf')] {'sudo': True}
2016-06-15 14:52:27,245 - Execute[('chown', '-R', 'ams', '/var/log/ambari-metrics-grafana')] {'sudo': True}
2016-06-15 14:52:27,250 - Execute[('chown', '-R', 'ams', '/var/lib/ambari-metrics-grafana')] {'sudo': True}
2016-06-15 14:52:27,260 - Execute[('chown', '-R', 'ams', '/var/run/ambari-metrics-grafana')] {'sudo': True}
2016-06-15 14:52:27,272 - Execute['/usr/sbin/ambari-metrics-grafana start'] {'user': 'ams'}
2016-06-15 14:52:28,332 - Checking if AMS Grafana datasource already exists
2016-06-15 14:52:28,332 - Connecting (GET) to hdp-vora-slave.virtunomic.com:3000/api/datasources
Command aborted. Server considered task failed and automatically aborted it


"/usr/sbin/ambari-metrics-grafana start" is executing following command to start grafana service:


nohup /usr/lib/ambari-metrics-grafana/bin/grafana-server --pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana


When I run the command manually I get error:


[ams@hdp-vora-slave ~]$ /usr/lib/ambari-metrics-grafana/bin/grafana-server --pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana
2016/06/15 15:36:30 [log.go:75 Fatal()] [E] Failed to parse defaults.ini, open /home/ams/conf/defaults.ini: no such file or directory


Grafana config file is missing:


[ams@hdp-vora-slave ~]$ ls -la /home/ams/conf/defaults.ini
ls: cannot access /home/ams/conf/defaults.ini: No such file or directory


Do you know the problem? How it can be solved?

Br,
Pawel

Re: Grafana service can't start because of missing config file

Posted by Pawel Akonom <pa...@vnomic.com>.
Hi Aravidan,


The problem is not about cd to "/usr/lib/ambari-metrics-grafana/" before running the command.


"/usr/sbin/ambari-metrics-grafana start" script is actually doing it. In bash debug mode:


[root@hdp-vora-slave ambari-metrics-grafana]# su - ams -c 'bash -x /usr/sbin/ambari-metrics-grafana start'
+ PATH=/bin:/usr/bin:/sbin:/usr/sbin
+ NAME=grafana-server
+ DESC='Ambari Metrics Grafana'
+ CONF_DIR=/etc/ambari-metrics-grafana/conf
+ [[ -f /etc/ambari-metrics-grafana/conf/ams-grafana-env.sh ]]
+ . /etc/ambari-metrics-grafana/conf/ams-grafana-env.sh
++ export AMS_GRAFANA_HOME_DIR=/usr/lib/ambari-metrics-grafana
++ AMS_GRAFANA_HOME_DIR=/usr/lib/ambari-metrics-grafana
++ export AMS_GRAFANA_DATA_DIR=/var/lib/ambari-metrics-grafana
++ AMS_GRAFANA_DATA_DIR=/var/lib/ambari-metrics-grafana
++ export AMS_GRAFANA_LOG_DIR=/var/log/ambari-metrics-grafana
++ AMS_GRAFANA_LOG_DIR=/var/log/ambari-metrics-grafana
++ export AMS_GRAFANA_PID_DIR=/var/run/ambari-metrics-grafana
++ AMS_GRAFANA_PID_DIR=/var/run/ambari-metrics-grafana
+ GRAFANA_HOME=/usr/lib/ambari-metrics-grafana
+ WORK_DIR=/usr/lib/ambari-metrics-grafana
+ DATA_DIR=/var/lib/ambari-metrics-grafana
+ LOG_DIR=/var/log/ambari-metrics-grafana
+ CONF_FILE=/etc/ambari-metrics-grafana/conf/ams-grafana.ini
+ MAX_OPEN_FILES=10000
+ PID_FILE=/var/run/ambari-metrics-grafana/grafana-server.pid
+ DAEMON=/usr/lib/ambari-metrics-grafana/bin/grafana-server
+ OUT_FILE=/var/log/ambari-metrics-grafana/grafana.out
+ STOP_TIMEOUT=5
+ '[' '!' -x /usr/lib/ambari-metrics-grafana/bin/grafana-server ']'
+ DAEMON_OPTS='--pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana'
+ case "$1" in
+ echo -n 'Starting Ambari Metrics Grafana: .... '
Starting Ambari Metrics Grafana: .... + isRunning
+ status -p /var/run/ambari-metrics-grafana/grafana-server.pid grafana-server
+ '[' 1 -eq 0 ']'
+ cd /usr/lib/ambari-metrics-grafana
+ return=0
+ '[' 0 -eq 0 ']'
+ sleep 1
+ nohup /usr/lib/ambari-metrics-grafana/bin/grafana-server --pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana
+ [[ -s /var/run/ambari-metrics-grafana/grafana-server.pid ]]
+ i=0
+ timeout=10
+ sleep 1
+ i=1
+ '[' 1 -gt 10 ']'
+ sleep 1
+ i=2
+ '[' 2 -gt 10 ']'
+ sleep 1
+ i=3
+ '[' 3 -gt 10 ']'
+ sleep 1
+ i=4
+ '[' 4 -gt 10 ']'
+ sleep 1
+ i=5
+ '[' 5 -gt 10 ']'
+ sleep 1
+ i=6
+ '[' 6 -gt 10 ']'
+ sleep 1
+ i=7
+ '[' 7 -gt 10 ']'
+ sleep 1
+ i=8
+ '[' 8 -gt 10 ']'
+ sleep 1
+ i=9
+ '[' 9 -gt 10 ']'
+ sleep 1
+ i=10
+ '[' 10 -gt 10 ']'
+ sleep 1
+ i=11
+ '[' 11 -gt 10 ']'
+ echo FAILED
FAILED
+ exit 1

So the script first is running "cd /usr/lib/ambari-metrics-grafana" and then "nohup /usr/lib/ambari-metrics-grafana/bin/grafana-server --pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana" as user ams.


When I run the command manually I didn use "su - ams -c '/usr/sbin/ambari-metrics-grafana start'" because first I login as user ams and then I run the command as ams user.

I have solved the problem by recursively changing ownership of directories:


/var/log/ambari-metrics-grafana

/var/run/ambari-metrics-grafana


from root:root to ams:hadoop


[root@hdp-vora-slave ambari-metrics-grafana]# chown -R ams:hadoop /var/log/ambari-metrics-grafana
[root@hdp-vora-slave ambari-metrics-grafana]# chown -R ams:hadoop /var/run/ambari-metrics-grafana


After that I was able to start grafana service:


[root@hdp-vora-slave ambari-metrics-grafana]# su - ams -c '/usr/sbin/ambari-metrics-grafana start'
Starting Ambari Metrics Grafana: .... OK


It looks like ambari is not changing the ownership before starting the service. It looks like a bug and it should be fixed.


Br,

Pawel

________________________________
From: Aravindan Vijayan <av...@hortonworks.com>
Sent: Wednesday, June 15, 2016 11:13:28 PM
To: user@ambari.apache.org
Cc: Derek Palma
Subject: Re: Grafana service can't start because of missing config file

Hi Derek,

Please "cd" to the lib directory before running your command

cd /usr/lib/ambari-metrics-grafana/

/usr/lib/ambari-metrics-grafana/bin/grafana-server --pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana &

Any reason why you are not using this command -
su - ams -c '/usr/sbin/ambari-metrics-grafana start'

Thanks!
--
Thanks and Regards,
Aravindan Vijayan

From: Pawel Akonom
Reply-To: "user@ambari.apache.org<ma...@ambari.apache.org>"
Date: Wednesday, June 15, 2016 at 12:48 PM
To: "user@ambari.apache.org<ma...@ambari.apache.org>"
Cc: Derek Palma
Subject: Grafana service can't start because of missing config file

/usr/sbin/ambari-metrics-grafana start

Re: Grafana service can't start because of missing config file

Posted by Aravindan Vijayan <av...@hortonworks.com>.
Hi Derek,

Please "cd" to the lib directory before running your command

cd /usr/lib/ambari-metrics-grafana/

/usr/lib/ambari-metrics-grafana/bin/grafana-server --pidfile=/var/run/ambari-metrics-grafana/grafana-server.pid --config=/etc/ambari-metrics-grafana/conf/ams-grafana.ini cfg:default.paths.data=/var/lib/ambari-metrics-grafana cfg:default.paths.logs=/var/log/ambari-metrics-grafana &

Any reason why you are not using this command -
su - ams -c '/usr/sbin/ambari-metrics-grafana start'

Thanks!
--
Thanks and Regards,
Aravindan Vijayan

From: Pawel Akonom
Reply-To: "user@ambari.apache.org<ma...@ambari.apache.org>"
Date: Wednesday, June 15, 2016 at 12:48 PM
To: "user@ambari.apache.org<ma...@ambari.apache.org>"
Cc: Derek Palma
Subject: Grafana service can't start because of missing config file

/usr/sbin/ambari-metrics-grafana start