Kubernetes 27

kubernetes in action - 01. Introducing Kubernetes

Kubernetes in action 1. Introducing Kubernetes 단일규모의 큰 앱의 다양한 단점 마이크로서비스들의 등장 이들을 오케스트레이션해줄 기능이 필요 적은 수일 경우에는 VM으로도 가능 hardware resources human resources VM 대신 Linux container technologies run multiple services on the same host machine isolating environment like VM; less overhead container는 host의 OS에서 작동하지만 각 프로세스들은 isolated VM과 비교하면? single isolated process running in the host OS, consuming onl..

kubernetes docs: 클러스터 아키텍쳐 - 컨트롤러 (controller)

Controller Kubernetes에서 controler는 클러스터의 상태를 관찰한 후 필요한 경우에 생성 혹은 변경을 요청하는 컨트롤 루프이다. Controller pattern controller는 한개 이상의 리소스 유형을 추적한다. 해당 오브젝트들은 의도하는 상태를 표현하는 필드를 가지고 있고, 이들의 컨트롤러는 그 상태를 의도한 상태에 가깝게 만드는 역할을 한다. 다음와 같은 방법으로 제어 가능 API 서버를 통한 제어 Job controller는 Kubernetes 내장 컨트롤러의 예시. job은 하나 또는 여러 파드를 실행하고, 작업을 수행한 다음 중지하는 Kubernetes 리소스이다. job controller가 새로운 작업을 확인 -> kubelet이 적합한 수의 pod를 실행하게 ..

Kubernetes object - 쿠버네티스 오브젝트

Kubernetes object 쿠버네티스 오브젝트 이해하기 쿠버네티스 오브젝트 는 쿠버네티스 시스템에서 영속성을 가지는 개체 쿠버네티스 오브젝트는 하나의 “의도를 담은 레코드"이다. 오브젝트를 생성하게 되면, 쿠버네티스 시스템은 그 오브젝트 생성을 보장하기 위해 지속적으로 작동 생성이든, 수정이든, 또는 삭제든 쿠버네티스 오브젝트를 동작시키려면, 쿠버네티스 API를 이용해야 한다. 예를 들어, kubectl 커맨드-라인 인터페이스를 이용할 때, CLI는 여러분 대신 필요한 쿠버네티스 API를 호출 오브젝트 명세(spec)와 상태(status) spec을 가진 오브젝트는 오브젝트를 생성할 때 리소스에 원하는 특징(의도한 상태)에 대한 설명을 제공해서 설정한다. status는 오브젝트의 현재 상태 를 기술..

쿠버네티스 기본 개념 (kubernetes conecpt)

개념 쿠버네티스란 무엇인가? 쿠버네티스는 다음을 제공한다. 서비스 디스커버리와 로드 밸런싱: 쿠버네티스는 DNS 이름을 사용하거나 자체 IP 주소를 사용하여 컨테이너를 노출할 수 있다. 컨테이너에 대한 트래픽이 많으면, 쿠버네티스는 네트워크 트래픽을 로드밸런싱하고 배포하여 배포가 안정적으로 이루어질 수 있다. 스토리지 오케스트레이션: 쿠버네티스를 사용하면 로컬 저장소, 공용 클라우드 공급자 등과 같이 원하는 저장소 시스템을 자동으로 탑재 할 수 있다. 자동화된 롤아웃과 롤백: 쿠버네티스를 사용하여 배포된 컨테이너의 원하는 상태를 서술할 수 있으며 현재 상태를 원하는 상태로 설정한 속도에 따라 변경할 수 있다. 예를 들어 쿠버네티스를 자동화해서 배포용 새 컨테이너를 만들고, 기존 컨테이너를 제거하고, 모든..

k8s 문서 - 튜토리얼; 쿠버네티스 기초 학습

https://kubernetes.io/ko/docs/tutorials/kubernetes-basics/ Tutorial: 쿠버네티스 기초 학습 Assumming that minikube is successfully installed Deploying app Create deployment using kubernetes pod는 isolated, private network 되어있기 때문에 proxy를 통해 debug, interact 가능하다. $ minikube start $ kube kubectl create deployment kubernetes-bootcamp --image=gcr.io/google-samples/kubernetes-bootcamp:v1 # starting proxy echo -..

kubernetes로 django 웹서버 띄우기 - minikube, kubectl / django with kubernetes

django with kubernetes ctl https://medium.com/@markgituma/kubernetes-local-to-production-with-django-2-docker-and-minikube-ba843d858817 참고 The foundational concept of Kubernetes is in the management of pods. A pod is one or more containers deployed together as a group within the same physical or virtual host machine colloquially known as a node. Requirements Install minikube minikube는 로컬에서 쉽게 싱글..

tools 2020.03.29

쿠버네티스에서 로컬 이미지 사용하기: Running local docker image in kubernetes

Minikube는 우선적으로 docker image를 pull 해 와서 사용한다. 하지만 보통 개발 공부를 하다 보면 로컬에서 빌드 된 이미지를 사용하여 minikube pod에 띄우는 경우가 많은데, 이런 경우에 image를 찾을 수 없다는 다음 에러를 만나게 된다 (사실 tutorial을 잘 따라하였다면 이런 문제를 만나지 않겠지만) 혹시 비슷한 문제를 겪는 분들을 위해 기록해둔다 $ docker build -t : . $ kubectl run --image=: Failed to pull image "": rpc error: code = Unknown desc = Error response from daemon: pull access denied for cms, repository does not e..

backend 2020.03.20