InfoGrab DocsInfoGrab Docs

쿠버네티스에 Mattermost 배포

요약

Mattermost 서버는 팀 통신 요구에 맞는 확장 가능하고 견고한 인프라를 제공하는 다양한 쿠버네티스 플랫폼에 배포할 수 있습니다. 고가용성 Active/Active 지원이 적용된 쿠버네티스 배포를 안전하게 업그레이드하는 방법은 쿠버네티스 및 고가용성 환경에서 Mattermost 업그레이드 문서를 참조하세요.

사용 가능 플랜: Entry, Enterprise, Enterprise Advanced(Professional 제외)

Mattermost 서버는 팀 통신 요구에 맞는 확장 가능하고 견고한 인프라를 제공하는 다양한 쿠버네티스 플랫폼에 배포할 수 있습니다. 이 가이드는 주요 클라우드 제공업체와 일반 쿠버네티스 설치를 위한 배포 옵션을 다룹니다.

Tip

고가용성 Active/Active 지원이 적용된 쿠버네티스 배포를 안전하게 업그레이드하는 방법은 쿠버네티스 및 고가용성 환경에서 Mattermost 업그레이드 문서를 참조하세요.

설치 방법 선택#

  • Mattermost Operator — S3 호환 스토리지와 관리형 데이터베이스 서비스를 사용하여 Mattermost 쿠버네티스 Operator로 배포합니다. 대부분의 쿠버네티스 및 클라우드 네이티브 프로덕션 배포에 권장됩니다.
  • Oracle (OKE) — Oracle Cloud Marketplace 목록을 통해 Oracle Kubernetes Engine(OKE)을 사용하여 Oracle Cloud Infrastructure에 Mattermost Enterprise Edition을 배포합니다.

자주 묻는 질문#

Docker 이미지에 사용자 지정 CA 인증서를 추가한 후 Pod가 CrashLoopBackOff 오류와 함께 실패하는 이유는 무엇입니까?#

Docker 이미지의 /etc/ssl/certs 디렉터리에 사용자 지정 CA 인증서를 추가하고 Mattermost Enterprise Edition Helm 차트를 통해 쿠버네티스 환경에 배포한 후 CrashLoopBackOff 오류가 발생할 수 있습니다. 이 문제는 일반적으로 사용자 지정 CA 인증서가 시스템의 인증서 신뢰 저장소에서 인식되지 않아 애플리케이션이 사용자 지정 CA가 필요한 서비스에 연결할 때 TLS 핸드셰이크 오류가 발생하기 때문입니다.

핵심 기능은 계속 작동할 수 있지만 다음과 같은 증상이 나타날 수 있습니다.

  • 오류 메시지 backoff - restarting failed container in pod와 함께 충돌 루프에 빠진 Pod.
  • kubectl describe 및 kubectl logs와 같은 디버깅 명령이 유용한 정보를 거의 또는 전혀 제공하지 않음.
  • 연동이 차단될 수 있음.

Docker 이미지를 다시 빌드하지 않고 이 문제를 해결할 수 있습니까?#

예. 배포 프로세스를 단순화하고 이미지 재빌드로 인한 중단을 최소화하기 위해 사용자 지정 CA 인증서를 관리하는 쿠버네티스 기본 솔루션을 사용하는 것을 권장합니다. Docker 이미지를 수정하는 대신 쿠버네티스 리소스를 사용하여 인증서를 Pod에 직접 주입함으로써 인증서가 변경될 때마다 Docker 이미지를 재빌드하고 재배포할 필요 없이 사용자 지정 CA 인증서를 동적으로 관리할 수 있습니다.

쿠버네티스 Secret을 사용하여 사용자 지정 CA 인증서를 저장한 다음 Pod에 마운트합니다.

  1. 사용자 지정 CA 인증서로 쿠버네티스 Secret을 생성합니다.
  2. Helm 차트의 구성 옵션을 사용하여 인증서를 Pod에 마운트합니다. 이 방법은 관리를 단순화하고 향후 인증서 업데이트 시 Docker 이미지를 다시 빌드할 필요를 없앱니다.

또는 Docker 이미지를 수정하지 않고 인증서를 동적으로 주입하려면 initContainer를 사용하여 기본 컨테이너가 시작되기 전에 인증서를 Pod의 파일 시스템에 복사하고 인증서 신뢰 저장소를 업데이트하세요.

CrashLoopBackOff 오류의 근본 원인을 어떻게 해결합니까?#

kubectl describe pods를 사용하여 자세한 이벤트 로그를 확인하세요.

추가 인사이트를 위해 로그를 집계하고 분석하는 Grafana와 같은 로깅 도구를 사용하는 것을 고려하세요.

셀프 호스팅 쿠버네티스 배포에서 데이터는 어디에 저장됩니까?#

데이터가 저장되는 위치는 배포 중에 구성된 백엔드 데이터베이스(예: RDS, Azure Postgres, 셀프 호스팅 PostgreSQL)와 백엔드 파일 저장소(예: AWS S3, 기타 S3 호환 서비스, 마운트된 볼륨)에 따라 다릅니다.

볼륨 마운트의 경우 파일 저장소를 Mattermost 서버에 "로컬" 디렉터리로 제공하는 NFS 볼륨을 사용하는 것을 권장합니다.

모든 유형의 쿠버네티스 영구 볼륨이 Mattermost에서 테스트된 것은 아니며, 일부는 적절한 권한과 접근을 보장하기 위해 추가 설정이 필요한 제한 사항이나 특정 구성이 있을 수 있습니다. 시스템 관리자가 선호하는 영구 볼륨 유형의 문서를 검토하고 Mattermost와의 호환성을 테스트하는 것을 권장합니다.

