컨테이너 역사 – chroot 부터 Kubernetes 까지
컨테이너 기술의 시작과 현재까지 발전해온 역사를 살펴봅니다.컨테이너의 역사는 1979 년에 chroot가 탄생 한 것으로부터 시작합니다. chroot는 이름 그대로 “root (/) 디렉토리 (기준이되는 디렉토리) 변경 (change)” 하는 것 입니다.
컨테이너 기술의 시작과 현재까지 발전해온 역사를 살펴봅니다.컨테이너의 역사는 1979 년에 chroot가 탄생 한 것으로부터 시작합니다. chroot는 이름 그대로 “root (/) 디렉토리 (기준이되는 디렉토리) 변경 (change)” 하는 것 입니다.
급변하는 비즈니스 환경에서 성공하려면 기업들은 애플리케이션 설계, 구축 그리고 운영하는 방식을 바꿔야 합니다. 클라우드 네이티브 애플리케이션 개발은 클라우드 컴퓨팅 기술을 기반으로 애플리케이션을 구축, 실행 및 개선하는 접근 방식입니다.
최근 주목을 받고있는 차세대 가상화 기술이 “ 컨테이너 ”입니다. 컨테이너 기반의 오픈소스 플랫폼들은 하이브리드 클라우드 구현과 DevOps 그리고 마이크로서비스 아키텍처를 구현하기 위한 필수적인 기술로 자리잡고 있습니다.
개발자와 컨테이너 기술이 주는 주요한 장점은 아래와 같습니다. 신속한 개발환경 구축, 작은 시스템 자원으로 개발 환경 구축, 모든 개발자팀에게 동일한 환경 제공, 개발/테스트/스테이징/운영 환경을 동일하게 구성 , DevOps 에, 마이크로서비스 아키텍
디지털 트랜스포메이션 (Digital Transformation : DX) 은 디지털 기술을 활용하여 기업과 사회를 더 좋은 방향으로 “변화”하는 것이라고 정의할 수 있습니다. 최신의 디지털 기술을 이용하여 지금까지 없었거나 불가능했던 일들을 실현하여 세상을 변화시키는 것입니다. 컨테이너는 더 낮은 비용으로 애플리케이션을보다 효율적으로 개발함으로써 DevOps에 더 집중할 수 있습니다. 테스트와 환경 구성 그리고 트러블슈팅 같은 고질적인 수작업 중심의 IT 문제에 집중하지 않고 비즈니스 성장에 도움이되는 애플리케이션 개발에 더 많은 시간을 할애 할 수 있습니다.
1980년대 메인프레임에서 시작해서 최근에 컨테이너 기술을 근간으로하는 Cloud Native 까지의 IT트랜드 를 살펴 봅니다. IT인프라 는 IT (Information Technology) Infrastructure 의 줄임말로 기업의 IT 환경을 운영하고 관리하는데 필요한 구성요소들 입니다. 이러한 구성 요소에는 하드웨어, 소프트웨어, 네트워킹 구성 요소, 운영 체제(OS), 데이터 스토리지가 있으며 모두 IT 서비스 및 솔루션을 제공하는 데 사용됩니다.
Covid-19로 인하여 불가피하게 시작된 EBS 온라인 클래스! 어려운 환경에서도 EBS와 IT 전문가들이 비상대책단 상황실 상시 운영과 24시간 시스템 모니터링 체제를 가동하였다. 그 와중에 오픈마루 APM이 서버에 대한 신속하고 적절한 TroubleShooting을 제공한 것이 큰 역할을 했다는 평가를 받았다.
OPENMARU APM 관계자는 앞으로도 학생들이 온라인 학습을 어려움 없이 할 수 있도록 지원을 아끼지 않겠다고 전했다.
OPENSHIFT4 발표 자료를 공유합니다. OpenShift4는 자동화된 풀스택 오퍼레이션으로 엔터프라이즈 쿠버네티스를 확장하여 하이브리드 클라우드 및 멀티클라우드 배포를 관리합니다. CoreOS 기반 , 쿠버네티스 오퍼레이터 자동화, 서비스 메쉬, KNative 지원합니다.
마이크로서비스는 애플리케이션 구축을 위한 아키텍처 기반의 접근 방식입니다. 마이크로서비스를 전통적인 모놀리식(monolithic) 접근 방식과 구별 짓는 기준은 애플리케이션을 핵심 기능으로 세분화하는 방식입니다. 각 기능을 서비스라고 부르며, 독립적으로 구축하고 배포할 수 있습니다. 이는 개별 서비스가 다른 서비스에 부정적 영향을 주지 않으면서 작동(또는 장애가 발생)할 수 있음을 의미합니다.
최근에는 Docker로 대표되는 LXC (Linux Containers) 와 같은 컨테이너형 가상화쪽으로 화제가 옮겨가고 있습니다.
컨테이너형 가상화 기술은 기존의 가상화 기술보다 가벼워 지고, 이식성이 뛰어난 특징을 가지고 있습니다.
Linux 컨테이너는 실행에 필요한 모든 파일을 포함하여 전체 런타임 환경에서 애플리케이션을 패키지화하고 분리하는 기술입니다. 이를 통해 전체 기능을 유지하면서 컨테이너화된 애플리케이션을 환경(개발, 테스트, 생산 등) 간에 쉽게 이동할 수 있습니다.