DevOps
-
kubernetes Tutorials 3. Pods 와 NodesDevOps/Kubernetes 2020. 5. 1. 03:13
학습 목표 1. 쿠버네티스 Pods 가 무엇인지 2. 쿠버네티스 Nodes가 무엇인지 3. 배포한 App에 트러블 슈팅하는 방법 Kubernetes Pods 란? 앞 시간에 Deployment를 만들었고 쿠버네티스는 Pods를 만들어서 이 App 인스턴스를 호스팅 해주게 된다. 하나 또는 여러 App 컨테이너 그룹을 추상화 한 개념이 이 Pods이다. 도커 같은 컨테이너 뿐 아니라 그런 컨테이너들이 사용하는 리소스들 까지 통틀어서 Pods라는 개념이 되는 것이다. 리소스들에는 Shared storage, 볼륨, 네트워킹, Pods하나 당 IP address, 이미지 버전이나 컨테이너들이 사용하는 포트 등 이 있다. Pods는 App에 특화된 논리적인 호스트를 모델링한 것이다. 따라서 여러 다른 App 컨..
-
kubernetes Tutorials 2. kubectl을 사용해서 배포하기DevOps/Kubernetes 2020. 4. 27. 21:39
목표 : kubectl을 통해 App을 쿠버네티스에 배포해보자 쿠버네티스 배포 일단 동작하는 쿠버 네티스 클러스터가 있으면 컨테이너화 App을 그 위에다 배포할 수 있다. 그렇게 하려면 쿠버 네티스 배포 설정을 만들어야 한다. 배포 설정은 쿠버 네티스가 어떻게 그 App의 인스턴스들을 만들고 갱신해야 하는지를 알려주는 역할을 한다. 따라서 일단 Deployment를 만들면 쿠버네티스 마스터가 App의 인스턴스들을 각각의 노드에 스케쥴링을 하는 방식이다. App의 인스턴스가 만들어지면 쿠버네티스 Deployment 컨트롤러는 지속적으로 그 인스턴스를 모니터링한다. 만약 노 드가 다운되거나 삭제되면 컨트롤러가 다른 노드에다 배포하거나 하는 방식. 그렇게 함으로써 self-healing 방식을 제공 한다. 첫..
-
kubernetes Tutorials 1. 미니큐브 사용해보기DevOps/Kubernetes 2020. 4. 22. 22:27
쿠버 네티스를 통해 클러스터 관리나 컨테이너화 된 App을 관리할 수 있다. 최종적인 학습목표 1. 어떻게 컨테이너화 된 (도커화 된) App을 클러스터에 배포할까 도커 이미지로 만든 것들은 어떻게 클러스터에 배포할 수 있을까 ( Docker swarm이 아닌 쿠버 네티스에 배포 ) 2. 어떻게 배포 인스턴스를 늘리거나 줄이는 스케일을 할 수 있을까 3. 어떻게 새 버전을 배포하고 디버깅 하는지 튜토리얼에 보면 Katacode라는 것을 통해 가상 머신을 웹 브라우저에서 진행할 수 있다고 한다. 따라서 미니큐브(조그 만한 쿠버 네티스)를 웹 브라우저에서 실행하여 따로 설치가 필요 없이 Interactive 하게 진행해보자. 쿠버 네티스로 무엇을 할 수 있을까? 요즈음 대부분의 사용자들은 웹 서비스에 무중단..
-
Docker docs.1 Dockerfile로 도커 이미지 만들기DevOps/Docker 2020. 4. 22. 22:07
도커는 개발자들과 시스템 관리자들을 위한 플랫폼으로서 컨테이너를 통해 App을 개발하고 배포하고 실행할 수 있는 플랫폼이다. App을 배포할 때 사용하는 리눅스 컨테이너들을 containerization이라고 부르게 되는데 컨테이너들은 App을 좀 더 쉽게 개발하는데 도움을 준다. 몇가지 특징들 Flexible : 복잡한 App들도 containerization 할 수 있으니 유연하고 Lightweight : 호스트 커널을 공유해서 컨테이너 이미지 띄우는데 이전 VM ware 돌리는 것에 비해 가볍기 때문 Interchangeable : 업데이트가 쉬우며 Portable : 로컬에서 만든 것을 클라우드에 배포하든 어디든 잘 돌아가며 Scalable : 컨테이너를 자동으로 배포 숫자를 늘리기 쉬우며 Sta..