aws
cheat sheet
computer science
container
crawling
dart
database
django
docker
git
golang
graphql
hr
http
iac
java
kubernetes
map
monitoring
nestjs
network
node
oop
python
security
serverless
storage
terraform
ttbkk
typescript,javascript
ux
validation
minikube 소개 k8s를 사용하기 위해서는 master 노드 2개와 worker 노드 3개가 필요하고 이들을 연결해야하는데, 로컬에서 테스트하는 환경에서는 이러한 작업이 매우 힘들기 때문에, minikube라는 친구를 사용해서 로컬에서 작업을 합니다. minikube는 master process와 worker process 모두를 가지고 있는 one node cluster입니다. 아래의 두 링크중 하나를 선택하고, 아래의 과정을 이어서 진행하면 됩니다. minikube start | minikube minikube 설치 Hello Minikube | Kubernetes 웹 터미널에서 가볍게 해보기 kubectl 소개 k8s의 api server와 인터렉션 할수 있는 방법은 UI대시보드, CLI툴, API 직접호출 이렇게 세가지가 있는데, 이중 CLI를 맡고있는 것이 kubectl입니다. kubectl은 minikube뿐만 아니라, 모든 k8s…
이전 글에 이어서 작성합니다. 쿠버네티스의 Node에는 master, slave 이렇게 두가지 타입이 있습니다. 클러스터 내부에서 master와 slave Node가 각각 어떤 역할을 하는지 알아봅시다. 그리고 이를 통해 쿠버네티스가 어떻게 수동적인 관리 없이 셀프 매니징, 셀프 힐링을 하는지 알아보겠습니다. Worker Node 각 Node에는 여러개의 Pod들이 존재합니다. Pod을 관리하는 모든 노드에는 필수로 설치되어야 하는 3개의 프로세스가 있습니다. 1. container runtime 컨테이너를 동작시키기 위한 프로그램입니다. 예를 들어, docker와 같은 프로세스를 컨테이너 런타임이라고 합니다. 2. kubelet Kubelet은 Pod에서 컨테이너가 확실하게 동작하도록 관리합니다. 3. kubeproxy Service에서 Pod으로 요청을 넘겨주기 위한 process입니다. kubeproxy는 overhead를 줄이기 위한 처리들을 해줍니다. 예를 들어, A와 B…
쿠버네티스 관련 괜찮은 영상이 있어서 시청 하면서 메모한 내용을 정리해두고자 합니다. k8s란? 쿠버네티스(kubernetes, 또는 k8s)는 구글이 만든 오픈소스 컨테이너 오케스트레이션 툴로, 컨테이너 애플리케이션의 관리를 돕습니다. 물리서버, 클라우드서버 등의 다양한 환경에서 사용이 가능합니다. 아래의 케이스에 해당되는 경우, 고려해볼 수 있습니다. 트렌드에 따라 모노리틱 아키텍처(Monilithic Architecture)에서 마이크로 서비스 아키텍처(Microservice Architecture, 또는 MSA)로의 전환을 하고 싶은 경우. 컨테이너의 사용이 증가하는 경우. 수백개의 컨테이너를 잘 관리하고 싶은 경우. k8s는 다음의 기능들을 제공합니다. downtime이 없는 High Availability(HA) 스케일링 높은 퍼포먼스 장애 회복 (disaster recovery) k8s…
container 생태계의 변화 2013년 Docker가 처음으로 세상에 나타난 이후 IT업계는 정말 크게 변했습니다. 어플리케이션의 배포단위는 이제 war, jar, zip 등이 아니라 Docker 이미지가 되었고 Docker를 사용할 수 있는 환경이기만 하면 어플리케이션은 Windows에서든, Ubuntu에서든 동일하게 동작하였습니다. Docker의 이러한 특성을 이용해 수백 수천대의 서버를 운영하는 환경에서 Docker를 도입하는 사례들이 늘어나기 시작했습니다. 하지만 포맷과 런타임에 대한 특정한 규격이 없다 보니 컨테이너의 미래는 불안했습니다. 도커가 사실상의 컨테이너 표준 역할을 했지만 코어OS(CoreOS)는 도커와는 다른 규격으로 표준화를 추진하려 했습니다. 이때 Docker Engine에는 API, CLI, 네트워크, 스토리지 등 많은 기능들이 하나의 패키지에 담겨있었고, Docker 측에서는 Monolithic한 Docker Engine…