쿠버네티스는 무료로 다운로드하고 실행할 수 있지만, 소유하는 데는 전혀 비용이 들지 않습니다. 단순한 의미에서만 "무료"인 다른 주요 오픈 소스 플랫폼과 마찬가지로 Kubernetes는 배포 및 운영에 비용이 들 가능성이 매우 높습니다.
얼마나 많은 비용이 드는지는 Kubernetes를 어떻게 배포하고, 어떤 도구와 프로세스를 사용하여 관리하는지 등 다양한 요소에 따라 달라집니다. 일부 조직의 경우 Kubernetes는 거의 무료입니다. 어떤 사람들에게는 독점 소프트웨어 플랫폼을 사용하는 것보다 총 비용이 훨씬 더 많이 들 수도 있습니다.
Kubernetes가 팀에 얼마나 많은 비용을 초래할지 평가하는 데 도움이 되도록, 이 문서에서는 Kubernetes 비용에 영향을 미치는 요인과 Kubernetes의 전체 비용을 결정하는 방법을 설명합니다.
Kubernetes 설치의 총 비용을 계산하려면 Kubernetes 비용에 영향을 미치는 각 요소를 고려해야 합니다. 모든 상황에 적용되는 것은 아니지만, 비용 효율적인 Kubernetes 전략을 설계할 때 고려해야 할 변수입니다.
예를 들어 Linux와 달리 완전히 무료이고 커뮤니티에서 지원하는 Kubernetes 배포판이라는 것은 없습니다. (Red Hat이 후원하는 커뮤니티 배포판인 OKD는 예외일 수 있습니다.) 대신 다양한 상업용 Kubernetes 배포판이 있습니다. 대부분은 소규모 클러스터에 대해서는 무료 계층을 제공하지만, 프로덕션 등급 설치 및/또는 전문 지원 서비스에 대해서는 요금을 청구합니다.
따라서 쿠버네티스를 사용할 때 고려해야 할 첫 번째 비용 요소는 사용하는 배포판과 관련된 라이선스 비용입니다. 12개 이하의 노드로 구성된 클러스터를 실행할 계획이 아니라면 배포 비용을 지불해야 합니다.
쿠버네티스를 실행하려면 서버가 필요합니다. 해당 서버를 노드로 바꾸고 이를 사용해 클러스터를 구축합니다.
노드는 온프레미스 서버에 있을 수도 있고, 클라우드 기반 서버에 있을 수도 있습니다. 어느 쪽이든 당신은 그 비용을 지불하게 될 것입니다.
당연히 Kubernetes 인프라와 관련된 비용 구조는 사용하는 서버 종류에 따라 달라집니다. 온프레미스 하드웨어의 경우 사전 구매 비용이 많이 들지만, 그 이후에는 비교적 적은 지속적인 유지 관리 비용이 발생합니다. 클라우드 서버의 경우 사전 자본 비용은 없지만, 매월 지속적인 수수료를 지불하게 됩니다.
직접 관리하는 가상 머신을 사용하여 클라우드에서 Kubernetes를 실행하는 경우 (대부분의 경우) 노드에 전원을 공급하는 가상 서버에 대한 비용뿐만 아니라 데이터 유출과 관련된 네트워킹 요금도 지불해야 합니다.
일반적으로 대부분의 데이터를 동일한 클라우드 내에 보관하는 클러스터의 경우 이러한 비용은 비교적 낮습니다. 하지만 클라우드에서 많은 양의 데이터를 전송하는 애플리케이션을 호스팅하기 위해 Kubernetes를 사용하는 경우 해당 유출 비용이 누적됩니다.
마찬가지로, Kubernetes 데이터를 호스팅하려면 스토리지 비용을 지불해야 합니다. 상태 비저장 앱만 실행하면 데이터 저장 요구 사항과 비용이 적습니다. 하지만 수 기가바이트 규모의 데이터를 수집하거나 생성하는 앱의 경우, 이를 모두 호스팅할 온프레미스 스토리지 미디어에 비용을 지불하거나 클라우드 스토리지 서비스에 호스팅해야 합니다.
Kubernetes 데이터도 백업하고 싶을 것입니다. 이렇게 하면 데이터의 여러 사본을 보관해야 하므로 전체 저장 비용이 쉽게 두 배 또는 세 배로 늘어날 수 있습니다.
귀하의 팀은 Kubernetes 클러스터를 유지 관리하는 데 시간을 투자해야 합니다. 얼마나 많은 시간을 소모하는지는 Kubernetes 배포판이 얼마나 많은 유지 관리 및 관리 지원을 제공하는지에 따라 달라집니다. Canonical Kubernetes나 OpenShift Dedicated와 같은 일부 배포판은 광범위하고 완전 관리형 Kubernetes 서비스를 제공합니다. 기본 OpenShift와 같은 다른 솔루션의 경우 유지 관리 부담의 대부분은 사용자에게 있습니다.
Platform9와 같은 타사 Kubernetes 관리 서비스를 사용하여 관리 워크플로의 대부분을 자동화할 수도 있습니다. 하지만 엔지니어는 여전히 경영에 참여해야 합니다. 완전히 핸즈오프된 Kubernetes 환경이란 존재하지 않습니다.
따라서 Kubernetes를 관리하는 데 필요한 직원의 업무 시간과 관련된 비용은 상당히 다를 수 있지만 항상 존재할 것입니다.
클러스터에 애플리케이션을 더 빨리 배포할수록 Kubernetes에서 더 많은 가치를 얻을 수 있으며 Kubernetes 전략의 비용 효율성이 높아집니다. 그러한 이유로 배포 프로세스가 어떤지, 얼마나 수동적인지, 하루나 일주일에 얼마나 많은 릴리스를 처리할 수 있는지에 대해 생각해 보는 것이 좋습니다. 이는 어느 정도 무형의 비용이지만, 일주일에 한 번의 배포만 관리할 수 있는 애플리케이션 배포 파이프라인의 경우 하루에 한 번 이상 배포하는 파이프라인보다 배포당 비용이 훨씬 더 많이 듭니다.
쿠버네티스는 서버, 네트워크, 스토리지 솔루션, 직원이 모두 무료로 업무를 수행하는 경우에만 무료입니다. 하지만 실제로는 그렇지 않을 가능성이 큽니다. 그렇기 때문에 Kubernetes 전략을 실행하기 전에 Kubernetes 비용에 영향을 미치는 다양한 요소를 평가하고 사용하는 접근 방식이 비용을 최소화하고 클러스터에서 필요한 성능을 달성할 수 있는지 확인하는 것이 중요합니다.
볼테라가 도와드릴 수 있습니다. Volterra는 어떤 유형의 인프라를 사용하여 호스팅하든(단일 클라우드, 멀티 클라우드 또는 온프레미스) 모든 Kubernetes 클러스터를 모니터링하기 위한 앱 및 인프라 관리 플랫폼을 제공함으로써 Kubernetes를 계획하고 관리할 때 많은 추측작업을 제거합니다. Volterra를 사용하면 Kubernetes 클러스터가 완전히 무료가 되지는 않습니다. 여전히 인프라, 라이선스, 직원 시간에 대한 비용은 지불해야 하지만 Kubernetes를 배포하고 관리하는 데 필요한 노력을 줄이는 동시에 애플리케이션 배포 속도를 높일 수 있습니다. 그 결과, 전체 Kubernetes 비용이 낮아지고 전반적인 가치가 높아집니다.