가상환경 설치(virtual hadoop cluster 구성)

가상환경 설치(virtual hadoop cluster 구성)

1. virtualbox와 extension pack 설치

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

virtualbox를 다운 받고 실행하면 별 다른 조건 없이 다음으로 넘어가고 설치를 끝내면 된다.

설치가 끝나고 virtualbox를 실행시키면

도구 - 환경설정 - 확장 - 맨 오른쪽 플러스 상자 - 다운 받은 extension pack 클릭 - 확인

하면 VirtualBox 설치와 확장팩 설정이 끝난다.

2. Raspberry Pi 설치

https://www.raspberrypi.com/software/

해당 사이트에 접속해서 Raspberry Pi Desktop for PC and Mac 에 있는 다운로드 버튼을 클릭하면 된다.

용량이 크기 때문에 설치하는 데 시간이 오래 걸릴 것이다. 인내심을 갖고 기다리자.

설치가 끝나면 실행하지 않고 다음 단계로 넘어간다.

3. Raspberry Pi 가상 머신 만들기

VirtualBox에서 새로 만들기를 클릭한다.

이름을 pi_master로 하고, 머신 폴더는 임의로 원하는 곳에 VirtualBox VMs 폴더를 만돌고 지정해준다.

종류는 Linux, 버전은 Debian (64-bit)로 해준다. 다음 클릭.

1024로 할당해주고 다음 클릭.

지금 새 가상 하드 디스크 만들기를 선택한 상태로 만들기 클릭.

동적할당 선택한 상태로 다음 클릭.

파일 크기는 (64GB, 가급적 16GB 이상) 설정하고 만들기 클릭.

상단에 시작 클릭.

시동 디스크 선택에서 폴더 아이콘 클릭하고, 다운 받은 라즈베리 파이 iso 파일 클릭하고 선택 후 시작.

pi_master 시작 후 설정

Install -> Amercian English -> Guided - use disk

All files in one partition -> Finish partitioning and write changes to disk

Install FRUB boot loader -> /dev/sda -> Continue

해당 화면이 뜨면 가상머신이 정상적으로 만들어진 것이다.

4. Raspberry Pi 가상머신 설정

해당 화면이 뜨면 Next를 클릭.

coutry : South Korea 설정 후 Next

Change Password : bigdata로 설정

Uodate Sofrware : Skip 클릭

Setup 완료

Software Update 수행

- 패키지 인덱스 정보 갱신 : $ sudo apt-get update

- 설치된 패키지 업그레이도 : $ sudo apt-get upgrade

VirtualBox Guest Additions 설치

장치 - 게스트 확장 CD 이미지 삽입

OK 클릭

Terminal 창에

$ cd /media/cdrom0

$ sudo bash VBoxLinuxAdditions.run

설치 완료 후 Guest OS 리부트 시켜야 함

Terminal 창에

$ sudo shutdown -r now

강제 마운트 해제해야 함

리부트 후 장치 -> 광학 드라이브 -> 가상 드라이브에서 디스크 꺼내기 실행

5. Cluster 구성

pi_master 복제 후 bigpi1 생성

pi_master 우클릭 - 복제

이름 : bigpi1

경로 : pi_master와 같은 경로

MAC 주소 정책 : 모든 네트워크 어댑터의 새 MAC 주소 생성

완전한 복제 선택

복제 완료

NameNode 설정

VirtualBox에서 도구 - 환경설정 - 네트워크 선택

오른쪽 초록색 플러스 아이콘 선택 - NAT 네트워크 더블클릭 - PiNet으로 이름 변경 - 확인

bigpi1 선택 - 설정 - 네트워크

NAT 네트워크 지정, 이름은 PiNet으로 변경

할당된 IP 확인

$ hostname -I

bigpi1에 고정 IP 할당

gateway 주소 확인

$ netstat -nr

/etc/dhcpcd.conf 파일 수정

$ sudo nano /etc/dhcpcd.conf

interface eth0 static ip_address=10.0.2.100/24 # 수정 static routers=10.0.2.1 static domain_name_servers=10.2.0.1 8.8.8.8 fd51:42f8:caae:d92e::1 # 앞에 '#' 없애기

파일 저장하고 reboot(sudo shutdown -r now)

OpenJDK8 추가 설치

자바 버전 확인하기

$ java -version

정식 패키지 repo에서 누락 -> AdoptOpenJDK Repo에서 직접 찾아서 설치

$ sudo apt-get install software-properties-common

$ wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -

$ sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/

$ sudo apt update -y

$ sudo apt install adoptopenjdk-8-hotspot -y

새로 설치된 OpenJDK8을 default version으로 지정

$ sudo update-alternatives --config java

새로운 java 버전과 위치 확인

$ java -version

$ which java

가상 머신의 SSH 활성화

preferences -> Raspberry Pi Configuration 클릭

Enable - OK

가상머신의 hostname과 hosts 파일 수정

$ hostname

$ sudo nano /etc/hostname

bigpi1으로 변경

Ctrl + X 누르고 y 누르기

$ sudo nano /etc/hosts

127.0,1,1 bigpi1 10.0.2.100 bigpi1 10.0.2.101 bigpi2 10.0.2.102 bigpi3 10.0.2.103 bigpi4

변경 후 Ctrl + X, y

재부팅 : $ sudo shutdown -r now

재부팅 후 raspberry 에서 bigpi1으로 변경됨

나머지 가상 머신들도 복제 생성

pi_master 우클릭 - 복제

이름 : bigpi2

경로 : pi_master와 같은 경로

MAC 주소 정책 : 모든 네트워크 어댑터의 새 MAC 주소 생성

완전한 복제 선택

pi_master 우클릭 - 복제

이름 : bigpi3

경로 : pi_master와 같은 경로

MAC 주소 정책 : 모든 네트워크 어댑터의 새 MAC 주소 생성

완전한 복제 선택

pi_master 우클릭 - 복제

이름 : bigpi4

경로 : pi_master와 같은 경로

MAC 주소 정책 : 모든 네트워크 어댑터의 새 MAC 주소 생성

완전한 복제 선택

bigpi4 까지 복제 완료

bigpi2, bigpi3, bigpi4 각각 ip, hostname, hosts 수정

- bigpi2(10.0.2.101), bigpi3(10.0.2.102), bigpi4(10.0.2.103)

$ sudo nano /etc/dhcpcd.conf

$ sudo nano /etc/hosts

$ sudo nano /etc/hostname

$ sudo shutdown -r now

리부팅 후 시작

$ hostname -I

$ hostname

hostname 바뀌었는지 확인

$ ping google.com

구글 사이트와 ping 되는지 확인

[bigpi2 수정]

Cluster Node들 간 SSH 설정

NAT Network를 통해 서로 연결됨을 확인

bigpi1 ~ bigpi4 순서대로

$ ping bigpi2 -> $ ping bigpi3 -> $ ping bigpi4 -> $ ping bigpi1

정상적으로 ping 연결 되었다.

from http://wroni.tistory.com/24 by ccl(A) rewrite - 2021-12-16 15:01:24