Kubernetes 와 데이터베이스
(iwanhae.tistory.com)일반적으로 Kubernetes 에서 DB 를 운영하는것을 별로 추천하지 않는데 구체적으로 어떤 이슈가 존재할까 의식의 흐름대로 떠드는 글 입니다.
DB on K8s: 장점
- kubectl을 통한 단일 조작 체계
- 일관된 보안 체계 (방화벽, 접근 제어)
- 모니터링 통합
- 자동화된 관리
DB on K8s: 이슈
- CPU와 스토리지 간 거리로 인한 성능 및 안정성 문제
- 공유 리눅스 커널 자원 문제
- 새로운 장애 포인트 추가
- 약한 조작 격리
- 설정, 네트워크 설정, 라이프사이클 관리의 복잡성 증가
DB on K8s: 제안하는 해결책
- Kubernetes 기능 일부 포기 (노드당 DB Pod 1개, Local Volume 사용, hostNetwork 사용 등)
- DB 종류에 따라 Operator 활용
결론:
- 가능은 하지만 효율적인지는 의문
- DB 수가 매우 많거나, 수시간정도 장애를 허용하는 서비스에는 유용해보임
- 그 외에는 기존 방식이 더 효율적으로 보임