본문 바로가기

k8s85

Karpenter의 k8s 효율적인 자원관리 karpenter는 node를 정리 및 통합하는 디-프로비저닝(de-provisioning) 메커니즘이 있다.pod가 별로 없거나 놀고 있는 node를 정리하여 비용을 아낄 수 있겠다.1. Consolidation (통합)기능: consolidation은 클러스터 내에서 자원이 비효율적으로 사용되고 있을 때, 노드를 통합하여 자원을 최적화하는 기능작동 방식:Karpenter가 클러스터 내의 자원 사용률을 모니터링자원 사용률이 낮은 노드들에서 실행 중인 파드를 다른 노드로 이동할 수 있는지를 체크이동이 가능하다면, 자원이 덜 사용되고 있는 노드들을 통합하여 불필요한 노드를 종료❓ 어떤 노드를 통합할지는 Karpenter 내부 최적화 알고리즘에 의해 결정되는 것 같다.  spec: consolidation.. 2024. 9. 27.
[K8S] Secret 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번에는 Secret 에 대해 알아보겠습니다! Secret 쿠버네티스 시크릿은 애플리케이션에서 사용되는 중요한 정보나 데이터를 안전하게 저장하고 관리하는데 사용되는 쿠버네티스 리소스입니다. 이 정보는 주로 비밀번호, API 토큰, 데이터베이스 연결 정보와 같은 민감한 데이터로 이루어져 있습니다. 시크릿은 Base64로 인코딩되어 저장되지만, 보안을 위해 암호화되지는 않습니다. 쿠버네티스 시크릿은 환경 변수, 볼륨, 이미지 등 다양한 형태로 애플리케이션에 주입될 수 있습니다. 이를 통해 코드나 설정 파일에 민감한 정보를 직접 하드코딩하지 않고도, 쿠버네티스 클러스터에서 관리할 수 있어서 보안 및 유지보수 측면에서 도움을 줍니다. 실습을 통해 더 자세하게 알아.. 2024. 1. 24.
[K8S] Rollout 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 Rollout 에 대해 알아보겠습니다! Rollout 롤아웃(rollout) 은 애플리케이션의 업데이트나 변경 사항을 안전하게 배포하는 프로세스를 말합니다. 새로운 버전의 애플리케이션을 배포하고 이전 버전과의 전환을 원활하게 관리하면서 롤백이나 각종 상태 모니터링을 지원합니다. 일반적으로 'kubectl rollout' 명령어를 사용하여 이러한 배포 프로세스를 관리할 수 있습니다. 이러한 방식은 무중단 배포와 서비스의 안정성을 높이는 데 도움이 됩니다. 실습을 통해 더 자세하게 알아보겠습니다. Rollout 실습 이번 실습도 KillerCoda 에서 따라해보아요. https://killercoda.com/ Killercoda Interactive .. 2024. 1. 8.
[K8S] ConfigMap 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 ConfigMap에 대해 알아보겠습니다! ConfigMap 컨피그맵(configmap)은 컨테이너에서 필요한 환경설정 내용을 컨테이너와 분리해서 제공해 주기 위한 기능입니다. 개발용과 운영용에서는 서로 다른 설정이 필요한 경우가 많습니다. 이렇게 다른 설정을 가지고 실행을 해야할때 사용하는 것이 컨피그맵입니다. 컨피그맵을 컨테이너와 분리해 둠으로써 하나의 동일한 컨테이너를 가지고 개발용, 스테이지용, 운영용으로 모두 사용하는 것이 가능해 집니다. 컨피그맵의 내용을 컨테이너의 환경변수로 주는 것뿐만 아니라 다른 방식으로 사용할수도 있습니다. 볼륨형식으로 컨테이너에 붙여서 파일로 컨테이너에 제공해 주는게 가능합니다. config-volume라는 볼륨을.. 2023. 12. 8.
[K8S] CronJob 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 CronJob에 대해 알아보겠습니다! CronJob CronJob은 주기적으로 특정 동작을 수행하고 종료하는 배치 작업을 정의하기 위한 리소스예요. 리눅스 크론 스케쥴링 방법으로 사용해요. 내부적으로 Job을 생성하여 작업을 수행하는데, 이때 Job은 내부적으로 Pod를 만들어요. 주기적으로 데이터를 백업하거나 데이터 점검 및 알림 전송 등의 목적으로 사용할 수 있어요. CronJob 실습 이번 실습도 KileerCoda 에서 따라해보아요. https://killercoda.com/ Killercoda Interactive Environments Learn DevOps Linux Kubernetes CKS CKA CKAD Git Cassandra .. 2023. 11. 25.
[K8S] Environment 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 Environment에 대해 알아보겠습니다! Environment 쿠버네티스에서는 파드를 생성할 때, 파드 안에서 동작하는 컨테이너를 위한 환경 변수를 설정할 수 있어요. 환경 변수를 설정하려면 구성 파일에 env 나 envFrom 필드를 포함시켜야해요. 간단한 실습을 통해 같이 알아보아요~ Environment 실습 이번 실습도 KileerCoda 에서 따라해보아요. https://killercoda.com/ Killercoda Interactive Environments Learn DevOps Linux Kubernetes CKS CKA CKAD Git Cassandra etc | Katacoda compatible killercoda.com .. 2023. 11. 12.
[k8s] container runtime 변경 ( → containerd) 안녕하세요. 이쁜이와 멋쟁이의 BTC_기범입니다. 오늘은 container runtime에 대해서 이야기 해보겠습니다. Container runtime이란? 컨테이너 런타임은 실제로 프로그램 자체를 실행하지 않는 컨테이너를 실행하는 모든 부분을 담당하는 부분입니다. 또한 namespace와 cgroups를 설정하고 그 namespace 안에서 명령을 실행하는 역할을 합니다 Container runtime의 종류 lxc runc lmctfy cri-o containerd docker Container runtime 변경( → containerd) containerd 설치 아래 링크에서 원하는 버전의 containerd를 설치합니다. https://github.com/containerd/containerd/.. 2023. 11. 10.
K8S Probe 안녕하세요. 할배즈...입니다. 오늘은 K8S Probe에 대해 알아보겠습니다. 1. 쿠버네티스의 Probe란? 쿠버네티스에서는 컨테이너가 정상적으로 동작하는지 확인하기 위한 메커니즘을 제공하고 있는데, 이를 Probe라고 합니다. Probe에는 세 가지 종류가 있는데, 그 중에서 오늘은 Readiness Probe와 Liveness Probe에 대해 알아볼 예정입니다. 2. Readiness Probe란? Readiness Probe는 컨테이너가 요청을 처리할 준비가 되었는지를 확인하는 역할을 합니다. 즉, 컨테이너가 서비스를 수행할 준비가 되었는지를 판단하는 지표입니다. 만약 Readiness Probe가 실패한다면, 쿠버네티스는 해당 컨테이너에 트래픽을 보내지 않습니다. 3. Liveness Pro.. 2023. 11. 10.