도커의 근간 기술을 이해하기 위해 도커의 역사를 살펴보고, 클러스터 환경으로 컨테이너 환경을 운영하는 쿠버네티스에 대한 핵심 개념에 대해 알아봅니다. 마지막으로 쿠버네티스 클러스터를 손쉽게 생성하고 관리할 수 있는 네이버 클라우드 플랫폼 Kubernetes service를 데모를 통해 소개해드립니다 | To understand Docker's underlying technology, we look at Docker's history and learn about the core concepts of Kubernetis, which operates a container environment in a cluster environment. Lastly, I will introduce Naver's cloud platform Kubernetes service, which allows you to easily create and manage Kubernetes clusters, through a demo.
도커의 근간 기술을 이해하기 위해 도커의 역사를 살펴보고, 클러스터 환경으로 컨테이너 환경을 운영하는 쿠버네티스에 대한 핵심 개념에 대해 알아봅니다. 마지막으로 쿠버네티스 클러스터를 손쉽게 생성하고 관리할 수 있는 네이버 클라우드 플랫폼 Kubernetes service를 데모를 통해 소개해드립니다 | To understand Docker's underlying technology, we look at Docker's history and learn about the core concepts of Kubernetis, which operates a container environment in a cluster environment. Lastly, I will introduce Naver's cloud platform Kubernetes service, which allows you to easily create and manage Kubernetes clusters, through a demo.
도커부터 시작하여 쿠버네티스까지 각 서비스의 기능 및 구성요소에 대해 자세히 소개해 드립니다 | Learn more about the features and components of each service, starting with a Docker and ending with Kubernetes.
2016 아이펀팩토리 Dev Day 발표 자료
강연 제목 : Docker 로 Linux 없이 Linux 환경에서 개발하기
발표자 : 김진욱 CTO
<2016>
- 일시 : 2016년 9월 28 수요일 12:00~14:20
- 장소 : 넥슨 판교 사옥 지하 1층 교육실
이 발표는 [야생의 땅: 듀랑고]의 지형 배포 시스템과 생태계 시뮬레이션 자동화 시스템에 대한 이야기를 다룹니다. 듀랑고의 각 섬은 크기와 지형, 기후 조건이 다양하고 섬의 개수가 많아서 수동으로 관리하는 것은 사실상 불가능합니다. 몇번의 사내 테스트와 베타 테스트를 거치면서 이러한 문제를 해결해주는 자동화된 도구의 필요성이 절실해졌고, 작년에 NDC에서 발표했던 생태계 시뮬레이터와 Docker, 그리고 아마존 웹서비스(AWS)를 이용하여 수많은 섬들을 자동으로 생성하고 관리하는 자동화 시스템을 구축하게 되었습니다. 그 과정에서 했던 고민들, 기존의 애플리케이션을 "Dockerizing" 했던 경험, AWS의 각 서비스들을 적절히 활용했던 이야기, AWS의 각 지역별 요금이 상이하다는 점을 이용해서 비용을 절감한 사례, 그리고 자동화 시스템의 문제점과 앞으로의 방향에 대해서 이야기 할 계획입니다.
이제 컨테이너는 IT 산업 전반에서 빼놓을 수 없는 구성요소로 자리 잡고 있습니다. 이런 컨테이너는 일반적으로 가상화 기술로 소개가 되어 virtual machine과 비교되고 있습니다. 하지만 이런 접근 방법들이 컨테이너를 올바르게 이해하도록 하는데 방해가 될 수도 있다고 생각합니다.
이 세션에서는 컨테이너에 대해서 여러가지 다양한 접근 방법들과 기능들을 살펴보면서 컨테이너에 대해 다시금 생각 해볼 수 있는 시간을 갖고자 합니다. 또한 이를 통해 어떤식으로 실제 production 환경들에서 사용되어질 수 있을지 그리고 이런 모습들로 부터 향후 컨테이너의 발전방향을 이야기 해보려고 합니다.
도커부터 시작하여 쿠버네티스까지 각 서비스의 기능 및 구성요소에 대해 자세히 소개해 드립니다 | Learn more about the features and components of each service, starting with a Docker and ending with Kubernetes.
2016 아이펀팩토리 Dev Day 발표 자료
강연 제목 : Docker 로 Linux 없이 Linux 환경에서 개발하기
발표자 : 김진욱 CTO
<2016>
- 일시 : 2016년 9월 28 수요일 12:00~14:20
- 장소 : 넥슨 판교 사옥 지하 1층 교육실
이 발표는 [야생의 땅: 듀랑고]의 지형 배포 시스템과 생태계 시뮬레이션 자동화 시스템에 대한 이야기를 다룹니다. 듀랑고의 각 섬은 크기와 지형, 기후 조건이 다양하고 섬의 개수가 많아서 수동으로 관리하는 것은 사실상 불가능합니다. 몇번의 사내 테스트와 베타 테스트를 거치면서 이러한 문제를 해결해주는 자동화된 도구의 필요성이 절실해졌고, 작년에 NDC에서 발표했던 생태계 시뮬레이터와 Docker, 그리고 아마존 웹서비스(AWS)를 이용하여 수많은 섬들을 자동으로 생성하고 관리하는 자동화 시스템을 구축하게 되었습니다. 그 과정에서 했던 고민들, 기존의 애플리케이션을 "Dockerizing" 했던 경험, AWS의 각 서비스들을 적절히 활용했던 이야기, AWS의 각 지역별 요금이 상이하다는 점을 이용해서 비용을 절감한 사례, 그리고 자동화 시스템의 문제점과 앞으로의 방향에 대해서 이야기 할 계획입니다.
이제 컨테이너는 IT 산업 전반에서 빼놓을 수 없는 구성요소로 자리 잡고 있습니다. 이런 컨테이너는 일반적으로 가상화 기술로 소개가 되어 virtual machine과 비교되고 있습니다. 하지만 이런 접근 방법들이 컨테이너를 올바르게 이해하도록 하는데 방해가 될 수도 있다고 생각합니다.
이 세션에서는 컨테이너에 대해서 여러가지 다양한 접근 방법들과 기능들을 살펴보면서 컨테이너에 대해 다시금 생각 해볼 수 있는 시간을 갖고자 합니다. 또한 이를 통해 어떤식으로 실제 production 환경들에서 사용되어질 수 있을지 그리고 이런 모습들로 부터 향후 컨테이너의 발전방향을 이야기 해보려고 합니다.
저번 시간에 CI/CD에 대해서 간단하게 공부해봤으니 이번에는 툴 하나를 정해서 사용해보려고 합니다.
Jenkins, AWS Codepipeline 등 유명한 CI/CD 툴이 많지만 이번에는 github action을 사용해보려고 해요!
전세계적으로 많이 사용되는 github에서 지원하는 CI/CD 기능으로 진행 중인 프로젝트에 아주 간단하게 적용할 수 있는데 같이 공부해봐요!
4. Docker
● “컨테이너 기술”을 활용하여 개발부터 배포까지 도와주는 플랫폼
○ “컨테이너는 소프트웨어 서비스를 실행하는데 필요한 특정 버전의 프로그래밍 언
어 런타임 및 라이브러리와 같은 종속 항목과 애플리케이션 코드를 함께 포함하는
경량 패키지 입니다.”
○ 한눈에 살펴보는 컨테이너 기술의 역사
참고: https://docs.docker.com/get-started/overview/
참고: https://cloud.google.com/learn/what-are-containers?hl=ko
6. “Docker” Network란?
● 컨테이너에서 가상화 된 네트워크 인터페이스
● 컨테이너 간의 연결이 설정된 네트워크
○ bridge network
○ host network
● docker host 간의 연결까지 설정된 네트워크
○ overlay network
11. 실전 문제 1.
기본 docker 네트워크 설정을 사용하고 있
는 docker container에서 127.0.0.1로 요청
을 보내면 해당 요청이 어떻게 처리되는지
알려주세요🙏
(ip 테이블 레벨까지 내려가서 설명해주시면
best!
hint: docker engine network loopback)
12. 실전 문제 2.
도커로 실행한 컨테이너끼리 통신을 하기 위
해서는 어떤 설정이 필요한지 알려주세요🙏
그리고 요청이 실제로 어떻게 처리되는지 알
려주세요🙏
(ip 테이블 레벨까지 내려가서 설명해주시면
best!)
13. 실전 문제 3.
다른 docker host(PC 혹은 클러스터)가 설
정한 네트워크와 연결하고 싶을 때 어떤 방
법을 사용할 수 있는지 알려주세요🙏