6월, 2023의 게시물 표시

kubectl 명령어로 쿠버네티스 클러스터 상의 이벤트를 확인하는 방법

쿠버네티스는 클러스터에서 벌어지는 다양한 이벤트들에 대한 정보를 제공하는 Event 정보를 제공합니다. 이러한 이벤트 정보는 kubectl 명령어를 이용하여 조회할 수 있습니다. kubectl get events 그런데 이렇게만 실행하면 현재 지정된 기본 Namespace에 대한 이벤트가 출력됩니다. 그래서 클러스터의 모든 Namespace에 대한 이벤트 정보를 확인하려면 옵션을 추가해야 합니다. kubectl get events -A 한편 이벤트가 발생한 시간은 정렬되어 있지 않은 상태입니다. 만약 이벤트 시간을 기준으로 데이터를 정렬하여 조회하려면 다음과 같은 옵션을 추가합니다. kubectl get events --sort-by=.metadata.creationTimestamp -A

쿠버네티스의 등장 배경과 주요 특징

최근 IT 업계의 개발자나 운영자라면 쿠버네티스를 직접 사용하고 있거나, 사용하지 않더라도 쿠버네티스라는 단어를 한번 정도는 들어보았을텐데요. 오늘은 쿠버네티스가 왜 등장하게 되었고, 어떤 특징을 가지고 있는지 간단히 알아보겠습니다. 쿠버네티스는 과거 구글 내부에서 사용하던 Borg를 기반으로 발전한 도구입니다. 2015년에 버전 1.0이 발표되었고 이후 지금까지 CNCF(Cloud Native Computing Foundation)에서 관리하고 있습니다. CNCF는 리눅스 재단(Linux Foundation) 및 구글, IBM, 레드햇, 도커, 인텔, 시스코, 트위터, 이베이 등의 기업들이 설립한 비영리 단체로 컨테이너를 포함한 클라우드 네이티브 기술 발전을 목표로 합니다. 현재 CNCF 산하에는 100개가 넘는 프로젝트가 있는데, CNCF의 첫 프로젝트가 바로 쿠버네티스입니다. 또한 컨테이너 이미지 저장소인 하버(Harbor), 쿠버네티스 패키지 매니저인 헬름(Helm), 시스템 모니터링을 위한 프로메테우스(Prometheus) 등도 CNCF 프로젝트입니다.  쿠버네티스는 다음과 같은 특징을 지니고 있습니다. 이 글의 원문(전체보기)은 이곳에서 확인할 수 있습니다.

쿠버네티스 모니터링이 어려운 이유

쿠버네티스를 잘 관찰하기 위해서는 다양한 지점의 모니터링을 동시에 수행해야 합니다. 쿠버네티스 클러스터에 특이한 이벤트가 발생하고 있지 않는가? 노드 컴포넌트의 각 노드(서버)들은 모두 정상상태를 유지하면서 컨트롤 플레인과 통신하고 있는가? 문제가 발생하였거나 CPU, Memory를 과다하게 사용하는 파드는 없는가? 배포는 정상적으로 이루어지고 신규 버전의 파드는 지정한 컨테이너 이미지를 잘 사용하고 있는가? 컨테이너 로그 내용에 특이한 메시지는 없는가? 특히 쿠버네티스 상에서 실행 중인 자바, PHP, Node.js, 파이썬 등의 애플리케이션 상태를 확인하지 않고는 쿠버네티스 모니터링을 하고 있다고 할 수 없습니다. 애플리케이션의 응답시간, TPS, 에러율은 정상적인가? 애플리케이션 로그에 특이사항은 없는가? 애플리케이션의 개별 트랜잭션에 대한 추적은 가능한가? 여러 컨테이너(파드)에 걸쳐 실행되는 멀티 트랜잭션에 대한 추적 및 분석은 가능한가? 단지 데이터의 수집과 저장으로 끝나는 것이 아닙니다. 다양한 경로를 통해 수집한 데이터들을 통합적인 시각에서 바라보아야 합니다. 즉 Observability 측면의 통합 대시보드가 필요합니다.  지금 바로  와탭 계정을 만들고  15일 동안 무료로 쿠버네티스 모니터링을 시작해보세요. 와탭 쿠버네티스는 어떠한 모니터링 자원없이도 시작할 수 있는 SaaS (Software as a Service) 제품입니다.

와탭 쿠버네티스 모니터링이 안될 때 팁 - 에이전트 상태 확인

안녕하세요. 와탭 쿠버네티스입니다. 와탭 쿠버네티스 모니터링은 사용자 환경에 설치된 에이전트에 의해 이루어집니다. 따라서 무언가 모니터링이 안된다면 가장 먼저 확인해봐야 할 것이 모니터링 에이전트의 상태입니다. 와탭 쿠버네티스 에이전트는 마스터 에이전트와 노드 에이전트로 구성되어 있습니다. 마스터 에이전트 (whatap-master-agent) 노드 에이전트 (whatap-node-agent) 1. 마스터 에이전트 상태 확인 마스터 에이전트는 whatap-monitoring 네임스페이스에 디플로이먼트로 배포됩니다. 따라서 kubectl get deployments 명령어로 디플로이먼트 목록을 확인할 수 있습니다. kubectl get deployments -n whatap-monitoring 마스터 에이전트에는 whatap-master-agent 라는 레이블이 달려있습니다. 해당 레이블을 이용하여 마스터 에이전트 파드를 살펴보겠습니다. kubectl get pods -l=name=whatap-master-agent -n whatap-monitoring 2. 노드 에이전트의 상태 확인 노드 에이전트는 마스터와 에이전트와 마찬가지로 whatap-monitoring 네임스페이스에 있지만 데몬셋 형태로 배포된다는 차이점이 있습니다. 따라서 kubectl get daemonsets 명령어로 데몬셋 목록을 확인할 수 있습니다. kubectl get daemonsets -n whatap-monitoring 노드 에이전트에는 whatap-node-agent 라는 레이블이 달려 있습니다. 해당 레이블을 이용하여 노드 에이전트 파드를 살펴보겠습니다. kubectl get pods -l=name=whatap-node-agent -n whatap-monitoring 설치 가이드 영상 을 보면 더욱 쉽게 와탭 쿠버네티스 모니터링을 설치할 수 있습니다.

와탭 쿠버네티스 모니터링 설치 가이드

이미지
안녕하세요. 와탭 쿠버네티스입니다. 오늘은 유튜브 영상을 통해 와탭에 접속하여 모니터링 프로젝트를 생성하고, 사용자 환경에서 와탭 모니터링을 설치하는 방법을 소개하도록 하겠습니다. 와탭 쿠버네티스 모니터링은 와탭 계정 생성 후 바로 시작할 수 있습니다. 계정 생성은 이메일 인증만으로 가능하며, 결제 수단을 등록하지 않아도 15일 간의 트라이얼 사용이 가능합니다.