목차

소개

문제

솔루션

소개

이 문서에서는 CyberVision Center에서 Redis 서비스 실패 문제의 가능한 원인을 설명합니다.

문제

경우에 따라 CyberVision Center의redis.service가 실패 상태일 수 있습니다. 이 서비스의 실패로 인해 marmotd 및 백 엔드와 같은 다른 서비스가 다운될 수도 있습니다.

AOF(Redis Append Only File)가 손상된 상태에 있기 때문에 정상적으로 시작되지 않는 한 가지redis.service가능한 원인이 있습니다.

Redis AOF는 Redis 서버가 서버에서 실행된 모든 명령을 추적하고 기록할 수 있도록 하는 지속성 메커니즘입니다. Redis는 AOF를 사용하여 서버에서 순차적으로 실행되는 각 명령을 추가합니다. 그러면 잘못된 명령 명령으로 인한 데이터 손실이 방지됩니다.

솔루션

설명한 컨텍스트로 인해 서비스가 실패했는지 확인하려면 다음을 수행합니다.

- 를 사용하여systemctlCLI를 통해 또는 진단 번들의systemctl파일에서 Redis 서비스 상태를 확인합니다.

root@Center-4:~# systemctl --failed

* redis.service                      loaded failed failed    Redis data structure

- 이 명령을redis.service사용하거나 진단 번들에서 로그를 사용하여 특정journal_redis오류를 로그를 확인합니다.

root@Center-4:~# journalctl -u redis.service

2023-08-08T09:07:59+0000 center redis[973]: Bad file format reading the append only file: make a backup of your AOF file, then use ./redis-check-aof --fix

2023-08-08T09:07:59+0000 center systemd[1]: redis.service: Main process exited, code=exited, status=1/FAILURE

2023-08-08T09:07:59+0000 center systemd[1]: redis.service: Failed with result 'exit-code'.

2023-08-08T09:07:59+0000 center systemd[1]: Failed to start Redis data structure server.

journal_error log:

2023-08-08T09:07:59+0000 center systemd[1]: Failed to start Redis data structure server.

2023-08-08T09:07:59+0000 center systemd[1]: Failed to start Redis data structure server.

- 문제를 해결하기 위해, 절차는 AOF 파일 백업을 수행 하고 손상된 파일에 대한 수정을 수행 하고 센터를 재부팅하는 것입니다.

root@Center-4:~#sudo cp /data/redis/appendonly.aof /data/redis/appendonly.aof.bak

root@Center-4:~#sudo redis-check-aof --fix /data/redis/appendonly.aof

root@Center-4:~#reboot

- 재부팅 후 가 활성 상태에redis.service있는지 확인합니다.

root@Center-4:~# systemctl status redis.service

● redis.service - Redis data structure server

Loaded: loaded (/lib/systemd/system/redis.service; enabled; vendor preset: enabled)

Active: active (running)