
.
├── controlplane_node.sh # 쿠버네티스 컨트롤 플레인 노드 구성 및 초기화
├── k8s_env_build.sh # 쿠버네티스 환경 구성 (기초 설정)
├── k8s_pkg_cfg.sh # 쿠버네티스 관련 패키지 설치
│
├── tabby-v1.0.207/ # 외부 유틸리티/설정 파일
│ ├── config.yaml
│ └── tabby.rb
│
├── Vagrantfile # 베이그런트 메인 실행 파일
│ ├── vagrant-v2.4.1/
│ │ └── vagrant.rb
│ └── virtualbox-v7.0.18/
│ └── virtualbox.rb
│
└── worker_nodes.sh # 쿠버네티스 워커 노드 구성
이 스크립트는 쿠버네티스 설치를 위한 기본 시스템 환경을 설정하는 스크립트이다.
이 스크립트는 쿠버네티스를 실행하기 위한 핵심 구성요소들을 설치한다.
참고
kubeadm : 쿠버네티스 클러스터 초기화 도구
kubelet : 노드에서 파드를 실제 실행하는 에이전트
kubectl : 쿠버네티스 명령행 도구
컨트롤 플레인(Control Plane) 노드는 클러스터의 중심으로,
API 서버와 스케줄러, 컨트롤러 매니저 등이 동작하는 곳이다.
이 스크립트는 다음 과정을 수행한다.
-> 생성된 kubeadm join ... 명령어는 워커 노드에서 실행해야 클러스터에 연결된다.
워커 노드는 실제 애플리케이션(Pod)이 배포되는 노드이다.
이 스크립트는 컨트롤 플레인에서 생성된 Join Command를 사용해
클러스터에 워커 노드를 연결(join)한다.
->컨트롤 플레인과 통신이 성공하면 kubectl get nodes 에서 READY 상태로 표시된다.
이 파일은 Vagrant의 메인 실행 스크립트로,
VirtualBox 환경에서 VM을 자동 생성하고 위의 스크립트들을 실행시킨다.
주요 역할:
즉, Vagrantfile 하나로 VM 생성부터 쿠버네티스 구성까지 전부 자동화된다.
-> 예를 들어, 환경 변수 자동 로드나 로그 포맷팅 등에 사용 가능하다.
본 게시글은 인프런 「그림으로 배우는 쿠버네티스」 강의를 참고하여 작성하였습니다.
강의에서 사용된 핵심 코드나 스크립트는 포함하지 않았으며,
강의 내용을 기반으로 제 환경에 맞게 디렉터리 구조와 설정을 재구성하였습니다.
👉 강의 링크: https://www.inflearn.com/course/그림으로-배우는-쿠버네티스/dashboard