일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- 분산분석
- pig
- k-means
- 딕셔너리
- cross validation
- 다중공선성
- SQL on 하둡
- p-value
- 교차검증
- pca
- dict
- hive
- join
- 하둡
- T-검정
- 유사도
- 밀도기반
- 결정계수
- distribution
- 데이터프레임
- 가설검정
- Sawzall
- DataFrame
- DBSCAN
- merge
- 병렬 쿼리 시스템
- SPLIT
- 분포
- list
- Python
- Today
- Total
one of a kind scene
VirtualBox로 생성한 가상머신들로 ganglia 구축하기 본문
VirtualBox로 가상머신 생성하는 단계는 생략함
[간단 요약]
- master에서는 3개의 설정파일에서 세팅하면 됨
- slave1, slave2에서는 1개의 설정파일세서만 세팅하면 됨
이렇게 하면 ganglia로 모니터링 할 수 있음
-----------------------------------------------------------------------------------------------------------------------------------
[준비단계]
가상머신은 총 3대를 생성하였고 Ubuntu 16.04 LTS 버젼이 깔려있음
1) master
2) slave1
3) slave2
이하 master, slave1, slave2로 명명되는건 가상머신을 뜻함
[가상머신 네트워크 설정]
※ VirtualBox 가상머신에서 우클릭 후 '설정'-'네트워크'에서 세팅하면 됨
1) master
어댑터1 : NAT -> 브리지 어댑터로 변경
어댑터2 : 사용안함(사용하기 해제)
할당된 ip : 192.168.219.109
2) slave1
어댑터1 : 사용하기 해제
어댑터2 : 사용하기 체크 후 브리지 어댑터로 설정
할당된 ip : 192.168.219.110
3) slave2
어댑터1 : 사용하기 해제
어댑터2 : 사용하기 체크 후 브리지 어댑터로 설정
할당된 ip : 192.168.219.112
※ 참고로 할당된 ip는 VirtualBox에서 자동으로 부여하는데
ip확인하는 방법은 터미널에서 ifconfig를 치면 알 수 있다
127.0.0.1은 localhost 서버이기때문에 이 ip는 설정에 사용되는 ip가 아님
[연결이 잘 되었는지 ping test하는 방법]
ping test는 가상머신 터미널에서 이루어짐
- 가상머신들을 모두 켜준다
- 터미널을 키고 ping을 날려준다
- ping 가상머신ip 입력
1
|
sudo apt-get update -y
|
cs |
1
|
sudo apt-get upgrade -y
|
cs |
- -y option은 yes하겠다는 뜻
- 위 작업들은 apt-get에 있는 패키지 list들을 update하고 apt-get을 upgrade하겠다는 뜻
- 3개의 가상머신에 모두 해줘야함
[기본 설치 목록]
1
|
sudo apt-get install openssh-server vim
|
cs |
- openssh-server를 설치해야 putty나 superputty로 가상머신에 접근가능
- vim은 editior
[ganglia 구축에 필요한 패키치 설치]
1) master에 설치해야하는 목록
1
2
|
sudo apt-get install apache2 mariadb-server php7.0 libapache2-mod-php7.0 php7.0-mbstring php7.0-curl php7.0-zip php7.0-gd php7.0-mysql php7.0-curl php7.0-mcrypt
sudo apt-get install ganglia-monitor rrdtool gmetad ganglia-webfrontend
|
cs |
2) slave1,2에 설치해야하는 목록
1
|
sudo systemctl start apache2 && sudo systemctl enable apache2
|
cs |
※ 아파치 서버에서 ganglia가 돌아감
2) apache.conf 설정파일 copy하기
1
|
sudo cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf
|
cs |
cp명령어는 copy한다는 뜻
/etc/ganglia-webfrontend/에 apache.conf파일을
/etc/apache2/sites-enabled/로 copy하는데 파일명을 ganglia.conf로 한다는 뜻
3) gmetad.conf파일에서 설정값 잡아주기
1
|
sudo vim /etc/ganglia/gmetad.conf
|
cs |
[설정 세팅 전]
data_source "my cluster" localhost
[설정 세팅 후]
data_source "master" 50 192.168.219.109:8649
밑줄 친 부분은 master의 ip주소 및 포트번호
포트번호는 사용안하고 있는 포트번호를 입력해주면 됨
※ master라고 쓰여진 부분은 본인이 원하는 이름으로 써주면 됨
4)gmond.conf파일에서 설정값 잡아주기
1
|
sudo vim /etc/ganglia/gmond.conf
|
cs |
[변경 전]
cluster {
name = "unspecified"
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
mcast_join = 239.2.11.71
port = 8649
ttl = 1
}
udp_recv_channel {
mcast_join = 239.2.11.71
port = 8649
bind = 239.2.11.71
}
[변경 후]
파란 글씨들이 변경된 부분
cluster {
name = "master"
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
# mcast_join = 239.2.11.71
host = 192.168.219.109
port = 8649
ttl = 1
}
udp_recv_channel {
# mcast_join = 239.2.11.71
port = 8649
# bind = 239.2.11.71
}
※ port들은 기본 8649인데 다른 포트번호를 설정했다면, 본인이 설정한 port값을 입력해주면됨
5)설정값 반영시켜 ganglia 시작 및 apache서버 재시작
1
2
3
|
sudo systemctl start ganglia-monitor
sudo systemctl start gmetad
sudo systemctl restart apache2
|
cs |
[패키지 설치 후 slave1, slave2에서 해야할 작업 및 세팅]
1)gmond.conf파일에서 설정값 잡아주기
1
|
sudo vim /etc/ganglia/gmond.conf
|
cs |
[변경 전]
cluster {
name = "unspecified"
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
mcast_join = 239.2.11.71
port = 8649
ttl = 1
}
udp_recv_channel {
mcast_join = 239.2.11.71
port = 8649
bind = 239.2.11.71
}
[변경 후]
파란 글씨들이 변경된 부분
cluster {
name = "master"
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
# mcast_join = 239.2.11.71
host = 192.168.219.109
port = 8649
ttl = 1
}
# udp_recv_channel {
# mcast_join = 239.2.11.71
# port = 8649
# bind = 239.2.11.71
# }
2)설정값 반영시켜 ganglia 시작
http://192.168.219.109/ganglia 를 웹브라우저에 입력
<주의 사항>
master -> slave1 -> slave2 순서로 가상 머신을 켜야 정상적으로 작동됨
즉, master를 먼저 켜야함
추가 : slave1, slave2를 키고나서 master를 키면 ganglia에서 slave들을 제대로 잡아내지 못함
추가2 : master에서 ganglia-monitor, gmetad, apache2 다시켜도 ganlgila에 slave들이 추가안됨
sudo systemctl start ganglia-monitor && sudo systemctl start gmetad && sudo systemctl restart apache2
추가3 : slave에서 ganglia-monitor 다시켜도 ganglia에 slvae들 추가 안됨
sudo systemctl start ganglia-monitor