쿠버네티스에 Mattermost 배포

Mattermost v12.0
원문 보기

요약

Mattermost 서버는 팀 통신 요구에 맞는 확장 가능하고 견고한 인프라를 제공하는 다양한 쿠버네티스 플랫폼에 배포할 수 있습니다. 고가용성 Active/Active 지원이 적용된 쿠버네티스 배포를 안전하게 업그레이드하는 방법은 쿠버네티스 및 고가용성 환경에서 Mattermost 업그레이드 문서를 참조하세요.

사용 가능 플랜: Entry, Enterprise, Enterprise Advanced(Professional 제외)

Mattermost 서버는 팀 통신 요구에 맞는 확장 가능하고 견고한 인프라를 제공하는 다양한 쿠버네티스 플랫폼에 배포할 수 있습니다. 이 가이드는 주요 클라우드 제공업체와 일반 쿠버네티스 설치를 위한 배포 옵션을 다룹니다.

Tip

고가용성 Active/Active 지원이 적용된 쿠버네티스 배포를 안전하게 업그레이드하는 방법은 쿠버네티스 및 고가용성 환경에서 Mattermost 업그레이드 문서를 참조하세요.

설치 방법 선택#

  • Mattermost Operator — S3 호환 스토리지와 관리형 데이터베이스 서비스를 사용하여 Mattermost 쿠버네티스 Operator로 배포합니다. 대부분의 쿠버네티스 및 클라우드 네이티브 프로덕션 배포에 권장됩니다.
  • Oracle (OKE) — Oracle Cloud Marketplace 목록을 통해 Oracle Kubernetes Engine(OKE)을 사용하여 Oracle Cloud Infrastructure에 Mattermost Enterprise Edition을 배포합니다.

자주 묻는 질문#

Docker 이미지에 사용자 지정 CA 인증서를 추가한 후 Pod가 CrashLoopBackOff 오류와 함께 실패하는 이유는 무엇입니까?#

Docker 이미지의 /etc/ssl/certs 디렉터리에 사용자 지정 CA 인증서를 추가하고 Mattermost Enterprise Edition Helm 차트를 통해 쿠버네티스 환경에 배포한 후 CrashLoopBackOff 오류가 발생할 수 있습니다. 이 문제는 일반적으로 사용자 지정 CA 인증서가 시스템의 인증서 신뢰 저장소에서 인식되지 않아 애플리케이션이 사용자 지정 CA가 필요한 서비스에 연결할 때 TLS 핸드셰이크 오류가 발생하기 때문입니다.

핵심 기능은 계속 작동할 수 있지만 다음과 같은 증상이 나타날 수 있습니다.

  • 오류 메시지 backoff - restarting failed container in pod와 함께 충돌 루프에 빠진 Pod.
  • kubectl describe 및 kubectl logs와 같은 디버깅 명령이 유용한 정보를 거의 또는 전혀 제공하지 않음.
  • 연동이 차단될 수 있음.

Docker 이미지를 다시 빌드하지 않고 이 문제를 해결할 수 있습니까?#

예. 배포 프로세스를 단순화하고 이미지 재빌드로 인한 중단을 최소화하기 위해 사용자 지정 CA 인증서를 관리하는 쿠버네티스 기본 솔루션을 사용하는 것을 권장합니다. Docker 이미지를 수정하는 대신 쿠버네티스 리소스를 사용하여 인증서를 Pod에 직접 주입함으로써 인증서가 변경될 때마다 Docker 이미지를 재빌드하고 재배포할 필요 없이 사용자 지정 CA 인증서를 동적으로 관리할 수 있습니다.

쿠버네티스 Secret을 사용하여 사용자 지정 CA 인증서를 저장한 다음 Pod에 마운트합니다.

  1. 사용자 지정 CA 인증서로 쿠버네티스 Secret을 생성합니다.
  2. Helm 차트의 구성 옵션을 사용하여 인증서를 Pod에 마운트합니다. 이 방법은 관리를 단순화하고 향후 인증서 업데이트 시 Docker 이미지를 다시 빌드할 필요를 없앱니다.

또는 Docker 이미지를 수정하지 않고 인증서를 동적으로 주입하려면 initContainer를 사용하여 기본 컨테이너가 시작되기 전에 인증서를 Pod의 파일 시스템에 복사하고 인증서 신뢰 저장소를 업데이트하세요.

CrashLoopBackOff 오류의 근본 원인을 어떻게 해결합니까?#

kubectl describe pods를 사용하여 자세한 이벤트 로그를 확인하세요.

추가 인사이트를 위해 로그를 집계하고 분석하는 Grafana와 같은 로깅 도구를 사용하는 것을 고려하세요.

셀프 호스팅 쿠버네티스 배포에서 데이터는 어디에 저장됩니까?#

데이터가 저장되는 위치는 배포 중에 구성된 백엔드 데이터베이스(예: RDS, Azure Postgres, 셀프 호스팅 PostgreSQL)와 백엔드 파일 저장소(예: AWS S3, 기타 S3 호환 서비스, 마운트된 볼륨)에 따라 다릅니다.

볼륨 마운트의 경우 파일 저장소를 Mattermost 서버에 "로컬" 디렉터리로 제공하는 NFS 볼륨을 사용하는 것을 권장합니다.

모든 유형의 쿠버네티스 영구 볼륨이 Mattermost에서 테스트된 것은 아니며, 일부는 적절한 권한과 접근을 보장하기 위해 추가 설정이 필요한 제한 사항이나 특정 구성이 있을 수 있습니다. 시스템 관리자가 선호하는 영구 볼륨 유형의 문서를 검토하고 Mattermost와의 호환성을 테스트하는 것을 권장합니다.