InfluxDB не удалось запустить как сервис

6301
Davide

Я пытаюсь настроить InfluxDB для автоматического запуска на машине RHEL7.

если я сделаю:

sudo systemctl start influxdb 

служба не работает

[dadmin@localhost dashboard]$ sudo systemctl start influxdb [sudo] password for dadmin:  [dadmin@localhost dashboard]$ sudo systemctl status influxdb ● influxdb.service - InfluxDB is an open-source, distributed, time series database Loaded: loaded (/usr/lib/systemd/system/influxdb.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/influxdb.service.d └─override.conf Active: failed (Result: start-limit) since Thu 2017-05-11 13:16:29 CEST; 10s ago Docs: https://docs.influxdata.com/influxdb/ Process: 2562 ExecStart=/usr/bin/influxd -config /dashboard/influxdb.conf $ (code=exited, status=1/FAILURE) Main PID: 2562 (code=exited, status=1/FAILURE)  May 11 13:16:29 localhost.localdomain systemd[1]: influxdb.service: main process exited, code=exited, status=1/FAILURE May 11 13:16:29 localhost.localdomain systemd[1]: Unit influxdb.service entered failed state. May 11 13:16:29 localhost.localdomain systemd[1]: influxdb.service failed. May 11 13:16:29 localhost.localdomain systemd[1]: influxdb.service holdoff time over, scheduling restart. May 11 13:16:29 localhost.localdomain systemd[1]: start request repeated too quickly for influxdb.service May 11 13:16:29 localhost.localdomain systemd[1]: Failed to start InfluxDB is an open-source, distributed, time series database. May 11 13:16:29 localhost.localdomain systemd[1]: Unit influxdb.service entered failed state. May 11 13:16:29 localhost.localdomain systemd[1]: influxdb.service failed. 

Это файл модуля:

[dadmin@localhost dashboard]$ sudo systemctl cat influxdb.service [sudo] password for dadmin:  # /usr/lib/systemd/system/influxdb.service # If you modify this, please also make sure to edit init.sh  [Unit] Description=InfluxDB is an open-source, distributed, time series database Documentation=https://docs.influxdata.com/influxdb/ After=network-online.target  [Service] User=influxdb Group=influxdb LimitNOFILE=65536 EnvironmentFile=-/etc/default/influxdb ExecStart=/usr/bin/influxd -config /etc/influxdb/influxdb.conf $ KillMode=control-group Restart=on-failure  [Install] WantedBy=multi-user.target Alias=influxd.service  # /etc/systemd/system/influxdb.service.d/override.conf [Service] ExecStart= ExecStart=/usr/bin/influxd -config /dashboard/influxdb.conf $ 

Но если я выполню прямо

/usr/bin/influxd -config /dashboard/influxdb.conf 

InfluxDB запускается плавно.

Где я не прав?

4
См. [Эту соответствующую ветку] (https://community.influxdata.com/t/cant-start-systemd-service-for-influxdb-because-of-tls-certs/2539) на форумах сообщества InfluxData. Justin W. Flory 6 лет назад 0

2 ответа на вопрос

2
Davide

Я нашел проблему:

[dadmin@localhost dashboard]$ sudo tail /var/log/messages May 11 16:21:41 localhost influxd: [I] 2017-05-11T14:21:41Z Using data dir: /dashboard/influxdb/data service=store May 11 16:21:41 localhost influxd: run: open server: open tsdb store: open /dashboard/influxdb/data/_internal: permission denied May 11 16:21:41 localhost systemd: influxdb.service: main process exited, code=exited, status=1/FAILURE May 11 16:21:41 localhost systemd: Unit influxdb.service entered failed state. May 11 16:21:41 localhost systemd: influxdb.service failed. May 11 16:21:41 localhost systemd: influxdb.service holdoff time over, scheduling restart. May 11 16:21:41 localhost systemd: start request repeated too quickly for influxdb.service May 11 16:21:41 localhost systemd: Failed to start InfluxDB is an open-source, distributed, time series database. May 11 16:21:41 localhost systemd: Unit influxdb.service entered failed state. May 11 16:21:41 localhost systemd: influxdb.service failed. 

Когда я казнил

/usr/bin/influxd -config /dashboard/influxdb.conf 

Папки были созданы с dadmin в качестве владельца

Я удалил папки и перезапустил сервис. Теперь все работает отлично.

1
Frrank

Скрипт конфигурации не имеет разрешений.

Это ссылки на каталоги. Когда вы запускаете / opt / influenxdb / influenxd config> /etc/opt/influxdb/influxdb.conf, выходной файл конфигурации помещает все каталоги в ~. Когда вы root, ~ переводится в / root.

Если вы не хотите использовать / root в качестве каталога данных InfluxDB, есть несколько вариантов.

Запустите / opt / influenxdb / influenxd config> /etc/opt/influxdb/influxdb.conf от имени пользователя, которого вы хотите запустить effxd. Затем файл конфигурации будет использовать домашний каталог этого пользователя в качестве места установки. Явно отредактируйте /etc/opt/influxdb/influxdb.conf для ссылки на каталоги, которые вы хотите использовать.

Также проверьте этот блог, это могло бы очистить это для Вас