我在 Ubuntu 16.04 上自动启动 Grafana 时遇到问题(虽然它可以在 14.04 上自动启动,而且在 16.04 上以类似方式配置的其他添加的服务也会自动启动)。
我运行的配置如下:
$ sudo update-rc.d grafana-server defaults
命令没有输出(多次运行不会打印任何新信息):
$ sudo update-rc.d grafana-server defaults
$ sudo update-rc.d grafana-server defaults
$
$ sudo reboot
重启后,服务停止(如果我/var/log/grafana/grafana.log
在重启前删除,则不会创建)。状态为:
$ sudo service grafana-server status
● grafana-server.service - Starts and stops a single grafana instance on this system
Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: http://docs.grafana.org
并且该服务在手动调用时启动:
$ sudo service grafana-server status
● grafana-server.service - Starts and stops a single grafana instance on this system
Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2016-07-17 23:07:33 JST; 1s ago
Docs: http://docs.grafana.org
Main PID: 2658 (grafana-server)
Tasks: 7 (limit: 512)
Memory: 23.0M
CPU: 105ms
CGroup: /system.slice/grafana-server.service
└─2658 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile= cfg:default.paths.logs=/var/log/grafana cfg:de
再次重启后,它无法启动。
init.d
存在启动脚本:
$ ls -l /etc/rc3.d/*grafana*
lrwxrwxrwx 1 root 24 Jul 17 22:58 /etc/rc3.d/S04grafana-server -> ../init.d/grafana-server*
$ ls -l /etc/init.d/grafana-server
-rwxr-xr-x 1 root 3291 Jul 12 19:57 /etc/init.d/grafana-server*
可能出了什么问题?
答案1
检查是否/etc/systemd/system/grafana-server.service
正确链接到/lib/systemd/system/grafana-server.service
如果没有,/lib/systemd/system/grafana-server.service
请创建源文件:https://github.com/grafana/grafana/blob/master/packaging/deb/systemd/grafana-server.service
然后创建正确的链接:
sudo ln -s /lib/systemd/system/grafana-server.service /etc/systemd/system/grafana-server.service
然后启用 grafana-server
sudo systemctl enable grafana-server
然后启动grafana-server
sudo systemctl start grafana-server
答案2
尝试运行此命令:
sudo systemctl enable grafana-server.service
我遇到了与您同样的问题(全新安装 16.04)请注意服务状态的输出:
Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled
这表明该服务已被禁用。上面的命令帮我解决了这个问题。
答案3
我今天在 Ubuntu 18.04 上遇到了这个问题,这是因为grafana-server.service
系统After=network-online.target
尚未达到,network-online.target
因为systemd-networkd-wait-online.service
仍在运行并且尚未超时。
systemctl mask systemd-networkd-wait-online.service
由于我的 grafana 实例和 InfluxDB 实例在同一台服务器上,所以我解决了这个问题。