728x90
반응형

가상 머신을 만들기 전 쿠버네티스 클러스터를 구성하기 위한 노드의 최소 스펙이 필요하다고 한다.
- 노드당 메모리 크기 2GB 이상 필요
- 마스터 노드에는 프로세서가 2개 이상 필요
- 클러스터의 모든 시스템 간 네트워크 연결이 필요 (공용이나 사설 네트워크 가능)
- 모든 노드에 대해 고유한 호스트 이름이 있어야 한다.
 - 스왑 비활성화, kubelet 이 제대로 작동하게 하려면 반드시 스왑을 사용하지 않도록 해야한다.


VirtualBox 를 사용해서 마스터 노드 가상 머신을 만들어보자.
가상 머신을 만드는 과정은 생각보다 쉬울 수도 있는데 처음하다보면 헷갈리는 부분이 정말 많다.
왜 이걸 선택하는지 궁금한 것도 많아지고 이것저것 찾아보다보면 시간이 정말 빠르게 지나간다.

다음으로 가상 머신 만드는 과정에 대해서 간단하게 정리해봤다.

# 가상 머신 새로 만들기
1. 가상 머신 만들기
  - [새로만들기(N)] 클릭
2. 가상 머신 기본 설정
  - 이름 : k8s-master
  - 가상 머신 파일 위치 : [원하는 위치]
  - 종류 : Linux
  - 버전 : Other Linux (64bit)
3. 가상 머신 메모리 크기 설정
  - 3072GB ( 각자 상황에 맞춰 원하는 크기로 설정, 대신 2GB 이상! )
4. 가상 머신 하드 디스크 설정
  - 지금 새 가상 하드 디스크 만들기 선택
  - VDI (VirtualBox 디스크 이미지)를 선택
  - [동적 할당] 선택
  - 파일 크기 설정 : 150GB
# 가상 머신 생성 후 [설정] 클릭
5. 가상 머신 프로세서 개수 설정
  - [시스템] - [프로세서] 에서 프로세서 개수 2개 (최소 프로세서 2개 이상)
6. 가상 머신 저장소 이미지 설정
  - [저장소]
  - 비어있는 광학 드라이브 선택
  - 오른쪽에 디스크 모양 아이콘 클릭
  - [가상 광학 디스크 선택/만들기 ...] 를 선택
  - [추가] 클릭 후 이미지 가져오기
  - 추가된 이미지 선택
  - 비어있는 광학 드라이브에 추가된 이미지 확인
7. 가상 머신 네트워크 설정
  - [네트워크] - [어댑터 1] 에 다음에 연결됨 부분에서 [NAT 네트워크] 선택
  - VirtualBox 상단 메뉴의 [환경 설정] - 네트워크 에서 NatNetwork 생성
  - 사이더 설정
  - [포트 포워딩] 클릭 후 포트 포워딩 설정


이 과정들을 하나씩 해보면서 정리해봤다.

1. 가상 머신 만들기

우선, VirtualBox를 실행하고 가상 머신을 새로 만들어준다. [새로 만들기] 클릭!

가상 머신 새로 만들기

 

2. 가상 머신 기본 설정

다음으로 이름과 폴더 위치, 종류, 버전 등을 설정해준다.
나는 CentOS 7 버전을 사용할 예정이라 아래 사진처럼 설정해주었다.
버전은 CentOS 가 따로 안보이길래 Other Linux 로 설정했다.
Redhat 계열인데 해도 상관 없지 않을까? 나중에 해봐야지

가상 머신 설정

 

3. 가상 머신 메모리 크기 설정

다음은 메모리 크기를 설정해주는 부분인데
메모리 같은 경우 원하는 크기만큼 설정해주면 되는 부분인데
쿠버네티스 클러스터를 구축하기 위해서는 최소 2GB 크기를 가져야 한다.
나는 메모리 크기를 3GB 로 설정했다.
1GB = 1024MB 니까 3GB = 3072MB !

가상 머신 메모리 크기 설정

 

4. 가상 머신 하드 디스크 설정

