본문 바로가기
카테고리 없음

쿠버네티스 초보자를 위한 마스터와 워커 노드 설치 및 연결 실습 가이드

by creator6055 2024. 12. 30.

쿠버네티스 초보자를 위한 마스터와 워커 노드 설치 및 연결 실습 가이드

 

 

쿠버네티스(Kubernetes)는 현대 클라우드 환경에서 애플리케이션을 관리하고 배포하는 데 필수적인 도구입니다. 이번 실습에서는 쿠버네티스 설치 및 노드 연결 과정에 대해 다루며, 마스터와 워커 노드의 설정을 통해 클러스터를 구성하는 방법을 설명합니다. 쿠버네티스를 이해하고 활용하는 데 있어 이 실습은 큰 도움이 될 것입니다.

 

 

[목차여기]

아래 정보도 함께 확인해보세요.

✅옵시디언 소프트웨어 설치 가이드와 시작 방법 안내

✅시티즌 코난 앱 설치를 위한 단계별 안내 가이드

✅IntelliJ IDEA 설치와 첫 설정 가이드

✅무료로 한글뷰어 다운로드 및 설치 방법 안내

✅북한산 형제봉 정상에 새로 설치된 기념목 소개

 

 

 

쿠버네티스 개요

쿠버네티스(Kubernetes)는 컨테이너화된 애플리케이션의 배포, 확장 및 관리를 자동화하기 위한 오픈 소스 플랫폼입니다. 쿠버네티스는 Google에서 개발하였으며, 현재는 Cloud Native Computing Foundation(CNCF)에 의해 관리되고 있습니다. 쿠버네티스는 다양한 클라우드 환경에서 쉽게 사용할 수 있으며, 마이크로서비스 아키텍처를 지원합니다.


📌 쿠버네티스에 대한 더 많은 정보를 원하신다면 아래 링크를 참고해보세요.

 

쿠버네티스 공식 홈페이지 바로가기

 

 

 

마스터 노드와 워커 노드 이해하기

쿠버네티스 클러스터는 마스터 노드와 하나 이상의 워커 노드로 구성됩니다. 각 노드는 다음과 같은 역할을 수행합니다.

  • 마스터 노드: 클러스터의 제어 평면을 담당하며, 클러스터의 상태를 관리하고, API 서버를 통해 사용자 요청을 처리합니다. 마스터 노드는 클러스터의 배포와 스케일링을 조정합니다.
  • 워커 노드: 실제로 애플리케이션 컨테이너가 실행되는 서버입니다. 워커 노드는 마스터 노드의 지시에 따라 애플리케이션을 실행하고, 서비스와 포드를 관리합니다.

📌 마스터 노드와 워커 노드에 대해 더 알고 싶으신 분들은 아래 링크를 참고해보세요.

 

Kubernetes 공식 문서 바로가기

 

 

 

필요한 환경 설정

쿠버네티스를 설치하기 위해서는 다음과 같은 환경이 필요합니다.

  • 서버: 마스터 노드와 워커 노드를 위한 서버가 필요합니다. 각 서버는 Linux 운영 체제가 설치되어 있어야 하며, Ubuntu나 CentOS와 같은 일반적인 배포판을 사용할 수 있습니다.
  • 네트워크: 각 노드 간의 통신이 가능해야 하며, 방화벽에서 필요한 포트를 열어야 합니다. 기본적으로 쿠버네티스는 6443번 포트를 사용합니다.
  • 소프트웨어: Docker와 kubeadm, kubelet, kubectl이 설치되어 있어야 합니다. Docker는 컨테이너 런타임을 제공하고, kubeadm은 클러스터 설치를 도와주며, kubelet은 노드의 상태를 관리합니다.

📌 필요한 환경 설정에 대한 정보를 원하신다면 아래 링크를 확인해보세요!

 

Firefox 개발자 도구 환경 설정 바로가기

 

 

 

마스터 노드 설치하기

