source

데이터베이스에는 컨테이너를 사용하는 것이 권장됩니까?

factcode 2023. 1. 29. 20:17
반응형

데이터베이스에는 컨테이너를 사용하는 것이 권장됩니까?

나는 그것에 대한 정보를 찾아봤지만, 여전히 납득할 만한 것을 찾지 못했다.

저는 apache와 php를 포함한 여러 컨테이너형 웹사이트를 가지고 있습니다.이것들은 각 컨테이너에 대해 가상 호스트를 가진 리버스 프록시를 통해 노출됩니다.그러나 데이터베이스에 대해 생각해봤는데 대부분 mariadb 5.5를 사용하고 있는데 mariadb 10이 필요로 하는 사이트 웹이 하나 있습니다.

각 웹사이트의 컨테이너마다 mariadb의 인스턴스를 내장하거나 전용 컨테이너를 만드는 것이 좋은지 궁금했는데, 몇 가지 의문점이 있습니다.

Mariadb는 자체 로드밸런싱 시스템을 사용합니다.컨테이너가 동일한 데이터 디렉토리를 사용하더라도 동일한 데이터베이스의 여러 인스턴스를 생성해야 하는 경우 컨테이너 사용에 영향을 미칩니까?엔진이 동일한 인덱싱을 여러 번 해야 하는지 아니면 파일 사용에 충돌이 발생하는지 궁금합니다.

웹사이트가 컨테이너에 있는 것은 변경되지 않고 로그와 업로드된 파일이 영속적인 볼륨에 저장되기 때문에 문제 없습니다만, 데이터베이스의 경우 여러 엔진이 같은 데이터 디렉토리를 사용하는 것이 좋은지 알 수 없기 때문에 다릅니다.

데이터베이스의 쿼리 부하가 높은 생산적인 환경에서는 컨테이너를 사용하는 것이 권장됩니까?아니면 웹 사이트 컨테이너에 데이터베이스를 내장하는 것이 좋습니까, 아니면 서버에 네이티브 설치를 하는 것이 좋습니까?

어떤 경우에 어떤 옵션을 선택해야 합니까?

2개의 데이터베이스가 같은 데이터 디렉토리를 공유하지 않도록 하십시오.자체 볼륨을 관리하는 데이터베이스 서버는 1개뿐입니다.

고가용성이 필요하거나 로드가 우려되어 더 많은 데이터베이스가 필요한 경우 각각 자체 데이터 디렉토리를 관리하고 복제를 통해 서로 동기화해야 합니다.

데이터베이스 엔진에 컨테이너를 사용하는 것은 개발 설정 이외에서는 다소 드문 일이지만, 특히 빠르게 확장할 수 있기를 바란다면 더더욱 드물지 않습니다.이 모든 것을 자동화하는 것은 매우 쉬운 일이 아니라고 생각합니다.

데이터베이스는 중요한 서비스입니다.제 생각에는 프로덕션 데이터베이스에 도커를 사용하면 안 될 것 같습니다.그러나 로컬 개발 환경에서 Docker를 사용하는 것은 두 번 다시 생각하지 않습니다.

언급URL : https://stackoverflow.com/questions/62747105/is-it-recommended-to-use-containers-for-databases

반응형