분류 전체보기 145

[k8s] 명령어 8개로 가장 빠르게 클러스터 생성하고 쿠버네티스 모니터링까지

Introduction 쿠버네티스는 뛰어난 기능을 제공하지만, 처음 시작하기는 조금 복잡할 수 있습니다. 하지만 Minikube를 이용하면 로컬 환경에서 손쉽게 쿠버네티스 클러스터를 만들 수 있습니다. 이번에는 단 아래의 8개의 명령어로 클러스터를 만들고, 가장 빠르게 모니터링까지 하는 방법에 대해 안내하겠습니다. 쿠버네티스를 처음 다뤄보는 분들에게는 Minikube가 정말 좋은 선택일 거예요. Minikube를 사용하면 로컬 환경에서 간단하게 쿠버네티스 클러스터를 만들 수 있답니다. 설치 전 요구 사항 Docker Desktop 설치 Docker Desktop은 Minikube에서 로컬 Kubernetes 클러스터를 실행하기 위해 필요합니다. 먼저 Docker Desktop을 설치해야 해요. 공식 Do..

DevOps/k8s 2024.02.16

[docker] Docker Swarm을 활용한 NFS Volume 생성과 서비스 배포

Introduction Docker Swarm을 활용하여 NFS(Network File System) Volume을 생성하고 서비스를 배포하는 방법에 대해 알아보겠습니다. 이를 통해 여러 Docker 노드 간에 데이터를 공유하고 분산된 서비스를 운영할 수 있습니다. NFS란? NFS(Network File System)은 리눅스와 유닉스 계열 운영체제에서 사용되는 분산 파일 시스템입니다. 파일 및 디렉토리를 네트워크를 통해 다른 컴퓨터에 공유할 수 있게 해주는 프로토콜입니다. Docker Swarm 이란? Docker Swarm은 Docker 컨테이너 오케스트레이션 도구 중 하나로, 여러 Docker 호스트를 하나의 가상화된 호스트로 관리하는 기능을 제공합니다. Swarm을 통해 여러 노드에 걸쳐 컨테이..

DevOps/docker 2024.02.01

[Helm] Helm Chart 생성하기 1편

Helm과 Helm Chart란? Helm은 Kubernetes 애플리케이션을 관리하기 위한 패키지 관리자이며, Helm Chart는 Kubernetes 리소스를 정의하고 패키징하는 방법을 담은 템플릿입니다. 이를 통해 반복적인 작업을 줄이고 표준화된 배포를 가능하게 합니다. 실습 환경 설정 먼저 간단한 환경을 설정해봅시다. 터미널에서 다음과 같이 명령어를 입력하여 빈 Helm Chart를 생성합니다. helm create myfirstchart 이 명령어는 **myfirstchart**라는 이름의 Helm Chart를 생성합니다. 이제 이 Chart를 편집하면서 Helm의 기본 개념을 익혀보겠습니다. 간단한 ConfigMap 만들기 실습의 시작은 간단한 ConfigMap을 만들어서 Helm Chart에..

DevOps 2024.01.24

Kubernetes 환경에 Prometheus와 Grafana를 설치하고 통합하기

Introduction 안녕하세요. 오늘은 Kubernetes 환경에 Prometheus 및 Grafana를 설치하고 통합하는 단계를 자세히 안내하겠습니다. 이를 통해 클러스터의 모니터링 및 시각화를 손쉽게 구성할 수 있습니다. Prometheus 설치 Prometheus를 설치하기 위해 Helm 차트를 사용합니다. #Helm Repo 추가 helm repo add prometheus-community #Helm을 사용하여 프로메테우스 설치 helm install prometheus prometheus-community/prometheus Pod 확인 설치가 완료되면 다음 명령어를 사용하여 프로메테우스 관련 Pod가 정상적으로 배포되었는지 확인합니다. kubectl get pods Prometheus 서..

DevOps/k8s 2024.01.24

[Network] traceroute을 사용한 네트워크 실습

