분류 전체보기(256)
-
Kubernetes Cluster Upgrade, 제대로 이해하기
본 포스팅에서는 Kubernetes 클러스터를 업그레이드하는 방법에 대해 이해하는 목표를 가집니다. 🔗 Kubernetes Series모든 Kubernetes 시리즈를 확인하시려면 위를 참고해 주세요. Versioning🔗 Kubernetes releases 쿠버네티스는 표준 소프트웨어 릴리스 버전 관리 절차를 따릅니다.쿠버네티스의 첫 번째 Major 버전인 1.0 은 2015년에 발표되었고, 최근 버전은 1.30 (2024-04-17) 입니다. Semantic Versioning: MAJOR.MINOR.PATCH MAJOR version : when you make incompatible API changesMINOR version: when you add..
13:19:55 -
Kubernetes, 제대로 이해하기
Kubernetes Deep Dive 중, 시리즈 연재 중입니다.모든 게시글은 이곳에서 확인할 수 있습니다. 📌 Kubernetes SeriesK8s Architecture, 제대로 이해하기Kubernetes Architecture, 제대로 이해하기 - Control PlaneKubernetes Architecture, 제대로 이해하기 - Worker NodeKubernetes Deployment, 제대로 이해하기Kubernetes Taints & Tolerations, 제대로 이해하기Kubernetes Affinity, 제대로 이해하기Kubernetes Scheduler, 제대로 이해하기Kubernetes Resource & Limit, 제대로 이해하기Kubernetes D..
2024.04.16 -
Kubernetes ConfigMap & Secret, 제대로 이해하기
본 포스팅에서는 Kubernetes의 환경변수를 구성하는 방법인 ConfigMap & Secret 의 개념을 이해하고 적용할 수 있도록 하는 목표를 가집니다. 🔗 Kubernetes Series 모든 Kubernetes 시리즈를 확인하시려면 위를 참고해 주세요. 쿠버네티스를 사용하면서, 환경에 따라 다르거나 자주 변경되는 설정 옵션들을, 실행되는 애플리케이션 코드와 분리시키고 싶을 때가 생깁니다. 환경 변수를 정의하면서 이를 해결할 수 있는데요. 본 포스팅에서는 쿠버네티스에서 환경변수를 설정할 수 있는 총 세가지의 방법을 소개해드리고자 합니다. Environment Variables 🔗 Official: Configuration Container Runtime 중 대표적인 Docker에서 환경변수를 입력..
2024.04.16 -
Kubernetes RollingUpdate & Rollbacks, 제대로 이해하기
본 포스팅에서는 Kubernetes의 RollingUpdate의 개념을 이해하는 목표를 가집니다. 🔗 Kubernetes Series 모든 Kubernetes 시리즈를 확인하시려면 위를 참고해 주세요. 지난 포스팅에서 Deployment에 대해 알아보았습니다. 다시 짚어보자면, Deployment는 이름 그대로, 쿠버네티스에서 배포를 위한 객체입니다. 기능적으로는, Pod와 ReplicaSet를 배포를 관리합니다. 이번 포스팅에서는 배포 이후의 업데이트 과정을 다뤄보겠습니다. 앱 버전 1을 배포한 상태에서 버전 2로 업데이트할 때를 생각해보겠습니다. 5개의 Pod가 떠 있는 상태에서 해당 Pod 를 어떻게 교체해야 할까요?또, 교체되는 과정이 어떻게 될지 살펴보도록 하겠습니다. Rollout Deploy..
2024.04.07 -
Kubernetes DaemonSet, 제대로 이해하기
본 포스팅에서는 Kubernetes의 DaemonSet의 개념을 이해하는 목표를 가집니다. 🔗 Kubernetes Series 모든 Kubernetes 시리즈를 확인하시려면 위를 참고해 주세요. DaemonSets DaemonSet은 일부 혹은 모든 노드에 동일한 Pod (copy of a Pod) 가 하나씩 실행되도록 보장합니다. 클러스터에 새 노드가 추가될 때마다 Pod 복제본이 자동으로 해당 노드에 추가되고, 노드가 제거되면 Pod는 Garbage Collection의 대상이 되어 자동으로 제거됩니다. 대부분의 일반적인 경우엔, ReplicaSet과 Deployment을 통해 여러 Worker Node에서 애플리케이션을 복제하면서, Cluster 내 다양한 노드에 다양한 포드를 배포할 수 있었습니다..
2024.04.01 -
Kubernetes Resources, 제대로 이해하기
본 포스팅에서는 Kubernetes의 Resources 를 제한하고 보장받을 양을 지정하는 방법을 익힙니다. 🔗 Kubernetes Series 모든 Kubernetes 시리즈를 확인하시려면 위를 참고해 주세요. Resource Management for Pods and Containers 모든 Pod를 운영하려면 자원이 필요하며, 모든 노드엔 사용 가능한 CPU와 메모리 리소스를 가지고 있습니다. 쿠버네티스 스케줄러는 Pod에 요구되는 리소스 양을 고려하여, 노드에서 사용 가능한 리소스에 따라 Pod가 배치될 최적의 노드를 결정합니다. 이때, 노드에 배치할 Pod를 지정 시, 컨테이너에 필요한 각 리소스의 양을 선택적으로 지정할 수 있는데요. 대표적인 리소스에는, CPU와 메모리(RAM) 등이 있습니다..
2024.04.01