반응형 전체 글44 [Kubernetes] AWS Karpenter 완전 정복(CA와의 차이) 저번에는 쿠버네티스의 Cluster AutoScaling을 구현하였지만노드가 초기화되고 준비되는데 오래 걸려 더 빠르게 프로비저닝 할 수 있는Karpenter를 구현했던 내용에 대해서 정리해 보겠다✍. Karpenter란?AWS에서 제공하는 오픈 소스 Kubernetes 클러스터 오토스케일러다.ASG(Auto Scaling Group)기반의 CA와는 달리 Karpenter는 ASG에 의존하지 않고, AWS Fleet API을 사용하여 더 빠른 프로비저닝을 지원한다.심지어 파드를 노드에 배치할 때도 직접 Node-Binding을 하므로 scheduler 동작하지 않아 더 빠르다. Karpenter 도입 계기기존 Cluster Autoscaler를 사용하여 관리형 노드 그룹(Managed NodeGroup.. Kubernetes 2024. 3. 22. [Kubernetes] EKS Cluster AutoScaling 완전 정복(Feat: Terraform, Helm, HPA, Jmeter) Kubernetes 환경의 Node에는 용량에 제한이 있어, 더 이상 생성될 수 없는 Pod는 Pending 상태가 되는데이를 해결하기 위한 방법으로 Node의 리소스를 늘리거나 수를 조절하는 솔루션을 적용하게 된다이 솔루션에 CA(Cluster AutoScaling)과 Karpenter가 있는데 오늘은 CA에 대해서 알아보도록 하자Cluster AutoScaling 이란? Kubernetes에서 클러스터 내 리소스 사용량에 기반하여 노드의 수를 유연하게 조절하는 기술이다 공식문서에서는 pod가 실패하거나 다른 노드로 다시 예약될 때 클러스터의 노드 수를 유연하게 조절한다고 소개하고 있다. Cluster AutoScaling 동작과정 1) Pod가 충분한 리소스를 할당 받지 못해 Pending 상태임.. Kubernetes 2024. 3. 16. [Kubernetes] Service 개념 및 종류 요약 서비스 유형 설명 ClusterIP 클러스터 내부에서만 접근 가능한 서비스로, 내부 통신에 사용됩니다. 고유한 IP 주소를 할당받으며, 외부 네트워크에서는 접근할 수 없습니다. NodePort 클러스터 외부에서 서비스에 접근할 수 있도록 해주며, 모든 노드에 동일한 포트를 할당합니다. 개발 및 테스트 환경에 적합합니다. LoadBalancer 클라우드 제공 업체의 로드 밸런서를 사용하여 외부 트래픽을 자동으로 관리합니다. 고가용성과 대규모 트래픽 처리에 적합합니다. ExternalName 특정 외부 DNS 이름에 대한 참조를 제공합니다. 클러스터 내부에서 외부 리소스에 대한 접근을 간소화합니다. Headless 개별 파드에 직접 접근할 수 있도록 해주며, 서비스를 통하지 않고 직접 개별 파드와 통신.. Kubernetes 2023. 12. 17. [Terraform] 테라폼으로 EKS 프로비저닝 main.tf # AWS 프로바이더 설정: AWS 리소스를 관리하기 위해 지정된 리전을 설정합니다. provider "aws" { region = var.region } # 사용 가능한 가용 영역을 필터링합니다. 이는 관리형 노드 그룹에서 현재 지원되지 않는 로컬 존을 제외하기 위한 것입니다. data "aws_availability_zones" "available" { filter { name = "opt-in-status" values = ["opt-in-not-required"] } } # 클러스터 이름을 지정하는 로컬 변수를 설정합니다. 여기서는 랜덤 문자열을 포함하여 고유한 이름을 생성합니다. locals { cluster_name = "dohyung-eks-${random_string.suff.. Terraform 2023. 12. 14. [Terraform] 테라폼으로 AWS EC2 프로비저닝 실습(예제) 1. 테라폼 설치 및 환경변수 설정 1 -1) 테라폼 설치 https://developer.hashicorp.com/terraform/install?product_intent=terraform Install | Terraform | HashiCorp Developer Explore Terraform product documentation, tutorials, and examples. developer.hashicorp.com 저는 해당 경로에 테라폼 폴더를 따로 만들어 주었습니다. 1 -2) 테라폼 환경변수 설정 1 -3) 테라폼 설치 확인 cmd에서 terraform을 입력하였을 때 아래와 같이 나오면 설치완료된 것입니다. 2. IAM User & ACCESS KEY 등록 2-1) 사용자 추가, ACC.. Terraform 2023. 12. 13. . 보호되어 있는 글 입니다. 2023. 12. 13. [Kubernetes - 파드 실습] 셀렉터, 레이블 활용, 레플리케이션 컨트롤러 & 스케줄링 테스트 저는 이전에 쿠버네티스 클러스터를 생성하면서 대시보드를 구성해 놓았기에 해당 대시보드 환경에서 실습을 진행하겠습니다. 저와 같은 환경에서 실습 하실 분들은 해당 링크를 참고하시면 되겠습니다. https://ddohyung.tistory.com/105 1. POD 생성 apiVersion: v1 kind: Pod metadata: name: pod-1 spec: containers: - name: container1 image: kubetm/p8000 ports: - containerPort: 8000 - name: container2 image: kubetm/p8080 ports: - containerPort: 8080 apiVersion: 쿠버네티스 API의 버전을 지정합니다. 이 경우 v1은 가장 기.. Kubernetes 2023. 12. 12. [Kubernetes] 쿠버네티스 라벨과 셀렉터 1. 쿠버네티스에서 라벨이란? 라벨은 쿠버네티스 오브젝트에 첨부할 수 있는 키-값 쌍의 메타데이터입니다. 이를 통해 사용자는 리소스를 식별하고, 그룹화하며, 선택적인 작업을 수행할 수 있습니다. Key-Value 로 구성된다. 레이블은 사용자가 클러스터내에 객체를 만들때 메타데이터로 붙일 수 있다. 생성된 이후 언제든 수정이 가능하며 코어 시스템에 직접적인 의미는 없습다. 오브젝트마다 Key-Value로 Label을 정의할 수 있으며 Key는 고유한 값이어야 합니다. Label 키가 해당 리소스 내에서 고유하다면 하나 이상 원하는 만큼 Label을 가질 수 있습다. 2. 라벨을 쓰는 이유? 라벨은 리소스를 분류하고, 복잡한 시스템 내에서 특정 오브젝트를 쉽게 찾거나 관리할 수 있게 해줍니다. 예를 들어,.. Kubernetes 2023. 12. 12. [Kubernetes] 쿠버네티스 구성 & Pod 과정 Kubernetes란?컨테이너 오케스트레이션 도구로, 여러 컨테이너들의 생성과 생명주기를 관리하는 운영 프로그램이다. 쿠버네티스 컴포넌트컨트롤 플레인(Control Plane) 쿠버네티스 클러스터의 중앙 제어 및 관리를 담당하는 구성 요소들의 집합이다.각 컴포넌트는 클러스터의 상태를 유지하고 파드의 생명주기를 관리하는 역할을 수행하며, 모든 프로세스의 중심은 API 서버를 중심으로 처리되며, 아래와 같이 구성되어 있다.쿠버네티스 API 서버컨트롤러 매니저 스케줄러etcd 1. 쿠버네티스 API 서버 (kube-apiserver)일종의 '문'이라고 생각하면 쉽다.쿠버네티스 클러스터와의 모든 상호작용을 처리하는 '중심'점이며, 모든 요청을 검증하고 권한을 확인한다.예를 들어, .. Kubernetes 2023. 12. 7. [Kubernetes] 쿠버네티스 클러스터 생성 1. XShell 설치 다운로드 url : https://www.netsarang.com/en/free-for-home-school/ 설치 후 k8s-master(192.168.56.30:22), k8s-node1(192.168.56.31:22), k8s-node2(192.168.56.32:22) IP 등록 2. VirtualBox 설치 (7.0.8 버전) https://www.virtualbox.org/wiki/Downloads Downloads – Oracle VM VirtualBox Download VirtualBox Here you will find links to VirtualBox binaries and its source code. VirtualBox binaries By downloadin.. Kubernetes 2023. 11. 26. [Network] 웹 서버 (Youtube) 접속 과정 전체 과정DNS 조회 및 DHCP 과정을 포함하여 클라이언트가 "WWW.YOUTUBE.COM"를 브라우저에 입력하고 엔터키를 누를 때부터 웹페이지를 로드하는 과정에 대해 자세히 알아보자1. WWW.YOUTUBE.COM 입력 2. DHCP 서버 (Dynamic Host Configuration Protocol) - DORA 클라이언트의 컴퓨터에 IP 주소 및 네트워크 설정 정보를 동적으로 할당한다클라이언트의 컴퓨터는 로컬 네트워크에서 DHCP 서버를 찾아 연결 요청DHCP 서버는 사용 가능한 IP 주소 중 하나를 할당하고, 네트워크 관련 정보를 제공여기서의 네트워크 관련 정보는 클라이언트의 Subnet Mask, Default Gateway, DHCP 서버의 IP 주소 등이 해당된다 2.1 Discove.. Network 2023. 11. 19. [Network] LAN 설계 모델 - Tired 3 Layer, Tired 2 Layer, 이중화 1. T3, T2 비교 요약 구분 티어드 3 레이어 모델(20%) 티어드 2 레이어 모델(80%) 코어 O X 비용 비싸다 저렴하다 가용성 좋다 안 좋다 속도 빠르다 느리다 1.1 비용 효율성: (T3 T2) 네트워크를 끊기지 않고, 계속 유지할 수 있는 특성 (365일 24시간 돌아가야한다) T2의 경우 Distribution 계층의 라우터 1대가 코어 역할을 동시에 수행하기에 해당 라우터가 불능이 되면 전체 통신 마비 T3와 같이 코어가 있는 경우, Distribution계층의 라우터가 코어에 연결되므로 해당 라우터가 죽더라도 해당 라우터가 담당하는 네트워크(건물)만 통.. Network 2023. 11. 19. 이전 1 2 3 4 다음 반응형