다음으로 가상 머신에 하드 디스크를 추가하는 과정인데
따로 디스크를 추가하지 않았고 기존에 없기 때문에 새로 만들어준다.

가상 머신 하드 디스크 설정 1

만들기를 누르면 하드 디스크 파일 종류를 선택하라고 하는데
나는 CentOS 7 minimal 디스크 이미지를 사용할 거니까
VDI (VirtualBox 디스크 이미지)를 선택해준다.

가상 머신 이미지 설정

다음을 누르게 되면
하드 디스크에 용량을 얼마나 사용할 거냐고 묻는다.
변경 없이 [동적 할당]으로 한다.

가상 머신 하드 디스크 설정 2

다음을 누르니 디스크 용량을 얼마나 사용할 건지 정해줘야한다.
이 부분도 각자 상황에 맞게 원하는 만큼 설정해주면 되는데
나는 150GB로 설정해주었다.

가상 머신 디스크 용량 설정

와.... 드디어 마스터 노드가 될 가상 머신 하나 생성했다 ㅎㅎ
만들어진 가상 머신 확인 !

가상 머신 만들기 완료 !

 

5. 가상 머신 프로세서 개수 설정

여기서 끝난게 아니라 CPU와 이미지 설정 그리고 네트워크 설정도 해주어야 한다.
가상 머신을 선택하고 설정을 눌러준다.

설정을 들어가게 되면
[시스템] - [프로세서] 부분에서 CPU 프로세서 개수를 설정할 수 있다.
여기서 프로세서 개수를 2개로 설정해준다.

가상 머신 프로세서 개수 설정

 

6. 가상 머신 저장소 이미지 설정

그리고 따로 OS 이미지를 넣어주지 않았기 때문에
저장소에 OS 이미지를 넣어주어야 한다.
[저장소] 탭을 누르게 되면 비어있는 광학 드라이브가 보인다.
드라이브를 선택하면 광학 드라이브라는 곳에 가장 오른쪽에 보이는 디스크 모양을 선택하면
두 가지 메뉴가 나오는데 [가상 광학 디스크 선택/만들기 ...] 를 선택한다.

가상 머신 OS 이미지 설정

그럼 이미지를 추가하는 화면이 나오는데
추가를 눌러 다운로드 받았던 CentOS 7 minimal 버전의 ISO 파일을 선택해서 넣어준다.

가상 머신 이미지 추가

그럼 추가한 이미지를 확인할 수 있고 이미지를 선택한다.

추가된 이미지 선택

그럼 해당 이미지가 저장소 드라이브에 들어간 것을 확인할 수 있다.

가상 머신 이미지 선택

 

7. 가상 머신 네트워크 설정

이제 마지막으로 네트워크 설정만 해주면 된다 !!!
어떻게 설정해줘야 하는지 그리고 각 메뉴가 무엇인지 몰라서 이것저것 찾아봤다.

NAT은 가상 머신 내에서 자유롭게 IP를 할당해주는 것이고
어댑터에 브리지는 호스트와 IP 대역대가 같은 고정 IP 라고 한다.

그리고 가상 머신을 사용할 때에는 서버 역할을 하고 있고
나 또한 서버 역할의 가상 머신을 만드는 중이기도 한데
NAT으로 설정되어있는 가상 머신은 외부에서 접속이 불가능하다고 한다.
그래서 나는 일단 네트워크 설정에서 [어댑터에 브리지] 로 설정해주었다. 아래에 추가 설명
만약 네트워크와 관련된 문제가 생기면 그때 수정해보는 걸로 ㅎㅎ

가상 머신 네트워크 설정


### CenOS 설치 이후 네트워크 설정 변경 사항 ###
[어댑터에 브리지] 로 설정했더니 네트워크 설정이 되지 않았다.
그래서 [어댑터에 브리지] -> [NAT 네트워크] 로 설정해주었다.

NAT 네트워크를 설정하게 되면 VirtualBox 에서 따로 네트워크를 설정해주어야 한다.

