Kubernetes
-
[Kubernetes] last-applied-configuration annotation 알아보기Kubernetes 2024. 4. 20. 17:18
- 목차 키워드.annotations last-applied-configuration ?이번 글에서는 k8s 리소스의 Annotation 중의 하나인 "kubectl.kubernetes.io/last-applied-configuration" 에 대해서 알아보려고 합니다.last-applied-configuration 어노테이션은 "kubectl apply" 명령어로 생성된 k8s 리소스의 어노테이션 중의 하나이구요.가장 최근의 kubectl apply 명령어를 통해서 생성 또는 수정된 Configuration 정보가 들어있습니다.간단한 예시를 들어보도록 하겠습니다. cat /tmp/pod.yamlapiVersion: v1kind: Podmetadata: name: nginxspec: containe..
-
[Kubernetes] HPA 알아보기 ( Horizontal Pod Autoscaler )Kubernetes 2024. 2. 16. 22:56
- 목차 들어가며. 이번 글에서는 Kubernetes 의 HPA (Horizontal Pod Autoscaler) 에 대해서 알아보는 시간을 가지려고 합니다. ReplicaSet 또는 Deployment 로 여러 개의 Pod 를 손쉽게 운용할 수 있습니다. 이는 HA 의 관점에서 안정적으로 Pod 를 일정 갯수만큼 유지시키는 Kubernetes 의 기능인데요. 이들은 반드시 일정 갯수라는 제한이 있기 때문에 리소스의 부하 상태에 따라 유연히 Scale In/Out 이 불가능합니다. Kubernetes 에서는 이러한 관점에서 Autoscaler 를 제공합니다. HPA 세팅하기. HPA 는 CPU 또는 메모리의 상황에 따라서 유연하게 Pod 가 Scale In/Out 됩니다. 실제로 테스트를 통해서 Kube..
-
[Kubernetes] QoS 알아보기 (Quality of Service)Kubernetes 2024. 2. 4. 08:54
- 목차 들어가며.이번 글에서는 쿠버네티스의 QoS 에 대해서 알아봅니다. QoS 는 Quality of Service 의 약자인데요."서비스의 품질" 와 같이 해석할 수 있지만, 쿠버네티스의 관점에서 설명하자면 Pod 의 생존을 보장하는 정도를 나타냅니다.( 구체적으로는 Pod 가 Eviction 되는 가능성을 낮추는 정도인데요. 아래에서 자세히 설명하도록 하겠습니다. )Pod 는 특정 Node 에 스케줄링되어 실행되고, Pod 의 내부에서 컨테이너들이 실행됩니다.컨테이너의 갯수는 하나 또는 그 이상일 수 있습니다. (일반적으로 1개의 Pod 는 1개의 컨테이너를 가집니다.)컨테이너는 CPU 와 메모리에 대해서 사용량을 제한할 수 있는데요. 이는 request 와 limit 나뉘어..
-
[KinD] KinD Cluster 로 Docker Image 업로드하기 (kind load docker-image)Kubernetes 2024. 2. 3. 09:12
- 목차 들어가며.이번 글에서는 KinD 로 생성된 k8s Cluster 내부로 Docker Image 를 Upload 하는 방법에 대해서 알아보도록 하겠습니다.KinD Cluster 는 Docker Hub 나 Harbor, ECR 등의 원격 이미지 레지스트리가 아닌 로컬에서 테스트 중인 도커이미지를 취급하는 경우가 존재합니다.이 과정에서 KinD 의 image Upload 명령어를 통해서 로컬의 도커 이미지를 KinD Cluster 내부로 업로드할 수 있습니다. KinD Cluster 생성하기.아래 링크는 KinD 로 k8s Cluster 를 실행시키는 방법에 대한 전반적인 설명을 다룹니다.https://westlife0615.tistory.com/407 KinD 알아보기.- 목차 소개. KinD 는 ..
-
Kubernetes Deployment 알아보기Kubernetes 2024. 1. 9. 17:27
- 목차 함께 보면 좋은 글. https://westlife0615.tistory.com/412 Kubernetes ReplicaSet 알아보기 - 목차. 함께보면 좋은 글. https://westlife0615.tistory.com/210 Kubernetes Pod 이해하기 소개 Pod는 쿠버네티스의 가장 기본적인 구성요소입니다. 컨테이너 환경을 오케스트레이션하는 쿠버네티스 입장에서 westlife0615.tistory.com https://westlife0615.tistory.com/407 KinD 알아보기. - 목차 소개. KinD 는 "카인드" 라고 발음되며, 로컬 머신에서 쿠버네티스를 간편하게 실행할 수 있는 도구입니다. KinD 는 Kubernetes in Docker 의 약자이구요. Dock..
-
Kubernetes PersistentVolumeClaims (PVC) 알아보기Kubernetes 2024. 1. 8. 06:49
- 목차 함께 보면 좋은 글. https://westlife0615.tistory.com/221 Kubernetes Ephemeral Volume 소개 어플리케이션이 다루는 데이터나 파일의 성격에 따라서 저장소의 종류가 두가지로 나뉩니다. 영구적이어야하는가? 일회성이어도되는가? 영구적인 저장소를 필요로하는 어플리케이션의 westlife0615.tistory.com 들어가며. 쿠버네티스는 Pod 가 데이터를 저장하는 방식을 크게 두 부류로 나누었습니다. 하나는 Ephemeral Volume 이고, 나머지 하나는 Persistent Volume 입니다. Ephemeral Volume 은 Pod 와 라이프사이크을 함께하는 볼륨인데요. Pod 가 Node 의 파일시스템 일부를 임시적으로 사용하는 형태입니다. P..
-
[Kubernetes] PodDisruptionBudget 알아보기 (PDB)Kubernetes 2024. 1. 6. 06:38
- 목차 Pod Disruption 이란 ? Pod Disruption 은 Pod 가 종료되는 상황을 의미합니다. 또한 시스템 상에서 Pod 가 종료되는 케이스를 크게 두가지로 나누는데요. Voluntary Disruption, Involuntary Disruption 으로 나눕니다. Voluntary Disruption 는 "자발적인 종료", "의위적인 종료", "의도적인 종료" 와 같이 해석할 수 있을 것 같습니다. 반면 Involuntary Disruption 은 Voluntary Disruption 에 반대되는 의미를 가지며, 시스템, 하드웨어 이슈 등에 의한 Pod 의 종료를 의미합니다. Node 가 실행되는 서버에 문제가 발생하여 Node 가 종료되고, Node 위에서 실행되던 Pod 들은 I..
-
ArgoWorkflow Parallel Nested Dag 구현하기 ( with Kubernetes )Kubernetes 2024. 1. 3. 04:31
- 목차 함께 보면 좋은 자료. https://westlife0615.tistory.com/407 KinD 알아보기. - 목차 소개. KinD 는 "카인드" 라고 발음되며, 로컬 머신에서 쿠버네티스를 간편하게 실행할 수 있는 도구입니다. KinD 는 Kubernetes in Docker 의 약자이구요. Docker 를 활용하여 쿠버네티스 환경을 구성 westlife0615.tistory.com https://westlife0615.tistory.com/516
-
[Kubernetes] Argo Workflows 시작하기Kubernetes 2023. 12. 28. 20:22
- 목차 소개. Kubernetes 환경에서 Argo Workflow 를 구축하는 과정에 대해서 간단히 알아보려고 합니다. KinD 로 Local k8s 환경 만들기. https://westlife0615.tistory.com/407 KinD 알아보기. - 목차 소개. KinD 는 "카인드" 라고 발음되며, 로컬 머신에서 쿠버네티스를 간편하게 실행할 수 있는 도구입니다. KinD 는 Kubernetes in Docker 의 약자이구요. Docker 를 활용하여 쿠버네티스 환경을 구성 westlife0615.tistory.com 위 페이지를 통해서 간단히 KinD 로 로컬 환경에 Kubernetes 를 세팅할 수 있습니다. 위 페이지의 내용을 간단히 요약하면 아래와 같습니다. 1. kubernetes co..
-
Kubernetes Nginx Ingress 알아보기Kubernetes 2023. 12. 16. 00:39
- 목차 소개. Ingress 는 Kubernetes 환경을 외부 네트워크와 연결하는 창구역할을 합니다. Kubernetes 내부의 Pod 들은 서로의 IP 를 기반으로 통신을 수행하는데요. Kubernetes 외부에서 특정 Pod 와의 연결은 불가능합니다. Ingress 는 이러한 소통을 가능하게 하는 Kubernetes 리소스이며, 이번 글에서 Nginx 을 기반으로하는 Nginx Ingress 에 대해서 설명하려고 합니다. Ingress 란 ? Ingress 는 Kubernetes 외부에서 Kubernetes 내부로의 통신을 가능하게 도와주는 Kubernetes Resource 입니다. 네트워크 관점에서 Ingress 와 Egress 라는 개념이 존재합니다. Ingress 는 Inbound Netw..