| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Algorithm
- DFS
- 동적계획법
- 백준
- cos
- 동적계획법과최단거리역추적
- android
- 안드로이드스튜디오
- BAEKJOON
- 코드품앗이
- 파이썬
- cos pro
- 코딩테스트
- vuejs
- 코테
- Python
- codingtest
- DFS와BFS
- issue
- DART
- k8s
- 개발
- django
- 안드로이드
- Flutter
- C++
- 알고리즘
- 분할정복
- cos pro 1급
- AndroidStudio
- Today
- Total
목록k8s (8)
Development Artist
서론쿠버네티스(Kubernetes)는 단지 컨테이너 오케스트레이션 시스템이 아니다. 그것은 복잡한 분산 시스템의 ‘논리적 질서(logical order)’를 추구하는 운영 체계이자 철학이다. 이 철학의 핵심에는 다음 세 가지 리소스가 있다: 네임스페이스(Namespace), 컨피그맵(ConfigMap), 그리고 시크릿(Secret). 이 글에서는 해당 세 리소스가 어떻게 쿠버네티스의 구조적 복잡성을 통제하고, 실제 운영 환경에서 어떤 가치를 제공하는지 학문적으로 탐구하고자 한다.1. Namespace: 멀티테넌시와 격리의 시작점1.1 정의Kubernetes에서 Namespace는 리소스를 논리적으로 분리하는 단위이다. 리눅스에서의 chroot나 가상 메모리 공간처럼, 네임스페이스는 쿠버네티스 클러스터 내..
“In theory, there is no difference between theory and practice. In practice, there is.”– Jan L. A. van de Snepscheut서론현대의 분산 시스템에서 마이크로서비스 아키텍처(MSA)는 서비스 간의 유기적인 연결을 전제로 한다. 그러나 컨테이너 기반의 인프라에서 컨테이너는 생성과 소멸이 자유로운 반면, 그들 간의 네트워크 주소는 영속적이지 않다. 이때 등장하는 개념이 바로 쿠버네티스 서비스(Kubernetes Service)이다.쿠버네티스 서비스는 동적으로 변하는 파드(Pod) 들에 대해 안정적인 네트워크 접근점을 제공한다. 본 칼럼에서는 쿠버네티스 서비스의 개념적 정의부터 동작 원리, 유형별 특성, 그리고 실무에서의 응용..
서론쿠버네티스(Kubernetes)는 클러스터 기반의 애플리케이션 운영을 표준화하는 강력한 오픈소스 플랫폼이다. 하지만 설치와 운영은 여전히 복잡하고, 사용 목적이나 인프라 환경에 따라 다양한 설치 도구를 선택해야 한다. 이번 글에서는 세 가지 대표적인 설치 도구인 Kubespray, kubeadm, kops의 특징과 장단점을 비교하여, 상황에 따라 어떤 도구가 적절할지 살펴보자.1. KubesprayKubespray는 Ansible을 기반으로 하는 프로덕션 수준의 쿠버네티스 설치 자동화 도구이다. 다양한 클라우드 및 온프레미스 환경에 대응할 수 있으며, 고가용성(HA) 구성도 지원한다.주요 특징Ansible 기반의 선언적 인프라 관리다양한 클라우드 및 베어메탈 지원고가용성 클러스터 구성 지원커스터마이징..
이슈ArgoCD에서 다음과 같은 Event Log 확인.error killing pod: failed to "KillPodSandbox" for "5434cdfd-cb12-45b8-980d-a1e1bcd5fb09" with KillPodSandboxError: "rpc error: code = Unknown desc = failed to destroy network for sandbox \"63901cdb6345abd4541257c68a19b517e4cb43aee13603648757ac1af89a4720\": plugin type=\"calico\" failed (delete): error getting ClusterInformation: connection is unauthorized: Unauthor..
상황 발생0/3 nodes are available: 3 node(s) didn't match pod anti-affinity rules. preemption: 0/3 nodes are available: 3 No preemption victims found for incoming pod. Failed to create pod sandbox: rpc error: code = Unknown desc = failed to setup network for sandbox "[SandBox]": plugin type="calico" failed (add): error getting ClusterInformation: connection is unauthorized: Unauthorized Successfully ..
이슈 'yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes' 명령어로 kubelet, kubeadm, kubectl을 설치 후, 'systemctl enable --now kubelet' 명령어 실행. 이후 'systemctl status kubelet' 명령어 수행. kubelet 서비스가 failed 난 것을 확인. 'kubectl version --short' 쳐보니, 다음과 같이 "The connection to the server localhost:8080 was refused - did you specify the right host or port?"이 보인다. 해결 1. kubectl init 명령어 사용 후, 2.1. r..
이슈 kubernetes master 노드를 configuration 하는 중에, kubeadm init을 하니, 다음과 같은 에러가 발생. 에러는 2가지 였는데, 일단 첫번째 에러에 대해 resolve. 해결 1. Cpu 수를 2 이상으로 맞춰주거나, NumCPU에 대한 에러 사항을 무시한다. kubeadm init --ignore-preflight-errors=NumCPU 원인 마스터 노드를 초기화 하기 위해서는 Cpu 수가 2가 필요하다. 하지만 현재 Cpu 수가 1이기 때문에 해당 Error를 내뱉고 있는 것이다. 결과 다시 kubeadm init을 해보면, ERROR에서 WARNING으로 바뀌었다. 무시하는 방법을 썼기 때문..
1. Kubernetes 사전 준비사항 (공통) - Worker 노드 개수 정책 설정. 용도에 맞게 Worker 노드의 수를 결정할 수 있다. 테스트 환경에서는 일단 master(Control-plane) 노드 1개와 worker 노드 1개로 설정하겠다. (why? 사용 가능한 VM 자원이 2대 뿐이다!ㅠㅠ) Reference: https://learnk8s.io/kubernetes-node-size Architecting Kubernetes clusters — choosing a worker node size When you create a Kubernetes cluster, one of the first questions that pops up is: "what type of worker nodes ..