VirtualBox 상단 메뉴에서 [환경 설정] 에 들어가서
[네트워크] 탭을 보면 NAT 네트워크가 아무것도 없는 것을 확인할 수 있다.

그럼 NAT 네트워크를 생성해주어야 한다.
오른쪽에 보면 + 버튼이 보이고 NAT 네트워크를 추가할 수 있다.

추가하면 NatNetwork 가 생성되는 것을 확인할 수 있다.
더블 클릭하게 되면 네트워크 사이더(CIDR)를 설정할 수 있고 포트 포워딩 또한 해줄 수 있다.
네트워크 사이더는 네트워크 클래스 없는 도메인간 라우팅 기법이라고 한다.
나는 사이더 값을 수정하지 않고 그대로 두었다.

그리고 포트 포워딩을 통해 쿠버네티스 클러스터 노드를 추가해주었다.

호스트 IP는 Localhost 로 설정해주고
호스트 포트는 각 10030, 10031, 10032 로 설정해주었다.
게스트 IP는 각 노드별로 설정해주었다.
게스트 포트는 ssh 기본 포트인 22로 설정해주었다.

예를 들어,
localhost 에서 10030 포트로 접속하게 되면 10.0.2.10 의 22번 포트로 접속할 수 있다.


이렇게 기본적인 가상 머신을 만들고 기본 자원 설정까지 했다.
이제 들어가서 구성 설정하고 필요한 것들을 설치해야겠다.
만들고나서 바로 실행했더니 오류가 뜨면서 가상 머신 실행이 되지 않고
심지어 하이퍼바이저 오류가 발생하면서 블루스크린이....
그래서 전에도 이런 적이 있어 확장팩을 다운로드 받아서 추가해주었더니 해결되었다.

그래서 VirtualBox 에 확장팩을 추가하는 방법이다.

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

 

Downloads – Oracle VM VirtualBox

Download VirtualBox Here you will find links to VirtualBox binaries and its source code. VirtualBox binaries By downloading, you agree to the terms and conditions of the respective license. If you're looking for the latest VirtualBox 6.0 packages, see Virt

www.virtualbox.org

VirtualBox를 다운로드 하는 곳에서 아래에 잘 보면

VirtualBox Extension Pack 이라는 부분을 확인할 수 있는데
아래에 잘 보면 All supported platforms 를 클릭하면 확장팩을 다운로드 받을 수 있다.
다운로드 받고 나서 VirtualBox에 추가해주어야 하는데 추가하는 방법은 이렇게 하면 된다.

VirtualBox 메뉴에서 [파일] - [환경 설정] 으로 들어간다.

그리고 [확장] 탭에서 오른쪽에 + 버튼을 눌러 다운로드 받은 확장 패키지 파일을 추가하면
확장 패키지가 활성화된 것을 확인할 수 있다.

그리고 가상 머신을 다시 실행하면~

실행이 잘 되는 것을 확인할 수 있다 ㅎㅎ
이제 CentOS 설치해야 겠다.

 

- 참고 사이트

https://velog.io/@modsiw/%EC%96%B4%EB%8C%91%ED%84%B0%EC%97%90-%EB%B8%8C%EB%A6%AC%EC%A7%80-%EC%99%80-NAT-%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90

 

어댑터에 브리지 와 NAT 의 차이점

ㅇNAT는 가상머신 내에서 할당해주는 자유로운 IP이다. => 클라이언트 기능은 해주지만 서버로서 Xㅇ어댑터에 브리지는 호스트와 IP대역대가 같은 고정적인 IP이다.=> 클라이언트와 서버 기능가상

velog.io

https://kim-dragon.tistory.com/9

 

[네트워크] CIDR이란?(사이더 란?)

오늘은 CIDR에 대해서 설명해보도록 하겠습니다. 네트워크 설계를 하면서 가장 많이 접하게 될 개념이 CIDR입니다. 사이더라고 부릅니다. CIDR의 full name은 Classless Inter-Domain Routing 으로 클래스 없는

kim-dragon.tistory.com

 

728x90
반응형
복사했습니다!