업데이트 후 설치에 문제가 생겼는데, 어떻게 해결할 수 있을까요?

아마도 버전 3.2를 사용 중이었을 것 같습니다. 현재 버전에서 두 버전 전이죠. 웹 인터페이스를 사용했는데, 50분 후에도 사이트가 여전히 다운된 상태였습니다.

콘솔에 로그인하여 ./launcher rebuild app을 시도해 보았지만, 시스템은 항상 메모리가 부족하다고 말합니다. 저는 25GB짜리 머신을 사용 중이고, 업데이트 전에는 Discourse 대시보드에 따르면 8GB가 사용 가능했습니다. 공간을 확보하려고 시도했고, 시스템은 설치를 시도하지만 그 후 다시 같은 오류가 발생합니다.

콘솔에 로그인했을 때 Ubuntu가 최신 버전이 아님을 확인했습니다. 51개의 오래된 패키지는 업데이트했지만, 코어 시스템은 업데이트하지 못했습니다. 여전히 22.10 버전입니다. 이것이 제 문제인지 아닌지는 알 수 없습니다. Ubuntu도 여전히 업데이트할 수 없으며, "당신의 Ubuntu 릴리스는 더 이상 지원되지 않습니다."라는 메시지가 표시됩니다.

이것이 Discourse가 깨진 것과 관련이 있는지 모르겠습니다.

그 후, 새로운 서버를 시작하고 백업을 복원하려고 시도했습니다. 그러나 Discourse 웹 인터페이스에서 업로드하려고 할 때 백업 파일을 선택할 수 없습니다. 회색으로 비활성화되어 있습니다.

정말 막막한 상태입니다, 여러분. 정말 도움이 필요합니다. 사이트가 다운되어 있거든요.

P.S. 제 백업은 로컬에 있지 않고 Backblaze에 있습니다.

해야 할 일은 backblaze 설정을 yml 파일에 복사하여 커맨드 라인에서 복원할 수 있도록 하는 것입니다. 커맨드 라인에서 백업 복원업로드를 위한 S3 호환 객체 스토리지 제공자 구성을 참조하세요(다만 백업 설정만 사용하면 됩니다).

새 VM이 LTS 릴리스(24.04)인지 확인하세요.

다음 명령을 사용하여 사이트를 다시 시작할 수 있어야 합니다.

./launcher start app

막혀서 유료 도움을 원하신다면 https://www.literatecomputing.com/contact/를 참조하세요.

그때 제 추측이 맞았나 봅니다. 말씀하신 방법을 시도해 봤는데, 한 단계를 놓친 것 같습니다.

결국 기존 서버로 돌아가기로 했는데, 첨부한 사진에서 보시는 것처럼 메모리 문제로 ./launcher start app 명령이 작동하지 않았습니다. 그래서 서버의 메모리를 업그레이드했는데, 역시나 최신 업데이트를 적용한 상태로 다시 정상 작동하기 시작했습니다.

연락처 링크를 남겨 주셔서 정말 감사합니다. 이 정보를 꼭 저장해 두겠습니다!

다시 돌아오셨다니 다행입니다! 운영 체제를 업데이트하기 전까지는 discourse를 업그레이드할 수 없을 것 같습니다.

흥미롭게도, Discourse가 최신 릴리스로 업데이트되었습니다.

명령줄에 로그인하여 OS를 업데이트하려고 시도했는데, 다음과 같은 오류가 발생했습니다.

'kinetic’에서 "noble’로의 업그레이드는 이 도구에서 지원되지 않습니다.

일단 꼬이기 시작하면 꼬임이 겹치는군요!

처음 서버를 구축했을 때 OS와 패키지를 자동으로 업데이트하는 명령어를 찾았었던 것 같은데, 제가 착각한 걸까요? 실제로는 그런 일이 없었던 것 같고, OS가 구버전으로 남아 있는 것 같습니다…

정말 좋습니다!

해당 릴리스 내에서 최신 패키지로만 자동으로 업그레이드되며, 새로운 릴리스로는 업그레이드되지 않습니다.

알겠습니다!

OS 업데이트를 진행할 수 없다면 연락드리겠습니다.

한 가지 더 질문이 있습니다…

S3 백업이 활성화되어 있을 때, 웹 브라우저를 통해 백업을 복원할 수 없고 반드시 명령줄을 통해 복원해야 한다는 뜻인가요?

이 업데이트 이후로는 백업조차 할 수 없는 것 같아서 좀 이상합니다.

아니요 - 브라우저에서 복원할 수 있습니다. S3 자격 증명이 올바른 경우 /admin/backups에서 S3 백업을 확인하실 수 있지만, 복원을 하려면 allow restore가 체크되어 있어야 합니다.
/admin/site_settings/category/all_results?filter=allow%20restore

네, 그 점은 알아두면 좋겠네요.

그런데 S3 백업에서만 복원이 가능한 것 같습니다.

이상한 점은, 저는 자격 증명(credentials)에 손을 대지 않았는데도 이전 백업이 보이지 않고, 백업도 만들 수 없다는 것입니다. 제가 한 일은 웹 GUI를 통해 Discourse를 업데이트하고, 문제가 발생하자 Digital Ocean에서 해당 서버의 메모리를 수정하여 해결한 것뿐입니다.

로그인해 보면 백업이 없고, 백업도 생성할 수 없습니다.

이유를 설명할 수 없네요. 새로운 서버를 올려서 app.yml 파일을 설정에 추가한 뒤, 거기서 백업이 나타나는지 확인해 볼 수도 있습니다. 그 사이에 Digital Ocean의 백업 기능을 활성화해 두었으니, 최소한 그 정도는 확보할 수 있습니다.

도와주셔서 감사합니다.

백업 문제를 해결했습니다!

변경된 것은 Discourse 업데이트뿐이었기 때문에, app.yml 파일에서 아래 내용을 주석 처리하고 저장한 후 ./launcher rebuild app를 실행했습니다.

예시:

  # DISCOURSE_S3_REGION: "region"
  # DISCOURSE_S3_INSTALL_CORS_RULE: false
  DISCOURSE_S3_ENDPOINT: <url>
  DISCOURSE_S3_ACCESS_KEY_ID: <id>
  DISCOURSE_S3_SECRET_ACCESS_KEY: <key>
  DISCOURSE_S3_BACKUP_BUCKET: <bucket>
  # DISCOURSE_BACKUP_LOCATION: s3

자, 이제 백업이 정상적으로 작동합니다.

일부러 트러블슈팅을 해보니, DISCOURSE_S3_REGION:만 주석 처리해도 백업이 작동하는 것을 확인했습니다. 업데이트 전에는 이 설정이 정상적으로 작동했기 때문에 매우 이상합니다. 하지만 어쨌든 해결책이 있으니 좋죠!

다른 분들에게도 도움이 되길 바랍니다.