現象
Upgrade from 19.1 to 19.2
- After the upgrade from Avamar
19.1 to 19.2, logrotate errors are appearing in /var/log/messages.
admin@avamar:~/>: grep -i "logrotate.service" /var/log/messages
Feb 1 00:00:01 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE
Feb 1 00:00:01 avamar systemd[1]: logrotate.service: Unit entered failed state.
Feb 1 00:00:01 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'.
Feb 2 00:00:03 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE
Feb 2 00:00:03 avamar systemd[1]: logrotate.service: Unit entered failed state.
Feb 2 00:00:03 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'.
Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE
Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Unit entered failed state.
Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'.
- Reading through (/var/log/messages), these errors are triggered after it fails to find file: /etc/init.d/apache2 to run prerotate in the logrotate.d for apache2
Feb 2 16:30:02 avamar logrotate: ALERT exited abnormally with [1]
Feb 2 16:30:02 avamar logrotate: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory
Feb 2 16:30:02 avamar logrotate: error: error running non-shared prerotate script for /var/log/apache2/access_log of '/var/log/apache2/access_log '
Feb 2 16:30:02 avamar logrotate: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory
Feb 2 16:30:02 avamar logrotate: error: error running non-shared prerotate script for /var/log/apache2/ssl_request_log of '/var/log/apache2/ssl_request_log '
Feb 3 00:00:01 avamar logrotate[14221]: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory
Feb 3 00:00:01 avamar logrotate[14221]: error: error running non-shared prerotate script for /var/log/apache2/access_log of '/var/log/apache2/access_log '
Feb 3 00:00:01 avamar logrotate[14221]: logrotate_script: line 1: /etc/init.d/apache2: No such file or directory
Feb 3 00:00:01 avamar logrotate[14221]: error: error running non-shared prerotate script for /var/log/apache2/ssl_request_log of '/var/log/apache2/ssl_request_log '
Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE
Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Unit entered failed state.
Feb 3 00:00:01 avamar systemd[1]: logrotate.service: Failed with result 'exit-code'.
- Avamar server is running 19.2, with SLES 12 SP 4:
admin@avamar:~/>: cat /etc/*release*
SUSE Linux Enterprise Server 12 (x86_64)
VERSION = 12
PATCHLEVEL = 4
# This file is deprecated and will be removed in a future service pack or release.
# Please check /etc/os-release for details about this release.
NAME="SLES"
VERSION="12-SP4"
VERSION_ID="12.4"
PRETTY_NAME="SUSE Linux Enterprise Server 12 SP4"
ID="sles"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:suse:sles:12:sp4"
- Running the command manually, to check for directory: /etc/init.d/apache2 fails with "No such file or directory".
admin@avamar:~/>: ls -ltrh /etc/init.d/apache2
ls: cannot access '/etc/init.d/apache2': No such file or directory
原因
A software bug, that caused logrotate for apache2 to check init.d files, which don't exist in SLES 12.
In SLES 11, init.d service was used but in SLES 12, systemctl service is used.
解決方法
Workaround:
1. Login to the utility node or the single node system as admin user and become root.
2. Move the existing logrotate file aside
mv /etc/logrotate.d/apache2 /tmp
3. Recreate the file using vi
vi /etc/logrotate.d/apache2
4. Copy the following lines to a text editor like Notepad or Notepad++ (please do not use Word or Wordpad as that will introduce the special characters)
/var/log/apache2/access_log /var/log/apache2/ssl_request_log {
compress
dateext
maxage 365
rotate 99
size=+4096k
notifempty
missingok
create 640 wwwrun www
sharedscripts
postrotate
systemctl reload apache2.service
sleep 60
endscript
}
/var/log/apache2/error_log /var/log/apache2/suexec.log /var/log/apache2/ssl_engine_log /var/log/apache2/deflate.log {
compress
dateext
maxage 365
rotate 99
size=+1024k
notifempty
missingok
create 640 wwwrun www
sharedscripts
postrotate
systemctl reload apache2.service
sleep 60
endscript
}
5. Paste the text from the editor into a newly created file on an Avamar node
6. Save changes
7. Set the correct permissions on the file
chmod 644 /etc/logrotate.d/apache2
8. Test the log rotation as root.
logrotate -f /etc/logrotate.conf
Permanent fix: The issue will be fixed in next Avamar version: 19.3.
対象製品
Avamar
製品
Avamar, Avamar Server