일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- terraform
- POD
- intervals
- docker
- asgi
- Service
- IAC
- Django
- ebs
- AWS
- event loop
- github
- Python
- WSGI
- asyncio
- EC2
- FastAPI
- YAML
- 쿠버네티스
- K8S
- ansible
- Deployment
- elasticsearch
- EKS
- dockerfile
- DevOps
- leetcode
- IAM
- Kubernetes
- 자바스크립트
- Today
- Total
목록K8S (17)
궁금한게 많은 개발자 노트
container와 virtual macinecontainer는 운영체제 수준의 가상화 기술로 호스트 운영체제와 리눅스 커널을 공유하면서도 프로세스를 격리된 환경에서 실행하는 기술입니다. 하드웨어를 가상화하는 가상 머신과 달리 커널을 공유하는 방식이기에 실행 속도가 빠르고 성능 상의 손실이 거의 없습니다. 컨테이너의 격리는 리눅스 네임스페이스, cgroup 등의 커널 기능을 활용하여 이루어집니다. 이러한 격리 기술 덕분에 호스트 머신에서는 프로세스로 인식되지만, 컨테이너 관점에서는 독립적인 환경을 가진 가상 머신처럼 동작됩니다. VM은 하이퍼바이저라는 것이 존재하며 리소스에 대한 액세스를 효율적으로 관리하여 가상 머신을 개별 서버로 활용할 수 있도록 해줍니다. 하이퍼바이저를 통하여 물리적 하드웨어를 가상..
안녕하세요. 오늘 포스팅에서는 Kubernetest에서 Node Auto Scaling방식에 대해 알아보고, 대표적인 방식인 Cluster AutoScaler(CAS)와 Karpenter에 대해 비교를 해보려 합니다 😎✔ 우선 , 비교적 오래전부터 사용되고 있었던 Cluster AutoScaler(이하 CAS)에 대해 알아보고, 동작 방식에 대해서도 정리해보겠습니다. 기본적으로 해당 포스팅에서 설명하는 Cloud Service Provisioner(CSP)는 AWS를 기준으로 작성됨을 참고 부탁드립니다!! AWS EKS(Elastic Kubernetes Service)의 경우에는 Kubernetes의 기본 CAS와 EC2 Auto Scaling Group(ASG)의 기능을 활용하여 Node Auto Sc..
쿠버네티스 Pod는 하나 이상의 컨테이너를 포함할 수 있습니다. Pod를 구성하는 Container가 실행되기 전에 사전 작업이 필요한 경우, 해당 Container들이 정상동작하기 위해 미리 필요한 작업을 수행하는 Container가 있는데 이를 Init Container라고 부릅니다. Init Container가 성공적으로 수행되어야 Pod를 구성하는 컨테이너들의 동작, 즉 Pod가 목적으로 하는 작업을 수행할 수 있습니다. 앱 컨테이너 실행 전에 미리 동작시킬 컨테이너 본 컨테이너가 실행되기 전에 사전 작업이 필요할 경우 사용 초기화 컨테이너가 모두 실행된 후에 앱 컨테이너를 실행 https://kubernetes.io/ko/docs/concepts/workloads/pods/init-contain..
쿠버네티스상에 서버나 앱서비스를 배포할 때, Persistent Volume을 마운트해야 하는 경우가 종종 있습니다. 이전에 쿠버네티스에서 Persistent Volume사용하기라는 글을 게시한 적이 있는데, 해당 게시글에서는 Persistent Volume으로 AWS EBS(Elastic Block Store)를 사용하였습니다. 이처럼 컨테이너화된 애플리케이션이 동작할 때 데이터 지속성을 위해 외부 Storage에 대한 액세스가 필요할 수 있습니다. 고가용성과 확장성을 보장하기 위해 EKS를 사용하고 S3를 외부 Storage로 사용한다면 다양한 환경에서도 원활하게 서비스를 제공할 수 있을 것입니다. 특히 MLOps환경에서 GenAI의 경우에는 매우 큰 LLM Model을 Container내부에 가져가..
쿠버네티스는 크게 Control Plane(Master node)과 Data plane에 속하는 Worker Node로 구성되어 있습니다. Pod가 생성되는 과정을 통해 전반적인 구조를 살펴보면, kubectl을 통해 Master Node에 존재하는 kube-api server에게 Pod생성 요청을 보내고, api-server는 해당 요청이 타당한지 검증하게 됩니다. 검증 후 etcd에게 node들에 대한 정보를 요청하게 되고, 전달 받은 정보를 바탕으로 scheduler에게 생성하려는 Pod가 어떤 Workder 노드에 할당되면 좋을 지에 대해 선택을 요청합니다. 그러고 난 후 적절한 Worker Node의 kubelet에 해당 Pod 생성 명령을 내리게 되고, kubelet은 해당 Worker Nod..