내 컴퓨터에서 구글까지 9개의 네트워크 대역이 지나간걸 알 수 있다. 보통 10개에서 15개 안에서 전세계가 연결될 수 있다고 한다. 이렇게 여러 네트워크들이 연결되어있는 걸 WAN(Wide Area Acess) 이라고 한다. daeunkim@Daeunui-MacBookPro ~ % traceroute 8.8.8.8 traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets 1 10.160.136.1 (10.160.136.1) 4.773 ms 4.382 ms 4.317 ms 2 * * * 3 100.70.61.181 (100.70.61.181) 7.073 ms 7.091 ms 7.885 ms 4 10.63.252.236 (10.63.252.236) 5...

네트워크와 CS 2024.01.04

2023-12-25 CKA 기출 feat. CKA 합격

마스터 노드 버전 업그레이드 (O) 1.28.0 -> 1.28.1 (kubeadm 사용) kubelet, kubectl도 같은 버전 업그레이드워커노드는 건들지 마세요. Etcd Backup & Restore (X) peer.key , peer.crt , cacrt , endpoints 로 Back up (성공) -> 요구하는 파일명을 사용하여 restore. —data-dir /var/lib/etcd-restore (성공) manifests/etcd.yaml 에서 hostpath 부분 Restore할 때 적은 —data-dir 경로로 변경 함 restore 완료한 부분부터 문제대로 하지않은 거 같은 찝찝함이 있어서 틀렸을거 같다 Node not ready -> ready (O) k get nodes 죽은..

DevOps/k8s 2023.12.28

HoneyComb 오픈텔레메트리를 위한 모니터링 Tool

Honeycomb for Kubernetes 2023년 11월 01일 Kubernetes용 Honeycomb 플랫폼 출시 발표 Kubernetes Quick Start 대략적인 Kubernetes 설치 과정 구글 소셜 화원가입/로그인 Api key 발급 kubernetes quick start docs 보고 Command 따라치기 helm을 이용하여 Honeycomb agent 설치 Query로 직접 차트와 대시보드 구성 기본 템플릿을 사용하여 차트와 대시보드 구성 Honeycomb 설치 Command #클러스터 object를 관리하는 수집기 인프라를 포함할 네임스페이스 생성 daeunkim@Daeunui-MacBookPro ~ % kubectl create namespace honeycomb # hon..

DevOps/k8s 2023.12.14

[K8s] JSONPATH 활용하여 원하는 데이터 확인하기

JSONPath란? JSONPath는 JSON 데이터 구조 내에서 원하는 데이터를 식별하기 위한 경로 표현 방법입니다. 주로 Kubernetes나 다양한 API 응답에서 원하는 데이터를 추출하거나 쿼리하는 데 사용됩니다. JSONPath 패턴 $.store.book[0].title JSON 데이터 구조에서 store 객체 안의 book 배열의 첫 번째 요소의 title 값에 대한 경로 $..author 모든 author 키에 해당하는 값 반환 $.store.* store 객체 안의 모든 키와 값 반환 $.store..price store 객체 내부의 모든 price 키에 해당하는 값 반환 $.store.book[?(@.price < 10)] : **price**가 10 미만인 책에 해당하는 값들을 반환합..

DevOps/k8s 2023.11.16

[CKA] Namespace 내에 Service Account 생성 → Role 생성→ RoleBinding

koogle 네임스페이스 내에 pod-viewer라는 서비스 어카운트를 생성한다. 그리고 파드 리소스를 대상으로 get, list, watch 권한을 갖는 Role을 생성한다. 마지막으로 이 Role을 pod-viewer 서비스 어카운트에 연결하는 RoleBinding을 생성한다. 서비스 계정 생성 koogle 네임스페이스에 pod-viewer라는 서비스 계정을 생성하려면 다음 명령을 사용합니다. kubectl create serviceaccount pod-viewer -n koogle 잘 생성 되었는지 아래 명령어를 통해 확인합니다. 해당 파일은 pod-viewer-role이 pods 리소스에 대해 get, list, watch 권한을 수행할 수 있도록 하는 규칙을 정의하는 매니페스트입니다. 아래 매니..

DevOps/k8s 2023.11.16