Как настроить systemd journal-remote для прослушивания на конкретном порту?
Все, что я могу найти, это примеры командной строки. И основываясь на man-странице, кажется, что нет никаких опций в journal-remote.conf.
Видя, что здесь нет ни единого комментария, я решил продолжить свое исследование и, наконец, подобрал конфигурацию.
ОС: Ubuntu 16.04
systemd: 229-1ubuntu2
systemd-journal-remote: 229-1ubuntu2
Это на самом деле просто, он-лайн пример верный и нужно коснуться только одного файла конфигурации.
Используйте следующую команду для установки systemd-journal-remote
sudo apt-get install systemd-journal-remote
Редактировать /etc/systemd/journal-upload.conf
.
/etc/systemd/journal-upload.conf
[Upload]
URL=http://10.0.0.1:19532
# ServerKeyFile=/etc/ssl/private/journal-upload.pem
# ServerCertificateFile=/etc/ssl/certs/journal-upload.pem
# TrustedCertificateFile=/etc/ssl/ca/trusted.pem
Чтобы убедиться, что загрузка журнала автоматически запускается при загрузке
sudo systemctl enable systemd-journal-upload.service
Перезапустите загрузку журнала после настройки.
sudo systemctl restart systemd-journal-upload.service
Если вы используете http, вы можете сделать то же, что и выше, и оставить 3 нижние строки с комментариями. Для активного режима https раскомментируйте их и создайте эти файлы сертификатов.
URL фактически определяет протокол передачи (http / https) и порт назначения для использования.
Кроме того, если вы хотите предотвратить случайную перезапись при последующем обновлении пакета, вы можете создать каталог /etc/systemd/journal-upload.conf.d и поместить в него свой файл конфигурации, если файл заканчивается расширением .conf.
В качестве примечания, я делаю это в контейнере LXC и, похоже, служба не будет использовать / etc / hosts для разрешения DNS, в итоге я использую здесь IP-адрес. Поэтому, если вы используете имя хоста и видите сообщение об ошибке, что загрузка журнала не может достичь цели, попробуйте с IP-адресом.
Принимающий сервер доставляет мне больше всего хлопот при поиске информации о конфигурации. И в отличие от сервера загрузки, конфигурация разбросана по этой стороне.
Используйте следующую команду для установки systemd-journal-remote и включения порта прослушивания
sudo apt-get install systemd-journal-remote
sudo systemctl enable systemd-journal-remote.socket
Существует два способа, активный и пассивный, для настройки журнала удаленного. Я использую пассивный режим здесь.
Номер порта
Файл конфигурации для порта прослушивания журнала выглядит /etc/systemd/system/sockets.target.wants/systemd-journal-remote.socket
следующим образом. ListenStream - это номер порта.
В отличие от стороны загрузки, этот параметр не имеет никакого отношения к тому, какой протокол (http / https) использовать. Здесь указывается только номер порта прослушивания.
[Unit]
Description=Journal Remote Sink Socket
[Socket]
ListenStream=19532
[Install]
WantedBy=sockets.target
Протокол (http / https) и местоположение журнала / журнала
Чтобы изменить протокол передачи журнала и место сохранения, копирования /lib/systemd/system/systemd-journal-remote.service
в /etc/systemd/system/
, затем редактировать /etc/systemd/system/systemd-journal-remote.service
.
[Unit]
Description=Journal Remote Sink Service
Documentation=man:systemd-journal-remote(8) man:journal-remote.conf(5)
Requires=systemd-journal-remote.socket
[Service]
ExecStart=/etc/systemd/systemd-journal-remote \
--listen-http=-3 \
--output=/var/log/journal/remote/
User=systemd-journal-remote
Group=systemd-journal-remote
PrivateTmp=yes
PrivateDevices=yes
PrivateNetwork=yes
WatchdogSec=3min
[Install]
Also=systemd-journal-remote.socket
--listen-http=-3
Указать входящий журнал с помощью HTTP. Если вы хотите использовать https, измените его на --listen-https=-3
.
--output=/var/log/journal/remote/
указать приемник (сохранение каталога) входящего журнала. Если он не существует, создайте его и измените его владельца на systemd-journal-remote
.
sudo mkdir /var/log/journal/remote
sudo chown systemd-journal-remote /var/log/journal/remote
Перезапустите journal-remote.socket после настройки.
sudo systemctl daemon-reload
Как насчет самого очевидного /etc/systemd/journal-remote.conf
?
[Remote]
# Seal=false
# SplitMode=host
# ServerKeyFile=/etc/ssl/private/journal-remote.pem
# ServerCertificateFile=/etc/ssl/certs/journal-remote.pem
# TrustedCertificateFile=/etc/ssl/ca/trusted.pem
Так как я не использую https, не нужно ничего менять.
Seeing that there is not even a single comment,
Это неудивительно, вы задали свой вопрос в 22: 12 в пятницу, для большинства людей, которые фактически отвечают на вопросы здесь, это выходные.