brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Jul 04. 2021

쿠버1탄-14. 노트북에 K8S설치법

2025년 1월 업데이트

다음은 쿠버네티스 스터디 자료를 참고해  정리한 내용입니다.


3년전 작성본인데 버전업 후 오류가 납니다.

오류 내용 확인해서 수정이 필요한 내용입니다.


도커, 쿠버네티스 실습을 하기 위한 실습환경 구축 자료 입니다.

노트북에 K8S설치해서 사용 하기를 추천합니다.

비용이 안나오는 환경입니다.

설치 순서는  Virtual box,베어그런트, K8s설치 



<1> 1단계 - Virtual box 설치

<2> 2단계 - 베어그런트 설치

<3> 3단계 - K8s 설치법 -  오류 수정중

<4> K3s 설치법 (옵션)

<5> 다음 과정

<10> 기타 툴 설치




<1> 1단계 - Virtual box 설치


1

가상머신을 생성할수 있는 소프트웨어.



2

내 Windows 11 PC에 설치해보자.



https://www.virtualbox.org/wiki/Downloads

Windows hosts  버전을 설치 시도 한다.


3

C++이 미리 설치되어야 한다.




https://learn.microsoft.com/ko-kr/cpp/windows/latest-supported-vc-redist?view=msvc-170



4

설치후 PC 재시작 필요



5

내  Windows PC 에 설치한다. 

설치 경로를 지정한다. 

디폴트로  C:  로 잡지만 나는 D: 드라이브에 설치한다.

C: 드라이브로 해도 된다~


(5분)




<2> 2단계 - 베어그런트 설치



1

하시코프사 소프트웨어

사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해두었다가 필요할 때 시스템을 사용할 수 있는 상태로 만들어주는 프로비저닝 기능을 위함



2

https://www.vagrantup.com/downloads



설치 경로를 지정한다. 디폴트로  C 드라이브 로 잡지만 나는 D: 드라이브에 설치한다.

(5분)



3

PC 재부팅이 필요하다~~







<3> 3단계 - K8s 설치법 -  오류 수정중




1

나는 WINDOWS PC에  D:\1K8S 폴더를 만든다.   

D: 드라이브에 공간이 많아서 ^^

 C:\1K8S 폴더를 만들어도 된다.)



2

# k8s 설치용  vagrant 파일 다운로드


D:\1K8S > 


curl -O https://raw.githubusercontent.com/gasida/DKOS/main/2/Vagrantfile





실행



3

# 배포

vagrant up

(30분 걸림)



4

중간에 Windows 접근 필요로 보안 허용  클릭 몇번 해줘야 한다.



5


https://vclock.kr/timer/#countdown=00:10:00&enabled=0&seconds=600&sound=xylophone&loop=1





6

바탕화면에 Virtual box 실행.


k8s-m 설치

k8s-w1 설치

k8s-w2 설치 순으로 진행된다.





7

설치 완료!!

# 참고 :  설치완료후  Virtoual box 에서 마우스 이동법 = Crtl + ALT  로 화면을 나올수 있다.






8

# 트라블 슈팅

VT-x is not avaliable 오류 나며 안되는경우?


노트북이나 PC에서 가상화 허용이 Enable 안되어 있어서 그렇다.

PC부팅하여 BIOS들어가서 가상화 Enable 해주기 바란다.





# C:\1k8s>vagrant up --provider=virtualbox



# 오류

    k8s-w2: Processing triggers for libc-bin (2.31-0ubuntu9.16) ...

    k8s-w2: deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main

    k8s-w2: Hit:1 https://download.docker.com/linux/ubuntu focal InRelease

    k8s-w2: Ign:2 https://packages.cloud.google.com/apt kubernetes-xenial InRelease

    k8s-w2: Hit:3 http://security.ubuntu.com/ubuntu focal-security InRelease

    k8s-w2: Err:4 https://packages.cloud.google.com/apt kubernetes-xenial Release

    k8s-w2:   404  Not Found [IP: 172.217.161.46 443]

    k8s-w2: Hit:5 http://archive.ubuntu.com/ubuntu focal InRelease

    k8s-w2: Hit:6 http://archive.ubuntu.com/ubuntu focal-updates InRelease

    k8s-w2: Hit:7 http://archive.ubuntu.com/ubuntu focal-backports InRelease

    k8s-w2: Reading package lists...

    k8s-w2: E: The repository 'https://apt.kubernetes.io kubernetes-xenial Release' does not have a Release file.

    k8s-w2: Reading package lists...

    k8s-w2: Building dependency tree...

    k8s-w2: Reading state information...

    k8s-w2: E: Unable to locate package kubelet

    k8s-w2: E: Unable to locate package kubectl

    k8s-w2: E: Unable to locate package kubeadm

    k8s-w2: E: Unable to locate package kubelet

    k8s-w2: E: Unable to locate package kubeadm

    k8s-w2: E: Unable to locate package kubectl

    k8s-w2: E: No packages found

    k8s-w2: Failed to enable unit: Unit file kubelet.service does not exist.

