본문 바로가기

kubernetes

(4)
PaaS vs. CaaS PaaS PaaS가 나오기 전에 개발팀은 개발한 어플리케이션에 대해서 인프라를 구축하고 유지해야 했다. PaaS는 어플리케이션이 실행되는 플랫폼을 제공하기에 개발자에게는 전례없는 민첩성을 제공했다. PaaS는 생산성을 향상 시켰지만, 개발자의 선택을 제한 시켰다. 그러나 이런 제약에도 불구하고 인프라를 구축하고 유지해야 했던 기존 단점을 상쇄시키기에 충분 했기에 오랜 기간동안 많은 기업에서 선호했었다. 강점 개발자에게 작업에 대한 오버 헤드가 발생하지 않음, 개발자는 코드만 집중할 수 있고 어플리케이션은 자동으로 배포됨 12 factor 어플리케이션에 적합 단점 기본적으로 Stateless 어플리케이션만 지원 벤더를 기준으로 Resource가 제한 될 수 있음 사용 편의성이 유연성을 희생 시킴 많은 Pa..
Kubernetes vs Mesos with Marathon (기술적 관점) 이전 포스팅에서 Kubernetes와 Mesos에 대한 사업적 관점에서 비교를 했었습니다. 본 글에서는 기술적 관점에서의 비교글을 작성합니다. Kubernetes Kubernetes는 컨테이너 어플리케이션의 automating deployment, scaling 및 관리를 위한 오픈 소스 시스템입니다. Kubernetes의 아키텍처는 아래와 같습니다. Kubernetes Cluster와 관련된 구성 요소들은 아래와 같습니다. etcd: etcd는 분산 key-value store이고, Kubernetes에서는 Master Node의 API Server가 HTTP/JSON API를 이용하여 접근할 수 있는 구성 데이터를 저장하는 용도로 사용됩니다. API Server: Master Node의 Hub입니다...
Kubernetes vs. Mesos: 어느 Container Orchestrator를 사용해야 할까? (사업 관점) 다른 용도로 사용되는 10개의 컨테이너가 있다고 가정한다면, 많은 인스턴스를 사용하고 이러한 컨테이너를 실행하는 것은 매우 쉽습니다. 어플리케이션이 커지면서 배포한 컨테이너 수가 점점 증가하면 서로 다른 버전, 네트워크 구성을 가진 수천 개의 컨테이너를 관리할 때는 상황이 애매해집니다. 컨테이너에 의존하는 개발 기술을 사용하는 회사의 경우, 이러한 유형의 아키텍처를 확장하는 문제가 발생합니다. 오케스트레이션 인프라 스트럭처의 요점은 컨테이너를 “스케줄링”하는 간단한 방법을 제공하고 기본 인프라가 나머지를 수행하도록 하는 것입니다. 이것이 오케트스레이션의 핵심입니다. Kubernetes, Mesos, ECS, Swarm 그리고 Nomad와 같이 5개의 툴이 존재합니다. 이 도구중 어떤 도구를 사용할지에 대..
Kubernetes란 무엇인가? Kubernetes는 구글에서 공개한 리눅스 컨테이너 관리 시스템입니다. 일반적으로 Docker Orchestrator라고 표현합니다. 얼마전 우리 회사에서 Kubernetes를 활용한 프로젝트가 있어서, 궁금하기에 조사해봤습니다. Docker를 이용하는 Machine이 Single일 경우에는 Orchestration에 대해서 고민할 필요가 없습니다. Docker client의 command를 사용하여 Single host에 대해서만 관리를 하면 되기 때문이죠. 저도 개인적으로는 이렇게 사용하고 있습니다. 하지만, 두대 이상의 Host상에서 Docker가 존재할 경우에는 얘기가 달라집니다. 사용자가 요청한 Docker 컨테이너를 어느 Host에 설치해야할까? 라는 고민이 시작됩니다. 결국, Manual하..