NHN KCP 온프레미스 환경에서 네이티브 클라우드 제로 베이스 구축 스토리

우리의 현실

우리는 퍼블릭 클라우드 시스템을 사용하지 않고 모든 서비스를 온프레미스 환경에서 서비스하고 있고 물리적인 서버와 네트워크를 관리하는 부서는 시스템팀이라는 곳에서 관리한다. 즉, DevOps팀이 없다.

그래서 새롭게 DevOps파트를 만들었고, 네이티브 클라우드 환경을 구축이라는 큰 미션을 가지고 업무를 진행하고자 하는데, 과거의 조직도를 가지고 있는 우리의 현실로 인해 R&R(Role and Responsibility, 역할과 책임 또는 권한 책임)를 정하는 큰 어려움이 있다.

물리적 서버와 네트워크 구축과 오류의 트러블슈팅은 시스템팀에서 진행을 하고 쿠버네티스 영역 안에서 발생하는 모든 업무와 이슈는 우리 부서의 DevOps 파트에서 해결하기로 결정하였다.

이렇게 큰 산을 하나 넘었지만, 아직 남은 산이 하나 더 있다. 바로 보안 부분이다. 우리의 주 서비스는 결제 서비스이기 때문에 금강원의 감시와 감독을 받기 때문에 적절한 보안정책을 적용하지 않으면 컨테이너 아키텍처는 사용할 수가 없다. 그래서 우리는 컨테이너 런타임 중에 가장 많이 사용되는 Docker를 사용하지 않고 보안에 특화된 컨테이너 런타임을 사용하기로 결정하였다.

서론이 너무 길었다. 이제부터 우리 조직의 현실과 서비스에 Fit하게 네이티브 클라우드 환경을 구축해 볼 것이다. 생각보다 어려울 수 있지만, 잘 따라와 주기를 바란다.

1. 용어 정리

출처 URL: 삼성SDS 블로그

  1. 컨테이너

    App이 구동되는 환경까지 감싸서 실행할 수 있도록 하는 격리 기술

  2. 컨테이너 런타임

    컨테이너를 다루는 도구

  3. 도커

    컨테이너를 다루는 도구 중 가장 유명한 것

  4. 쿠버네티스

    컨테이너 런타임을 통해 컨테이너를 오케스트레이션 하는 도구

  5. 오케스트레이션

    여러 서버에 걸치 컨테이너 및 사용하는 환경 설정을 관리하는 행위