본문 바로가기

728x90

리눅스

우분투에서 Kubernetes 클러스터를 구성하는 방법 우분투에서 Kubernetes 클러스터를 구성하는 방법 각 노드에는 kubeadm, kubelet, kubectl을 설치하고, control plane 노드에서는 Kubernetes API 서버 및 다른 구성 요소를 초기화합니다. 모든 노드(control plane, knode1, knode2, knode3) swap 메모리 비활성화 sudo swapoff -a sudo sed -i '/\s*swap\s*/ s/^/#/' /etc/fstab sudo swapon --show 커널 모듈 설정(overlay 모듈, br_netfilter 모듈) cat --pod-network-cidr=10.244.0.0/16 \ > --apiserver-advertise-address=192.168.56.51 \ > --c.. 더보기
쿠버네티스에서 네임스페이스를 스위칭하는 방법(kubens 명령어) 쿠버네티스에서 네임스페이스를 스위칭하는 방법(kubens 명령어) kubectx 설치(kubens 설치) sudo git clone https://github.com/ahmetb/kubectx /tmp/kubectx sudo mv /tmp/kubectx/kubectx /usr/local/bin/kubectx sudo mv /tmp/kubectx/kubens /usr/local/bin/kubens rm -rf /tmp/kubectx kubectx 명령어 사용법 $ kubectx -h USAGE: kubectx : list the contexts kubectx : switch to context kubectx - : switch to the previous context kubectx -c, --curren.. 더보기
쿠버네티스에서 모든 리소스를 삭제하는 방법 쿠버네티스에서 모든 리소스를 삭제하는 방법 쿠버네티스 주요 리소스 목록 Pod (팟) 컨테이너화된 응용 프로그램의 실행 인스턴스입니다. 한 개 이상의 컨테이너를 포함할 수 있습니다. ReplicaSet Pod의 복제본을 관리합니다. 지정된 수의 Pod 복제본을 유지하고, 필요한 경우 새로운 복제본을 생성하거나 기존 복제본을 삭제합니다. Deployment 애플리케이션 배포를 관리합니다. ReplicaSet과 Pod를 조정하여 스케일링하고 롤링 업데이트를 수행합니다. Service 서비스에 대한 로드 밸런싱을 제공하고 네트워크 요청을 Pod로 전달합니다. 단일 접점으로 여러 Pod에 대한 액세스를 제공합니다. Ingress 클러스터 내의 서비스에 대한 외부 액세스를 관리합니다. 호스트 또는 경로 기반 라우.. 더보기
쿠버네티스 컨텍스트를 확인하고 추가하며 전환하는 방법 쿠버네티스 컨텍스트를 확인하고 추가하며 전환하는 방법 Kubernetes 클러스터에 접근하고 상호 작용할 때 여러 환경(예: 로컬 개발 클러스터, 스테이징 클러스터, 프로덕션 클러스터 등)으로 이동할 수 있어야 합니다. 이러한 각 환경은 Kubernetes 클러스터의 접근 정보(서버 주소, 인증 정보 등)를 담고 있는 것을 말합니다. 이러한 환경을 관리하고 전환하는 데 사용되는 것이 바로 kubectl 컨텍스트입니다. kubectl config view 컨텍스트 목록 확인 현재 구성된 모든 컨텍스트를 확인합니다. kubectl config get-contexts $ kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * minikube.. 더보기
쿠버네티스 서비스 유형 쿠버네티스 서비스 유형(Kubernetes Service Types) Service 유형 비교 유형 접근 범위 비고 Cluster IP 클러스터 내부 NodePort 또는 LoadBalancer를 사용하여 외부에서 접근할 수 있도록 추가 설정이 필요합니다. NodePort 클러스터 내부 및 외부 각 노드의 특정 포트를 사용하여 서비스에 접근합니다. NodePort 범위는 일반적으로 30000~32767입니다. LoadBalancer 클러스터 외부 클라우드 제공업체에서 제공하는 LoadBalancer를 사용하여 서비스에 접근합니다. Ingress 클러스터 외부 경로 기반 라우팅, 호스트 헤더 기반 라우팅, HTTPS 지원 등 고급 기능을 제공합니다. Port Forwarding 로컬 시스템 kubectl .. 더보기
쿠버네티스 레플리카셋(Replica Set) 쿠버네티스 레플리카셋(Replica Set) 쿠버네티스에서 레플리카셋(ReplicaSet)은 파드(Pod)의 복제본을 관리하는 리소스입니다. 레플리카셋은 지정된 수의 파드 복제본을 유지하도록 보장하며 파드가 비정상적으로 종료되었을 때 새로운 복제본을 생성하여 대체합니다. 레플리카셋의 중요한 특징 레플리카 수 유지 : 레플리카셋은 사용자가 지정한 수의 복제본을 유지합니다. 파드가 삭제되거나 종료된 경우 새로운 파드를 생성하여 복제본 수를 유지합니다. 라벨 셀렉터 사용 : 레플리카셋은 라벨 셀렉터를 사용하여 자신이 관리하는 파드를 식별합니다. 이를 통해 레플리카셋이 복제하는 파드를 선택할 수 있습니다. 스케일링 : 사용자는 필요에 따라 레플리카셋의 복제본 수를 조정하여 애플리케이션을 확장하거나 축소할 수 있.. 더보기
kubectl 명령어의 자동 완성을 활성화하는 방법 kubectl 명령어의 자동 완성을 활성화하는 방법 kubectl 자동 완성 스크립트를 다운로드 echo 'source 더보기
node-app 도커 이미지를 쿠버네티스로 배포하는 방법 node-app 도커 이미지를 쿠버네티스(Kubernetes)로 배포하는 방법 node-app-deployment.yaml 파일 생성 vim node-app-deployment.yaml # node-app-deployment.yaml apiVersion: apps/v1 kind: Deployment metadata: name: node-app # Deployment의 이름 spec: replicas: 1 # Replica 수 selector: matchLabels: app: node-app # Pod를 식별하기 위한 라벨 template: metadata: labels: app: node-app # Pod에 부여되는 라벨 name: node-app # Pod의 이름 spec: containers: - n.. 더보기

728x90