Kubernetes 6

[ DEVOCEAN OpenLab ] Kubernetes API 와 kubebuilder

[ 최종 목표 ] kubebuilder 를 사용하여 Custom Controller 생성하기[ 학습 단계 ]1) Kubernetes API, Custom Resource와 Controller 란?2) kubebuilder 란? kubebuilder 아키텍처 학습3) Controller-runtime 주요 기능  1.1  Kubernetes API 란? Custom Resource & Controller 란? 쿠버네티스 컨트롤 플레인(control plane)의 핵심이라고 할 수 있다. API 서버는 최종 사용자, 클러스터의 다른 부분 그리고 외부 컴포넌트가 서로 통신할 수 있도록 HTTP API 를 제공한다. 쿠버네티스 API를 사용하면 쿠버네티스의 API 오브젝트(예: 파드(Pod), 네임스페이스(Na..

Kubernetes 2024.06.29

[ DEVOCEAN OpenLab ] Kubernetes Architecture 구성요소 (k8s VS k3s)

k3s 란?k3s는 Rancher 에서 개발한 경량 Kubernetes 버전이다. 소규모 서버, IoT 기기 등의 프로덕션용으로 생성되었으며, 바이너리는 50개월 미만으로 매우 작은 가상 머신에서 실행될 수 있다.  k8s   VS   k3s 1. 기본적인 저장소의 차이Kubernetes(k8s)의 기본 저장소: etcdKubernetes(k8s)의 기본 저장소는 etcd이다. etcd는 분산형 키-값 저장소로, Kubernetes 클러스터의 모든 상태 및 구성 정보를 저장하는 데 사용된다. 이 정보에는 파드, 서비스, 구성맵, 구성 파일 및 기타 Kubernetes 개체에 대한 모든 정보가 포함된다. k3s의 기본 저장소: SQLite3k3s의 기본 저장소는 SQLite3이다. k3s는 경량화된 Kub..

Kubernetes 2024.05.03

[ DEVOCEAN OpenLab ] k3s 설치 with Multipass (mac M2)

맥북에서 내 cpu core 확인물리적/논리적 cpu 확인할 수 있다.물리적 cpu는 실제 하드웨어로 구현된 cpu 코어의 개수이고, 논리적 cpu는 운영체제가 인식하는 cpu 개수이다. 하이퍼스레딩 기술을 사용하면 물리적 cpu 코어 수보다 더 많은 논리적 cpu를 사용할 수 있다고 한다.sysctl hw.physicalcpu hw.logicalcpuhw.physicalcpu: 8hw.logicalcpu: 8  1. 가상머신 생성# 가상머신 생성 명령어sudo multipass launch --name --cpus --mem --disk # 마스터 노드 1대sudo multipass launch -n k3s-master -c 2 -m 2G# 워커 노드 2대sudo multipass launch ..

Kubernetes 2024.05.02

[ DEVOCEAN OpenLab ] CNCF 란? CNCF Projects

CNCF (Cloud Native Computing Foundation) 2015 년 7 월에 발표된 2016 년 1 월에 정식 출범 한 Cloud Native Computing Foundation (이하 CNCF)는 혼돈스러운 컨테이너와 관련된 다양한 기술적인 문제들을 오픈소스로 해결하는 하는 것을 목표로하고 있다. CNCF에서 진행되는 다양한 프로젝트들은 여기서 확인할 수 있다. https://landscape.cncf.io/CNCF Landscapelandscape.cncf.io 1) Cloud Native 란?클라우드 네이티브는 클라우드 컴퓨팅 환경에서 현대적 애플리케이션을 구축, 배포 및 관리할 때의 소프트웨어 접근 방식이다. 2) Cloud Native 이점- 효율성 증가 : 클라우드 네이티브..

Kubernetes 2024.05.01

[ DEVOCEAN OpenLab ] 쿠버네티스 등장배경

[ 학습 주제 ]1. Kubernetes의 등장배경2. CNCF (Cloud Native Computing Foundation) 이란?3. Kubernetes 설치4. Kubernetes Architecture 확인5. Kubernetes에서 Pod란?6. Pod는 어떻게 뜨는 것일까?7. Kubernetes Resource 알아보기8. Custom Controller9. CNCF 프로젝트  1.  Kubernetes 의 등장 배경2008년 이전chroot(프로세스의 루트 디렉토리를 변경하는 것. 하지만 프로세스별 액세스 컨트롤 못함.)FreeBSD Jail(OS 가상화 기술. 가상화 환경에서 파일시스템, 프로세스, 네트워크 분리할 수 있음.) 2008년 이후현재 컨테이너 기술의 바탕이 되는 LXC(Li..

Kubernetes 2024.05.01

[ K8S ] CNI Cilium 메모리 누수 문제 해결- kakao 실무진 특강 (4)

다음으로는 kubernetes 네트워크 속 CNI를 알고, Cilium의 메모리 누수 버그를 해결한 kakao 사례에 대해 설명하겠다. DKOS 를 개발하면서 생겼던 오류와 해결방안에 대해 말씀해주셨는데 이 기회로 kubernetes의 세부적인 네트워킹 구조에 대해 공부해봐야겠다는 생각을 하게 되었다. 처음 들으면서 몰랐던 단어들이 많아서 좀 어지러웠는데 모르는 부분은 다른 블로그들을 참고하며 내용을 이해하기 위해 노력했다. 또한 좋았던 점은 실무에서 문제가 일어났을 때 문제 해결의 전체적인 흐름도 함께 말씀해주셔서 트러블슈팅 과정을 들어볼 수 있었다는 것이다. kubernetes 네트워크 모델 요구사항 - 클러스터의 모든 파드는 고유한 IP를 가진다. - 파드는 NAT 없이 노드 상의 모든 파드와 통신..

Kubernetes 2024.03.05