본문 바로가기

728x90

리눅스

Kubernetes CNI 플러그인과 특징 비교 Kubernetes CNI 플러그인과 특징 비교Kubernetes에서 네트워크 기능을 담당하는 CNI(Container Network Interface) 플러그인은 클러스터 내의 파드들이 서로 통신하고 외부 네트워크와 상호작용할 수 있도록 하는 핵심 구성 요소입니다. 각 CNI 플러그인은 고유한 기능과 성능, 설정 복잡성을 가지고 있으며 특정 요구 사항에 맞는 것을 선택하는 것이 중요합니다.주요 CNI 플러그인 비교플러그인특징장점단점적합한 환경Flannel간단하고 가벼운 오버레이 네트워킹설치 및 관리가 쉽고, 성능이 준수함고급 기능 부족, 대규모 환경에서는 성능 저하 가능성소규모 클러스터, 간단한 네트워킹 요구 사항Calico강력한 네트워크 정책, BGP 지원세밀한 네트워크 정책 설정 가능, 대규모 환경.. 더보기
우분투에 쿠버네티스 싱글 노드를 구성하는 방법 우분투에 쿠버네티스(k8s) 싱글 노드를 구성하는 방법테스트 환경컨트롤 플레인control-plane워커 노드worker1컨테이너 런타임Containerd네트워크 플러그인Flannel1. 호스트 이름 변경sudo hostnamectl set-hostname control-planesudo hostnamectl set-hostname worker12. 호스트(/etc/hosts) 파일 수정cat > /etc/hosts# kubernetes192.168.10.111 control-plane192.168.10.114 worker1EOF3. Swap 비활성화(스왑 끄기)sudo swapoff -asudo sed -i '/\/swap\.img[[:space:]]\+none[[:space:]]\+swap[[:spa.. 더보기
쿠버네티스에 Ingress Controller를 설치하고 이를 통해 외부에서 NGINX 웹 서비스에 접근할 수 있도록 설정하는 방법 쿠버네티스(Kubernetes)에 Ingress Controller를 설치하고 이를 통해 외부에서 NGINX 웹 서비스에 접근할 수 있도록 설정하는 방법Kubernetes Ingress는 HTTP(S) 트래픽을 클러스터 내의 서비스로 라우팅하는 강력한 방법입니다. Ingress를 설정하면 하나의 IP 주소 또는 도메인 이름을 통해 여러 서비스를 관리할 수 있습니다. Ingress를 사용하려면 Ingress Controller를 설치하고 Ingress 리소스를 정의하여 외부 트래픽을 적절한 서비스로 전달할 수 있습니다.1. Ingress Controller 설치Ingress Controller는 Ingress 리소스의 정의를 실제 트래픽 라우팅으로 변환해주는 역할을 합니다. 대표적인 Ingress Cont.. 더보기
쿠버네티스 클러스터에서 노드를 새로운 노드로 교체하는 방법 쿠버네티스 클러스터에서 노드를 새로운 노드로 교체하는 방법Control Plane 교체쿠버네티스에서 Control Plane 노드는 클러스터의 핵심 구성 요소로 API 서버, 스케줄러, 컨트롤러 매니저 등이 실행됩니다. Control Plane 노드를 교체할 때는 장애가 발생하지 않도록 주의해야 합니다. 노드 상태 확인$ kubectl get nodesNAME STATUS ROLES AGE VERSIONnode111 Ready control-plane 44h v1.30.3node112 Ready control-plane 44h v1.30.3node113 Ready control-plane 44h v1.30.3worker1 .. 더보기
쿠버네티스 워커 노드를 설치하고 클러스터에 참여시키기 쿠버네티스 워커 노드를 설치하고 클러스터에 참여시키기kubeadm 초기화kubeadm resetkubelet와 containerd 서비스 비활성화sudo systemctl --now disable kubeletsudo systemctl --now disable containerd방화벽(UFW) 중지 및 비활성화sudo systemctl stop ufw && sudo systemctl disable ufwSwap 비활성화sudo swapoff -asudo sed -i '/\s*swap\s*/ s/^/#/' /etc/fstab커널 모듈 로드 설정 및 로드cat sudo modprobe overlaysudo modprobe br_netfilter커널 파라미터 네트워크 설정 및 적용cat sudo sysctl .. 더보기
쿠버네티스 클러스터에서 노드를 재기동하는 방법 쿠버네티스(Kubernetes) 클러스터에서 노드를 재기동하는 방법Control Plane 재기동Control Plane은 클러스터의 핵심 구성 요소로 kube-apiserver, etcd, kube-scheduler, kube-controller-manager 등의 컴포넌트가 실행됩니다. Control Plane을 재기동할 때는 주의가 필요하며 클러스터의 가용성을 보장하기 위해 HA(High Availability) 구성이 권장됩니다. 1. Control Plane의 상태 확인Ready 상태를 확인합니다.Control Plane에서 중요한 워크로드가 실행되고 있는지 확인합니다.kubectl get nodes$ kubectl get nodesNAME STATUS ROLES .. 더보기
쿠버네티스 서비스 유형 쿠버네티스 서비스 유형(Kubernetes Service Types)Kubernetes에서 서비스 유형은 클러스터 내의 애플리케이션을 외부 또는 다른 파드와 연결하는 방법을 정의합니다. 서비스는 파드의 IP 주소가 동적으로 변경될 수 있기 때문에 안정적인 네트워크 접점을 제공하는 역할을 합니다.서비스 유형 비교서비스 유형외부 접근 가능로드 밸런싱사용 사례Cluster IP아니요예클러스터 내부 통신NodePort예예외부에서 간단히 접근 가능LoadBalancer예예클라우드 환경에서 외부 트래픽을 분배Ingress예예여러 서비스에 대한 경로 기반 라우팅Port Forwarding예아니요로컬 개발 환경에서 파드에 접근External IP예아니요특정 노드에 외부 IP 할당ExternalName아니요아니요외부 서.. 더보기
쿠버네티스 클러스터를 구현하는 방법 쿠버네티스 클러스터(Kubernetes Cluster)를 구현하는 방법쿠버네티스 클러스터를 멀티 마스터 환경에서 고가용성(HA)을 구현하는 것은 클러스터의 Control Plane을 여러 마스터 노드로 분산하여 단일 장애 지점을 없애는 중요한 작업입니다. 이를 통해 클러스터의 신뢰성과 가용성을 높일 수 있습니다.테스트 환경HostnameIP Address패키지비고k8s-lb1192.168.10.110haproxy node111192.168.10.111kubelet kubeadm kubectl node112192.168.10.112kubelet kubeadm kubectl node113192.168.10.113kubelet kubeadm kubectl 1. 로드 밸런서 HAProxy 설정로드 밸런서 : 클.. 더보기

반응형