¿Cómo configurar systemd journal-remote para escuchar en un puerto específico?
Todo lo que puedo encontrar son ejemplos de línea de comandos. Y en base a la página de manual, no parece haber ninguna opción en journal-remote.conf.
Al ver que ni siquiera hay un solo comentario, decidí continuar mi investigación y finalmente reconstruí la configuración.
SO: Ubuntu 16.04
systemd: 229-1ubuntu2
systemd-journal-remote: 229-1ubuntu2
Este es realmente simple, los ejemplos en línea son correctos y solo necesitan tocar un archivo de configuración.
Use el siguiente comando para instalar systemd-journal-remote
sudo apt-get install systemd-journal-remote
Editar /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
Para asegurarse de inicio automático de carga de diario en el arranque
sudo systemctl enable systemd-journal-upload.service
Reinicie la carga del diario después de la configuración.
sudo systemctl restart systemd-journal-upload.service
Si está utilizando http, puede hacer lo anterior y dejar las 3 líneas inferiores comentadas. Para el modo activo https, descomente y cree esos archivos cert.
La URL realmente dicta el protocolo de transferencia (http / https) y el puerto de destino a utilizar.
Además, si desea evitar la sobrescritura accidental mediante una futura actualización del paquete, puede crear un directorio /etc/systemd/journal-upload.conf.d y colocar su archivo de configuración, siempre que el archivo finalice con una extensión .conf.
Como notas al margen, estoy haciendo esto dentro de un contenedor LXC y parece que el servicio no usará / etc / hosts para la resolución dns, termino usando la dirección IP aquí. Entonces, si usa el nombre de host y ve un mensaje de error que indica que la carga del diario no puede alcanzar el objetivo, intente con la dirección IP.
El servidor receptor me da la mayor parte del problema cuando busco información de configuración. Y a diferencia del servidor de carga, la configuración está dispersa en este lado.
Use el siguiente comando para instalar systemd-journal-remote y habilitar el puerto de escucha
sudo apt-get install systemd-journal-remote
sudo systemctl enable systemd-journal-remote.socket
Hay dos formas, activa y pasiva, de configurar journal-remote. Estoy usando el modo pasivo aquí.
Número de puerto
El archivo de configuración para el puerto de escucha del diario es el /etc/systemd/system/sockets.target.wants/systemd-journal-remote.socket
siguiente. ListenStream es el número de puerto.
A diferencia del lado de carga, esta configuración no tiene nada que ver con qué protocolo (http / https) usar. Solo especifica el número de puerto de escucha.
[Unit]
Description=Journal Remote Sink Socket
[Socket]
ListenStream=19532
[Install]
WantedBy=sockets.target
Protocolo (http / https) y ubicación del diario / registro
Para cambiar el protocolo de la transferencia revista y la ubicación de almacenamiento, copiar /lib/systemd/system/systemd-journal-remote.service
en /etc/systemd/system/
, a continuación, editar /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
El --listen-http=-3
especificar el diario entrante está utilizando http. Si desea usar https, cámbielo a --listen-https=-3
.
--output=/var/log/journal/remote/
especifique el sumidero (directorio de guardado) del diario entrante. Si no existe, créelo y cambie su propietario a systemd-journal-remote
.
sudo mkdir /var/log/journal/remote
sudo chown systemd-journal-remote /var/log/journal/remote
Reinicie journal-remote.socket después de la configuración.
sudo systemctl daemon-reload
¿Qué pasa con lo más obvio /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
Como no estoy usando https, no necesito cambiar nada.
Seeing that there is not even a single comment,
Eso no es sorprendente, usted hizo su pregunta a las 22:12 UTC del viernes, para la mayoría de las personas que realmente responden preguntas aquí ese fin de semana.