본문 바로가기
OS/OS 설치

[우분투] K8S 실습 환경을 위한 Ubuntu:20.04 설치 가이드(master/node1/node2)

by sangyeon 2021. 10. 24.
728x90

1. Ubuntu 20.04 LTS 다운로드

 

https://ubuntu.com > Download > 20.04 LTS

 

Enterprise Open Source and Linux | Ubuntu

Ubuntu is the modern, open source operating system on Linux for the enterprise server, desktop, cloud, and IoT.

ubuntu.com

20.04 LTS Desktop 다운로드(ubuntu 사이트에서 desktop 버전 ISO 이미지 다운로드)

 

 

2. k8s master 가상 머신 만들기

 

k8s의 master로 사용할 VM 생성 및 ubuntu:20.04 설치

master 하나 만들어서 환경구성 완료 후 복제해서 worker1, worker2 만들 예정

 

- Oracle VM > 새로 만들기 클릭

 

2-1. master 노드 가상머신 생성

 

 

2-2. 메모리 크기(3G) 설정

 

2-3. 하드 디스크 설정(동적할당 30G)

새 가상 하드 만들기
동적할당 > 30GB 설정

 

 

2-4. CPU 프로세서 2 Core 

master node cpu 2core

 

2-5. 네트워크 설정

NAT 네트워크 생성 > 이후 포트 포워딩 

master의 경우 127.0.0.1:104번 포트로 포트포워딩 하여 접속

node1의 경우 127.0.0.1:101번 포트로 포트포워딩 하여 접속

node2의 경우 127.0.0.1:120번 포트로 포트포워딩 하여 접속

 

2-6. master VM 네트워크 설정

 

 

2-7. 부팅 CD 구성

 

2-8. k8s-master VM 시작

Install Ubuntu

 

2-9. 키보드 레이아웃 설정

 

2-10. 업데이트 및 기타 소프트웨어

일반 설치 및 Ubuntu 설치 중 업데이트 다운로드 선택 후 Continue

 

2-11. 설치 형식

새로 만든 디스크 지우고 설정 > OK > Install Now

 

2-12. 타임존 설정

 

2-13. 계정 생성

syhwang/welcome1로 설정 > 이 계정이 우분투 관리자 계정임(sudo 가능)

 

2-14. 설치 진행

 

2-15. Static IP 설정

 

오른쪽 상단 > 설정 > 네트워크

master 

ip address 10.100.0.104/24, gateway 10.100.0.1 dns 10.100.0.1

hostname master.example.com master

Apply 눌러서 적용 완료하고 확실하게 네트워크를 재시작하기 위해

한번 더 Wired 아래에 Connected 네트워크를 껐다 다시 켜준다.

 

이후 호스트 네임은 아래와 같이 변경한다.

sudo vi로 /etc/hostname 을 변경해주면 된다.

 

그리고 /etc/hosts에도 아래와 같이 변경된 내 호스트 이름과 다른 worker 호스트 이름을 등록한다. DNS가 없기 때문에.

 

 

2-16. 설치된 Ubuntu:20.04 LTS 정보 보기

- 커널 정보 확인 : uname -r 

- 메모리 정보 : free -h  #3G로 설정됨 -> 쿠버네티스 설치시에 2G로 줄일 예정

- cpu 정보 : lscpu

- OS 정보 : cat /etc/os-release

 

 

2-17. Root 계정 패스워드 설정

 

ubuntu os는 설치할 때 관리자 계정 하나만 만들기 때문에 기본적으로 root로 로그인이 안되고, root 패스워드가 없으니 swtich도 안된다.

그래서 root 패스워드 설정을 해야 한다.

$ sudo passwd root

$ 패스워드 입력 : root

$ 패스워드 확인 입력 : root

 

 

2-18. SSH Server 설치 및 서비스 동작

 

sudo apt-get update

sudo apt-get update

 

sudo apt-get install -y openssh-server curl vim tree

sudo apt-get install -y openssh-server curl vim tree

 

2-19. Xshell로 SSH 접속 확인

 

Xshell > 새 세션

127.0.0.1에 104번 포트로 포트포워딩을 통해 master로 접속

 

아래와 같이 Xshell을 통해 Ubuntu 접속 완료

 

설치 완료..

 

아래처럼 master에 도커를 설치하고 master vm을 복제하여 node1, node2를 생성해야 한다.

https://syhwang.tistory.com/44

 

[도커 설치] Docker Installation on Ubuntu:20.04

Docker 설치시에는 반드시 root 계정으로 설치를 진행해야 한다. 1. Docker Install > docs.docker.com을 참조하여 설치 진행 > Download and install > Docker for Linux > Install on Linux https://docs.docker..

syhwang.tistory.com

 

 

2-20. node1, node2 생성

 

아래 구성처럼 master와 node1, node2를 생성한다.

 

 

k8s-master 복제
복제 방식은 "완전한 복제"로 선택

 

복제 후, 환경 구성 설정

(ip address, hostname)

 

1. hostname 변경

$ vi /etc/hostname

> node1.example.com

 

변경 이후,

 

$ systemctl isolate graphic target 

재부팅 시작..

 

2. ip address 변경

10.100.0.104 > 10.100.0.101로 변경

 

10.100.0.101로 변경 > 이후 Wired Connection을 OFF, ON으로 켜준다.

 

이후,

> master와 node1 둘 다 기동한 상태에서 ping 체크가 정상인지를 확인한다.

root@master:~# ping -c 2 node1.example.com
PING node1.example.com (10.100.0.101) 56(84) bytes of data.
64 bytes from node1.example.com (10.100.0.101): icmp_seq=1 ttl=64 time=0.632 ms
64 bytes from node1.example.com (10.100.0.101): icmp_seq=2 ttl=64 time=1.23 ms

--- node1.example.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.632/0.932/1.232/0.300 ms


===========================================================
root@node1:~# ping -c 2 master.example.com
PING master.example.com (10.100.0.104) 56(84) bytes of data.
64 bytes from master.example.com (10.100.0.104): icmp_seq=1 ttl=64 time=0.733 ms
64 bytes from master.example.com (10.100.0.104): icmp_seq=2 ttl=64 time=0.996 ms

--- master.example.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.733/0.864/0.996/0.131 ms

 

> docker version 으로 docker가 정상적으로 설치되었는지 확인한다.

root@master:~# docker version
Client: Docker Engine - Community
 Version:           20.10.9
 API version:       1.41
 Go version:        go1.16.8
 Git commit:        c2ea9bc
 Built:             Mon Oct  4 16:08:29 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.9
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.8
  Git commit:       79ea9d3
  Built:            Mon Oct  4 16:06:37 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.11
  GitCommit:        5b46e404f6b9f661a205e28d59c982d3634148f8
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

 

이후,

node1을 복제하여 node2를 생성해주면 끝.

 

2-21. Master, Node1, Node2 스냅샷

 

이제 현재 master, node1, node2 상태를 스냅샷 떠서 보관해두기로 하자.

스냅샷 뜨기. master/node1/node2

 

728x90

'OS > OS 설치' 카테고리의 다른 글

[우분투] Ubuntu 18.04 LTS 설치 및 구성(ISO)  (1) 2021.10.22