2021.01.27

IDG 블로그 | 쿠버네티스가 답이 아닐 때

David Linthicum | InfoWorld
쿠버네티스는 많은 환경에서 견실한 해법을 제공하는 강력한 최신 기술이다. 내로라하는 기업이 모두 쿠버네티스 관련 기술을 선택한 것으로 보일지 모르겠지만, 모든 애플리케이션에 맞는 기술은 아니다. 어떤 기술이 이렇게 많은 지지자를 확보하면, 해당 기술을 사용하는 것이 이미 정해진 결론이 되기도 한다. 하지만 바로 이때 실수가 생기고 프로젝트가 탈선한다.
 
ⓒ Getty Images Bank

클라우드 기반 플랫폼으로 이전하려는 기업 대부분은 컨테이너와 쿠버네티스 사용을 생각한다. 클라우드를 사용하는 기업의 많은 수가 이미 쿠버네티스를 사용하고 있다. 쿠버네티스는 마이크로서비스를 포함해 분산 시스템을 좀 더 쉽게 관리하고 확장할 수 있는 많은 자원을 제공한다. 또한 오케스트레이션 시스템으로, 프로세스와 서비스를 묶어 좀 더 크고 통일적인 솔루션으로 구축할 수 있다.

공식 쿠버네티스 문서화 웹 사이트에 제시된 것처럼, “쿠버네티스는 복구성 있는 분산 시스템을 구동하는 프레임워크를 제공한다. 쿠버네티스는 애플리케이션의 확장과 페일오버를 관리하며, 배치 패턴 등을 제공한다.”

자동화와 오케스트레이션은 쿠버네티스를 이용하는 주된 이유 중 하나이다. 그런데 자동화와 오케스트레이션은 종종 혼동되기도 한다. 자동화는 소프트웨어나 하드웨어가 특정 작업을 수행하는 데 인력의 개입을 줄이거나 제거해 비즈니스 프로세스를 더 효율적으로 만드는 것이다. 예를 들어, 자동화는 어떤 프로세스에서 특정 원료의 공급이 일정 수준 이하인 것을 발견하면 자동으로 원재료를 재주문하는 프로세스를 실행할 수 있다.

이와는 달리 오케스트레이션은 워크플로우를 자동화한다. 오케스트레이션은 정해진 순서와 활동이 지켜지도록 하는 것이 주된 역할이며, 워크플로우의 일부인 단일 작업의 자동화를 시작할 수도 있다. 오케스트레이션은 쿠버네티스의 강력한 무기로, 서로 다른 시스템에 걸쳐 데이터베이스를 액세스해야 하는 서비스를 가능하게 해준다.

지금의 문제는 많은 개발자와 아키텍트가 오케스트레이션 엔진을 사용해 프로세스를 자동화하려고 쿠버네티스를 선택한다는 것이다. 대형 망치로 압정을 두드리는 꼴이다. 단순하고 구체적인 문제를 풀려고 개발과 클라우드 자원에 너무 많은 돈을 들이는 셈이다.

또 하나 간과하기 쉬운 문제는 쿠버네티스 자체가 복잡한 시스템이라는 것이다. 쿠버네티스는 전문 지식이 필요하고, 때에 따라 위험성이 높아질 수도 있다. 컨테이너도 알고 네트워크도 알고 보안과 복구성, 이식성 등등 성공적인 쿠버네티스를 위해서는 알아야 할 것이 너무나 많다.

쿠버네티스는 전통적인 가상화 환경이 아니라는 점을 잊지 말기 바란다. 이런 기술력이 없으면 쿠버네티스 기반 시스템의 구축과 배치, 운영 전과정에서 애를 먹을 것이며, 프로젝트는 실패하기 쉽다. 실패한 프로젝트를 사후 분석해 보면, 선택한 플랫폼과 툴이 너무 복잡하다는 것을 알게 된다. 문제의 애플리케이션은 기존 인력이 이미 알고 있는 기술로 더 적은 수의 저렴한 툴로 쉽고 저렴하게 구축할 수도 있었다.

마지막은 비용이다. 필자는 이미 여러 차례 쿠버네티스는 항상 애플리케이션을 구축하고 배치하고 운영하는 값비싼 방법이 될 것이라고 말한 바 있다. 최근에는 가트너를 포함해 많은 전문가가 필자의 이런 의견에 동의했다.

여기서는 복잡성이 유발하는 비용을 차지해두자. 쿠버네티스를 기반으로 애플리케이션을 구축하는 큰 이유 중 하나는 이식성이다. 상당히 기본적인 개념이다. 이식성은 구현하면 좋지만, 이전에는 없었던 비용이 든다. 가트너는 “쿠버네티스이건 아니건, 애플리케이션 이식성은 언제나 반드시 지불해야 하는 비용이 든다”며, 이식성 세금(portability tax)이란 용어를 만들어 내기도 했다.

쿠버네티스의 경고라고 생각하지는 말자. 그보다는 쿠버네티스의 한계를 이해하고 올바른 용도로 이용할 것으로 촉구하는 메시지일 것이다. 정확한 기술 지식이 쿠버네티스의 장기적인 성공을 보장하기 때문이다. editor@itworld.co.kr


