7. 준비
▪ 외부통신이 되는 환경
▪ vagrant 설치
▪ virtualbox 설치
▪ python3.6 이상
▪ 충분한 CPU와 메모리
▪ 권장 메모리: 32GB
▪ 권장 CPU: 4core 이상
8. 설정파일 생성
▪ 2가지 설정파일을 생성하는 스크립트 실행
▪ virtualbox 정보: IP, CPU, Memory, hostname 등
▪ ansible 인벤토리 파일
▪ 프로젝트 다운로드
▪ 파이썬 가상환경 설치와 파이썬 패키지 설치
# git clone https://github.com/choisungwook/vagrant_kubernetes.git
# cd vagrant_kubernetes/config
# virtualenv -m venv
# venvScriptActive
# pip install -r equirements.txt
9. 설정파일 생성
▪ 스크립트 실행
--bootstrapIP: ansible 서버IP
--controlPlanesIPS: controlplane 노드 IP
--workerIPS: worker 노드 IP
# python generate_config.py --bootstrapIP="192.168.25.220" --
controlPlaneIPS="192.168.25.221" --workerIPS="192.168.25.223,192.168.25.224"
▪ 파일생성 확인
▪ 프로젝트 root/config.yml
▪ 프로젝트 root/ansible_workspace/add_hosts.yaml
10. 쿠버네티스 설치
▪ vagrant 실행
# vagrant up
※ 약 10분 ~20분 소요(컴퓨터 사양에 따라 상이)
※ 쿠버네티스 설치(최신 버전)와 클러스터 구성
※ CNI는 calico 최신버전
※ CRI는 containered를 사용하고 CLI는 crictl사용
11. 쿠버네티스 설치
▪ 쿠버네티스 설치와 클러스터 상태 확인
# ssh vagrant@[control-plane IP]
# sudo su
# kubectl get no ; 모든 노드 Ready 확인
# kubectl get po -A ; 모든 pod running상태 확인
# helm ; helm 설치 확인
13. 쿠버네티스 운영
▪ 테스트 목적이라면 vagrant 명령어로 제어하는 것보다 직접 virtualbox로 직접 제어하는 것이 편리
▪ 원하는 virtualbox을 복수선택하고 오른쪽버튼 클릭 후 상태 제어
①
②
① 일시정지
② 정지
14. 쿠버네티스 운영
▪ virtualbox를 일시중지하고 다시 시작하는 것보다 완전히 끄고 다시 시작하는 것을 권장
▪ 원인은 못밝혔으나(아마도 시간동기화?) 일시정지하고 오랜 시간이 지난 후에 실행하면 쿠버네티스 클러스터 동작 X
▪ virtualbox를 group으로 묶어서 관리하는 것을 추천