운영 체제 - Ubuntu, Linux, 아니면 다른 것?

저는 discourse에 처음 입문해서 제 own 포럼을 세팅하고 있습니다. Linux와 WHM/Cpanel이 설치된 웹서버를 운영하고 있으며, 이 환경에서 WordPress 웹사이트를 문제없이 잘 운영하고 있습니다.

새로운 웹사이트와 그 웹사이트를 기반으로 한 discourse 설치를 호스팅할 새 서버를 세팅했습니다. (이것은 브랜드의 메인 웹사이트가 될 것이며, wp discourse 플러그인을 설치하여 사이트 내에 포럼으로 연결하는 링크를 둘 예정입니다.) 처음에는 모든 것이 잘 진행되었지만, 인증서와 자동 SSL 설정 부분에서 막혔습니다(개인 키를 쉽게 찾을 수 없었기 때문입니다). certbot과 WHM의 Auto SSL을 같은 머신에서 실행하는 것은 좋은 아이디어가 아니라는 것을 알게 되었습니다. 그래서 웹사이트를 다른 WHM 서버로 옮기고, WHM이 설치된 새로운 Alma Linux로 처음부터 다시 시작하여 discourse가 정상적으로 실행되도록 설정했습니다. 하지만 이 과정에서 WHM이 실제로는 필요하지 않다는 것을 깨달았습니다.

제 문제는 Linux에 대해 잘 알지 못한다는 것입니다. WHM 없이 스탠드얼론 머신에 설치하는 것 자체는 가능할 것 같지만, 머신을 안전하게 잠그는 것(lock down)과 백업, 디스크 사용량 모니터링 등 지속적인 유지보수에 대해 충분히 숙련되어 있지 않다고 생각합니다. 저는 GUI가 정말 필요하며, GUI 없이 진행하는 것에 대해 약간 두려움을 느낍니다.

긴 이야기가 되지만, 배경 설명을 드리고자 했고, 또한 다른 사람들이 docker와 discourse를 실행하기 위해 어떤 것을 사용 중인지 궁금했습니다. 온라인 검색을 해본 결과 Ubuntu인 것 같지만, 제가 틀렸을 수도 있습니다.

저는 GUI가 필요하고, 재해 발생 시 빠르고 쉽게 백업과 복구가 가능한 소프트웨어, 디스크 공간 확인, 모니터링 등이 가능한 환경을 원합니다.

Ubuntu가 적합한 선택일까요? 그리고 대규모 discourse 사이트를 실행하는 것을 처리할 수 있을까요? 하드웨어가 많은 영향을 미칠 것이라는 것은 알지만, 확인하고 싶었습니다. 예를 들어 가상의 상황에서 사용자가 100,000명 이상이 된다면 Ubuntu는 안정적으로 유지될 수 있을까요?

어떤 조언이든 큰 도움이 될 것입니다.

저는 Ubuntu를 추천합니다. Discourse가 권장하는 방식이기도 합니다. 표준 설치 가이드(discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub)에는 다음과 같이 나와 있습니다:

현재 지원되는 Ubuntu Server의 최신 LTS 릴리스 기본값이 문제없이 작동합니다. 최소한 최신 커널 버전의 64비트 Linux OS가 필요합니다.

직접 설정하는 것이 부담스러우시다면, Discourse 호스티드 플랜이나 다른 Discourse 호스팅 서비스(예: Communiteq)를 선택할 수 있습니다.

NateDhaliwal님, 정말 감사합니다. 저는 Ubuntu를 사용하기로 하겠습니다.

불행히도 저는 포럼에 제 도메인 이름을 사용하고 싶지만, 새로운 웹사이트인 만큼 이를 허용하는 호스팅 요금제에 돈을 쓰기까지는 싶지 않습니다. 웹사이트와 포럼이 잘 운영되면 반드시 전환하겠습니다.

참고로, 셀프 호스팅된 Discourse를 호스팅 버전으로 전환하는 것이 가능한지 궁금합니다. 셀프 호스팅에서 파일을 백업한 뒤 호스팅 버전에 복원하는 것만으로 가능한 간단한 과정일까요?

네, 그런 것 같습니다. 가격 페이지에서 그 질문은 FAQ에 나와 있습니다.

네, 감사합니다! 또 도와주셔서 감사합니다. :slight_smile:

오래전에는 나도 같은 감정을 느꼈다. 하지만 결국 생각이 달라지기 시작한다. 시스템에 무엇을 로드할지, 어떻게 작동하게 할지, 그리고 클로즈드 소스 소프트웨어로부터의 자유까지, 리눅스 OS가 주는 통제를 느끼기 시작한다. 명령줄 도구를 직관적으로 사용하게 되고, 어떤 GUI에서도 제공하지 못하는 수준으로 시스템을 더 잘 ‘볼’ 수 있다고 느끼게 된다.
강력한 증거도, 팁이나 조언도 없다. 그저 나 자신의 경험에 대한 이야기일 뿐이다.

앤드류, 고마워. 사실 제가 가장 걱정하는 부분은 재해 상황에서 백업과 복구야. 서버가 가상 환경이라 ISO 이미지를 만들 수 없어. 백업 후 처음부터 복구하는 가장 좋은 방법이 뭔지 잘 모르겠어. 저는 GUI 기반의 백업과 복구에 익숙한 편이야. rclone과 restic을 살펴봤는데 복잡해 보였어.

포럼용 discourse를 설정하기 전에, discourse가 실행 중인 서버로 전체 재해 상황을 테스트하고, 서버를 고친 다음 계획이 제대로 작동하는지 확인하고 싶어.

보통 스냅샷을 만들 수 있지만, 호스팅 업체에서 제공하는 기능에 따라 달라집니다. Discourse에서는 백업과 복원이 매우 쉽습니다. Create, download, and restore a backup of your Discourse database 을 참고하세요. Discourse를 언제든 다시 설치하고 백업을 복원할 수 있습니다.

또한 읽어볼 가치가 있는 글: Best Practices for Backups.

Arkshine 님,

최적의 관행 관련 링크를 보내주셔서 정말 감사합니다.

제 호스팅 업체에서 스냅샷 기능을 제공하는지는 모르겠습니다. 업체에 문의해 보겠습니다. 만약 재앙적인 상황이 발생했을 때 모든 설정을 다시 입력하며 서버 전체를 재설치하는 데 걸리는 시간을 줄이고 싶습니다.

yml 파일과 yml 파일에 구성된 S3 백업만 있으면 됩니다.

새 서버를 시작하고 discourse를 클론한 뒤, yml 파일을 복사하고, 재빌드한 다음 S3에서 백업을 복원하면 됩니다.