2021.01.27

IDG 블로그 | 쿠버네티스가 답이 아닐 때

David Linthicum | InfoWorld
쿠버네티스는 많은 환경에서 견실한 해법을 제공하는 강력한 최신 기술이다. 내로라하는 기업이 모두 쿠버네티스 관련 기술을 선택한 것으로 보일지 모르겠지만, 모든 애플리케이션에 맞는 기술은 아니다. 어떤 기술이 이렇게 많은 지지자를 확보하면, 해당 기술을 사용하는 것이 이미 정해진 결론이 되기도 한다. 하지만 바로 이때 실수가 생기고 프로젝트가 탈선한다.
 
ⓒ Getty Images Bank

클라우드 기반 플랫폼으로 이전하려는 기업 대부분은 컨테이너와 쿠버네티스 사용을 생각한다. 클라우드를 사용하는 기업의 많은 수가 이미 쿠버네티스를 사용하고 있다. 쿠버네티스는 마이크로서비스를 포함해 분산 시스템을 좀 더 쉽게 관리하고 확장할 수 있는 많은 자원을 제공한다. 또한 오케스트레이션 시스템으로, 프로세스와 서비스를 묶어 좀 더 크고 통일적인 솔루션으로 구축할 수 있다.

공식 쿠버네티스 문서화 웹 사이트에 제시된 것처럼, “쿠버네티스는 복구성 있는 분산 시스템을 구동하는 프레임워크를 제공한다. 쿠버네티스는 애플리케이션의 확장과 페일오버를 관리하며, 배치 패턴 등을 제공한다.”

자동화와 오케스트레이션은 쿠버네티스를 이용하는 주된 이유 중 하나이다. 그런데 자동화와 오케스트레이션은 종종 혼동되기도 한다. 자동화는 소프트웨어나 하드웨어가 특정 작업을 수행하는 데 인력의 개입을 줄이거나 제거해 비즈니스 프로세스를 더 효율적으로 만드는 것이다. 예를 들어, 자동화는 어떤 프로세스에서 특정 원료의 공급이 일정 수준 이하인 것을 발견하면 자동으로 원재료를 재주문하는 프로세스를 실행할 수 있다.

이와는 달리 오케스트레이션은 워크플로우를 자동화한다. 오케스트레이션은 정해진 순서와 활동이 지켜지도록 하는 것이 주된 역할이며, 워크플로우의 일부인 단일 작업의 자동화를 시작할 수도 있다. 오케스트레이션은 쿠버네티스의 강력한 무기로, 서로 다른 시스템에 걸쳐 데이터베이스를 액세스해야 하는 서비스를 가능하게 해준다.

지금의 문제는 많은 개발자와 아키텍트가 오케스트레이션 엔진을 사용해 프로세스를 자동화하려고 쿠버네티스를 선택한다는 것이다. 대형 망치로 압정을 두드리는 꼴이다. 단순하고 구체적인 문제를 풀려고 개발과 클라우드 자원에 너무 많은 돈을 들이는 셈이다.

또 하나 간과하기 쉬운 문제는 쿠버네티스 자체가 복잡한 시스템이라는 것이다. 쿠버네티스는 전문 지식이 필요하고, 때에 따라 위험성이 높아질 수도 있다. 컨테이너도 알고 네트워크도 알고 보안과 복구성, 이식성 등등 성공적인 쿠버네티스를 위해서는 알아야 할 것이 너무나 많다.

쿠버네티스는 전통적인 가상화 환경이 아니라는 점을 잊지 말기 바란다. 이런 기술력이 없으면 쿠버네티스 기반 시스템의 구축과 배치, 운영 전과정에서 애를 먹을 것이며, 프로젝트는 실패하기 쉽다. 실패한 프로젝트를 사후 분석해 보면, 선택한 플랫폼과 툴이 너무 복잡하다는 것을 알게 된다. 문제의 애플리케이션은 기존 인력이 이미 알고 있는 기술로 더 적은 수의 저렴한 툴로 쉽고 저렴하게 구축할 수도 있었다.

마지막은 비용이다. 필자는 이미 여러 차례 쿠버네티스는 항상 애플리케이션을 구축하고 배치하고 운영하는 값비싼 방법이 될 것이라고 말한 바 있다. 최근에는 가트너를 포함해 많은 전문가가 필자의 이런 의견에 동의했다.

여기서는 복잡성이 유발하는 비용을 차지해두자. 쿠버네티스를 기반으로 애플리케이션을 구축하는 큰 이유 중 하나는 이식성이다. 상당히 기본적인 개념이다. 이식성은 구현하면 좋지만, 이전에는 없었던 비용이 든다. 가트너는 “쿠버네티스이건 아니건, 애플리케이션 이식성은 언제나 반드시 지불해야 하는 비용이 든다”며, 이식성 세금(portability tax)이란 용어를 만들어 내기도 했다.

쿠버네티스의 경고라고 생각하지는 말자. 그보다는 쿠버네티스의 한계를 이해하고 올바른 용도로 이용할 것으로 촉구하는 메시지일 것이다. 정확한 기술 지식이 쿠버네티스의 장기적인 성공을 보장하기 때문이다. editor@itworld.co.kr


X