The SSH command responded with a non-zero exit status. Vagrant

assumes that this means the command failed. The output for this command

should be in the log above. Please read the output to determine what

went wrong.




9

사용해보기


## 마스터 노드 접속  ,  putty 사용


ssh root@192.168.100.10

# 암호는 qwe123


혹은

ssh root@127.0.0.1 -p 50010  


혹은

ssh root@<HomePC IP> -p 50010



10

## k8s 클러스터에 노드 확인


kubectl get node

root@k8s-m:~# kubectl get node

NAME     STATUS   ROLES                  AGE     VERSION

k8s-m    Ready    control-plane,master   3m27s   v1.21.1

k8s-w1   Ready    <none>                 99s     v1.21.1

k8s-w2   Ready    <none>                 99s     v1.21.1



## 워커노드 접속 : root / qwe123


ssh root@127.0.0.1 -p 50011  

# 암호는 qwe123, 워커노드1


ssh root@127.0.0.1 -p 50012  

# 암호는 qwe123, 워커노드2


ssh root@127.0.0.1 -p 50013  

# 암호는 qwe123, 워커노드3

0...

혹은

ssh root@<HomePC IP> -p 50011

ssh root@<HomePC IP> -p 50012

ssh root@<HomePC IP> -p 50013



혹은

ssh root@192.168.100.101 # 워커노드1

ssh root@192.168.100.102 # 워커노드2

ssh root@192.168.100.103 # 워커노드3


# 실습 진행 후 중지 : 생성된 순서대로 삭제됨

vagrant halt


# 중지된 VM 시작

vagrant reload


# 종료 및 VM 삭제

vagrant destroy -f && rm -rf .vagrant share



11

# 설치파일 버전 관리 - 2025-01-08 

쿠버네티스 설치는 됨

로컬로 로그인 가능

ssh 안됨, 유틸 설치 안됨 


#  파일 첨부



# 설치파일 버전 관리 - 2025-01-08- 1 ?






<4> K3s 설치법 (옵션)


# 미니 쿠버네티스인 k3s 설치법이다.


메모리가 8G이상이라면 K8s를 설치하자


1

pc에 1k3s  폴더 만들기


설치 스크립트 다운로드

curl -O https://raw.githubusercontent.com/gasida/DKOS/main/K3S/Vagrantfile



2

서버 사양  수정



3

설치

vagrant up


# 배포

# ssh 접속 : root / qwe123

## 마스터 노드 접속


vagrant ssh k3s-m

혹은

ssh root@127.0.0.1 -p 60010  # 암호는 qwe123


## k8s 클러스터에 노드 확인

kubectl get node


root@k3s-m:~# kubectl get node

NAME     STATUS   ROLES                  AGE     VERSION

k3s-m    Ready    control-plane,master   3m10s   v1.21.1+k3s1

k3s-w1   Ready    <none>                 98s     v1.21.1+k3s1

k3s-w2   Ready    <none>                 17s     v1.21.1+k3s1


kubectl get node -o wide


root@k3s-m:~# kubectl get node -o wide

NAME     STATUS   ROLES                  AGE     VERSION        INTERNAL-IP       EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION     CONTAINER-RUNTIME

k3s-m    Ready    control-plane,master   3m13s   v1.21.1+k3s1   192.168.200.10    <none>        Ubuntu 20.04.2 LTS   5.4.0-74-generic   docker://20.10.7

k3s-w1   Ready    <none>                 101s    v1.21.1+k3s1   192.168.200.101   <none>        Ubuntu 20.04.2 LTS   5.4.0-74-generic   docker://20.10.7

k3s-w2   Ready    <none>                 20s     v1.21.1+k3s1   192.168.200.102   <none>        Ubuntu 20.04.2 LTS   5.4.0-74-generic   docker://20.10.7


## 워커노드 접속 : root / qwe123


vagrant ssh k3s-w1

혹은


ssh root@127.0.0.1 -p 60011  # 암호는 qwe123, 워커노드1

vagrant ssh k3s-w2

혹은

ssh root@127.0.0.1 -p 60012  # 암호는 qwe123, 워커노드2


# 중지

vagrant halt


# 중지된 VM 시작

vagrant reload


# 종료 및 VM 삭제

vagrant destroy -f && rm -rf .vagrant share


# 실습 진행 후 중지 : 생성된 순서대로 삭제됨

vagrant halt


# 중지된 VM 시작

vagrant reload


# 종료 및 VM 삭제

vagrant destroy -f && rm -rf .vagrant share




https://brunch.co.kr/@topasvga/705



<5> 다음 과정


https://brunch.co.kr/@topasvga/1667




<10> 기타 툴 설치


putty

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html





전체 보기


https://brunch.co.kr/@topasvga/1656




다음 


https://brunch.co.kr/@topasvga/1683



브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari