12월 17일에 발생했던 서비스 장애의 원인을 일부 서버의 메모리 초과로 결론 내리고, 충분한 메모리 용량 확보를 위해 일부 서버를 교체했지만 데이터베이스가 실행 중인 서버는 당장 교체하기 어려워 오늘 교체로 계획했습니다.

오늘 작업 중, 데이터베이스를 새로운 서버에서 실행하는 과정에서 클라이언트 인증서 관련 문제로 마스토돈과 데이터베이스 간 접속 장애가 발생하였고, 데이터베이스 접속 불능으로 인해 작업 대기열이 끊임없이 길어지자 대기열이 길어지면 작업을 처리하는 팟(일종의 프로그램 단위)을 늘리는 로직에 의해 수많은 팟이 생성되어서 서버의 가용 자원을 전부 소모했습니다.
그 후 데이터베이스 팟이 재실행되는 과정에서 가용 자원 부족으로 인해 정상적으로 실행되지 못해, 모든 데이터베이스 팟이 실행되지 못해 일부 데이터가 손상되었습니다.

플래닛은 지속적 데이터베이스 백업을 시행 중이므로 손상된 데이터는 현재 정상적으로 복원된 상태입니다. 그러나 현재는 아직 레플리카 데이터베이스 (주 데이터베이스의 정보를 그대로 복제해 읽기 작업을 보조하고 주 데이터베이스에 문제가 발생했을 시 교체되는 데이터베이스)는 아직 백업으로부터 복원되는 중이여서 서비스 속도가 상당히 느릴 수 있습니다.

0

If you have a fediverse account, you can quote this note from your own instance. Search https://planet.moe/users/planet/statuses/115762364995749364 on your instance and quote it. (Note that quoting is not supported in Mastodon.)