마스터 노드를 설치하는 과정은 다음과 같습니다.

  1. Docker 설치
    • Ubuntu의 경우:
      sudo apt-get update
      sudo apt-get install -y docker.io
    • CentOS의 경우:
      sudo yum install -y docker
  2. kubeadm, kubelet, kubectl 설치
    • Ubuntu의 경우:
      sudo apt-get update
      sudo apt-get install -y apt-transport-https ca-certificates curl
      curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
      echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
      sudo apt-get update
      sudo apt-get install -y kubelet kubeadm kubectl
      sudo apt-mark hold kubelet kubeadm kubectl
    • CentOS의 경우:
      cat < /etc/yum.repos.d/kubernetes.repo
      [kubernetes]
      name=Kubernetes
      baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
      enabled=1
      gpgcheck=1
      repo_gpgcheck=1
      gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      EOF
      sudo yum install -y kubelet kubeadm kubectl
      sudo systemctl enable kubelet
  3. 쿠버네티스 클러스터 초기화
    sudo kubeadm init

    위 명령어를 실행하면 클러스터가 초기화되고, 클러스터에 대한 정보를 출력합니다. 출력된 정보를 참고하여 워커 노드를 추가할 수 있습니다.


📌 마스터 노드 설치에 대한 모든 정보를 원하신다면 아래 링크를 확인해보세요.

 

블록체인 정보 바로가기

 

 

 

워커 노드 추가하기

워커 노드를 클러스터에 추가하는 과정은 다음과 같습니다.

  1. 워커 노드에서 Docker 및 kubeadm, kubelet 설치

    마스터 노드와 동일한 방법으로 워커 노드에 Docker와 kubeadm, kubelet을 설치합니다.

  2. 마스터 노드에서 출력된 join 명령어 실행

    마스터 노드에서 초기화 시 출력된 join 명령어를 복사하여 워커 노드에서 실행합니다. 예를 들어:

    sudo kubeadm join <마스터 IP>:6443 --token <토큰> --discovery-token-ca-cert-hash sha256:<해시>
  3. 워커 노드 상태 확인

    워커 노드가 성공적으로 추가되었는지 확인하기 위해 마스터 노드에서 아래 명령어를 실행합니다.

    kubectl get nodes

    이 명령어는 현재 클러스터에 연결된 노드의 상태를 보여줍니다.


📌 워커 노드를 추가하는 방법에 대해 더 알고 싶으신 분들은 아래 링크를 클릭해보세요!

 

워커 노드 추가하기 자세히 알아보기

 

 

 

클러스터 확인 및 테스트

클러스터가 정상적으로 구성되었는지 확인하기 위해 간단한 테스트를 수행할 수 있습니다.

  1. 테스트용 파드 생성
    kubectl run nginx --image=nginx --replicas=2 --port=80

    위 명령어는 NGINX 웹 서버를 실행하는 두 개의 파드를 생성합니다.

  2. 파드 상태 확인
    kubectl get pods

    이 명령어로 생성된 파드의 상태를 확인할 수 있습니다.

  3. 서비스 생성 및 외부 접근 테스트
    kubectl expose deployment nginx --type=NodePort

    위 명령어로 NGINX 서비스를 외부에서 접근할 수 있도록 설정합니다. 이후 노드의 IP 주소와 서비스의 포트를 통해 접근해볼 수 있습니다.


📌 클러스터 확인 및 테스트에 대한 자세한 정보를 원하신다면 아래 링크를 참고해보세요.

 

클러스터 확인 및 테스트 바로가기

 

 

 

자주 묻는 질문 FAQs

질문 1. 쿠버네티스를 배우기 위한 가장 좋은 시작점은 무엇인가요?

쿠버네티스를 배우기 위해서는 공식 문서와 튜토리얼을 참고하는 것이 좋습니다. 또한, 실습을 통해 직접 설치하고 사용해보는 것이 큰 도움이 됩니다.

질문 2. 쿠버네티스 설치 시 주의할 점은 무엇인가요?

쿠버네티스 설치 시, 시스템 요구 사항을 충족하는지 확인하고, 네트워크 설정이 올바른지 점검하는 것이 중요합니다. 또한, 마스터와 워커 노드 간의 통신이 원활해야 합니다.

질문 3. 쿠버네티스 설치업체는 어디서 찾을 수 있나요?

쿠버네티스 설치업체는 관련 블로그나 커뮤니티를 통해 찾을 수 있습니다. 또한, 쿠버네티스 공식 웹사이트에서도 인증된 서비스 제공업체 목록을 확인할 수 있습니다.

 

결론

이번 실습을 통해 쿠버네티스 설치 및 노드 연결 방법을 익혔습니다. 쿠버네티스 환경에서 마스터와 워커 노드의 역할을 이해하고, 이를 통해 효율적인 클러스터 관리를 위한 기초를 마련하였습니다. 앞으로 쿠버네티스를 더욱 심화하여 활용하는 데 이 실습이 중요한 출발점이 될 것입니다.