2011년 12월 6일 화요일

Ubuntu10.04(Lucid)에서 Sun Java 1.6 설치

하둡을 설치하기 위해서는 SUN Java 1.6이상의 버전이 필요하다. 현재 Ubuntu 10.04에서는 OpenJDK만  apt-get으로 설치할 수 있으므로, 이를 위해서는 새로 저장소를 등록해야 한다.

1. 저장소 추가
$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner" 
$ sudo apt-get update
2. SUN java1.6 설치
$ sudo apt-get install sun-java6-jdk
3. 설치된 자바목록을 확인
$ sudo update-java-alternatives -l
java-6-openjdk 1061 /usr/lib/jvm/java-6-openjdk
java-6-sun 63 /usr/lib/jvm/java-6-sun
4. 사용하려는 자바버전으로 변경
$ sudo update-java-alternatives -s java-6-sun

5. 설치된 자바버전 확인
$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Server VM (build 20.1-b02, mixed mode)

참조
http://www.botskool.com/forum/computer-programming/linuxunix/install-sun-java-6-ubuntu-1004-jdk-jre
http://googolog.tistory.com/207

 

2011년 3월 18일 금요일

클러스터 벤치마크

1. ATLAS 설치

1) 소스코드 다운로드
https://sourceforge.net/project/showfiles.php?group_id=23725

2) 설치
$ mkdir my_build_dir
$ cd my_build_dir
$ /path/to/ATLAS/configure [flags]
$ make              ! tune and compile library
$ make check        ! perform sanity tests
$ make ptcheck      ! checks of threaded code for multiprocessor systems
$ make time         ! provide performance summary as % of clock rate
$ make install      ! Copy library and include files to other directories
2. HPL 설치

1) 소스코드 다운로드
http://www.netlib.org/benchmark/hpl/

2) 압축해제 후 setup/Make.Linux_PII_CBLAS를  소스 최상위 디렉토리로 복사.
$ cp setup/Make.Linux_PII_CBLAS .
3) Make.Linux_PII_CBLAS 수정
#TOPdir       = $(HOME)/hpl
TOPdir       = $(HOME)/Utils/cluster/hpl-2.0
 
#MPdir        = /usr/local/mpi
MPdir        = /usr
#MPlib        = $(MPdir)/lib/libmpich.a
MPlib        = $(MPdir)/lib64/libmpi.so #64비트, openmpi사용시 
#LAdir        = $(HOME)/netlib/ARCHIVES/Linux_PII
LAdir        = /usr/local/atlas/lib
4) 컴파일
$ make arch=Linux_PII_CBLAS
5) 벤치마크 실행
$ cd bin/Linux_PII_CBLAS
$ mpirun -np 4 xhpl

2011년 2월 23일 수요일

볼 책들

<3불전략>
<경영학 콘서트>
<일본 제국은 왜 실패하였는가? 태평양 전쟁에서 배우는 조직경영>
<전쟁론> 카를 폰 클라우제비츠, 유제승 역
<교토식 경영>
<미국의 베트남 전쟁 : 미국은 어떻게 베트남에서 패배했는가?>

2011년 2월 17일 목요일

Torque 설치 (Slackware 13.1 기준)

1) http://www.clusterresources.com/downloads/torque/에서 소스코드 다운로드

2) 압축해제 후 헤드 노드에 설치
$ tar -zxvf torque-3.0.0.tar.gz
$ cd torque-3.0.0
$ ./configure
$ make
$ make install
3) 계산 노드에 다음 두 스크립트를 복사하여 설치.
$ ./torque-package-clients-linux-i686.sh --install
$ ./torque-package-mom-linux-i686.sh --install
4) 설치 디렉토리의 torque.setup 스크립트 실행 (헤드 노드)
$ ./torque.setup test
5) /var/spool/torque/server_priv/nodes에 계산 노드 목록 기술.
node1 np=2
node2 np=2
...
6)  /var/spool/torque/mom_priv/config에 다음 기술 (계산 노드)
$pbsserver     headnode    # note: hostname running pbs_server
$logevent       255               # bitmap of which events to log
7) 데몬 실행
$ pbs_server (헤드노드)
$ pbs_sched (헤드노드)
$ pbs_mom (헤드 & 계산노드)
8) job 제출(run.sh는 실행 스크립트)
$ qsub run.sh
$ qstat (큐상태 확인)

Ganglia 설치(Slackware 13.1 기준)

1) Ganglia 설치전에 아래 패키지가 설치해야 한다.

* APR (http://apr.apache.org/)
* libConfuse (http://www.nongnu.org/confuse/)
* expat (http://expat.sourceforge.net/)
* python (http://www.python.org/)
* PCRE (http://www.pcre.org/)
* RRDtool (http://oss.oetiker.ch/rrdtool/)

이중 libConfuse와 RRDTool은 Slackbuild에서 다운로드 받을 수있고 python은 이미 깔려 있다. 나머지 패키지는 직접 소스를 다운로드 받아 설치해야 한다.

2) 설치가 완료되면,  http://sourceforge.net/projects/ganglia/ 에서 Ganglia 소스코드를 다운로드 받아 아래와 같이 설치한다.
$ ./configure --sysconfdir=/etc/ganglia --with-gmetad
$ make
$ make install
3)  gmond와 gmetad 초기화스크립트를 시작 스크립트로 복사
$ cp gmond/gmond.init /etc/rc.d/rc.gmond
$ cp gmetad/gmetad.init /etc/rc.d/rc.gmetad (헤드노드만)
4) gmond.conf를 /etc/ganglia로 복사
$ cp gmond/gmond.conf /etc/ganglia/.
$ cp gmetad/gmetad.conf /etc/ganglia/. (헤드 노드만)
5) /etc/ganglia/gmond.conf 수정
name : 클러스터 이름
host : gmond가 수집한 정보를 보낼 서버의 주소
bind : 다른 노드에서 보내온 정보를 받을 서버의 주소
계산노드는 host만, 헤드노드는 host와 bind 모두 설정
cluster {
  //name = "unspecified"
  name = "my cluster" 
}
udp_send_channel {
  #bind_hostname = yes # Highly recommended, soon to be default.
                       # This option tells gmond to use a source address
                       # that resolves to the machine's hostname.  Without
                       # this, the metrics may appear to come from any
                       # interface and the DNS names associated with
                       # those IPs will be used to create the RRDs.
  //mcast_join = 239.2.11.71
  host = 192.168.1.1 
  port = 8649
  ttl = 1
/* You can specify as many udp_recv_channels as you like as well. */
udp_recv_channel {
  //mcast_join = 239.2.11.71
  port = 8649
  //bind = 239.2.11.71
  bind = 192.168.1.1
}
6) /etc/ganglia/gmetad.conf 수정 (헤드 노드만)
클러스터의 이름과 gmond.conf에서 bind로 설정된 노드의 주소 또는 이름 추가
data_source "my cluster" 192.168.1.1
7) Web Frontend 설치
mkdir /var/www/htdoc/ganglia
cp -a web/* /var/www/htdoc/ganglia/
8) /var/www/htdoc/ganglia/conf.php에서 rrd 파일 저장위치와 rrdtool의 위치 확인
# Where gmetad stores the rrd archives.
$gmetad_root = "/var/lib/ganglia";
$rrds = "$gmetad_root/rrds";

# Leave this alone if rrdtool is installed in $gmetad_root,
# otherwise, change it if it is installed elsewhere (like /usr/bin)
define("RRDTOOL", "/usr/bin/rrdtool");
9) 8)의 rrd파일 저장 위치 생성 후 nobody로 소유자 변경.
mkdir -p /var/lib/ganglia/rrds
chown nobody.nobody /var/lib/ganglia/rrds
10) Apache 설정에 PHP 모듈이 활성화 되어있는지 확인
/etc/httpd/httpd.conf에서 다음 라인의 주석제거
# Uncomment the following line to enable PHP:
#
Include /etc/httpd/mod_php.conf
11) 모든 노드에서 gmond 시작, 헤드노드에서 gmetad , httpd 시작
$ /etc/rc.d/rc.gmond start
$ /etc/rc.d/rc.gmetad start
$ /etc/rc.d/rc.httpd start
12) gmond, gmetad 정상동작 확인
$telnet node2 8649
$telnet localhost 8651 
 13) http://localhost/ganglia/index.php로 접속

2011년 2월 13일 일요일

Putty / Xming 사용을 위한 팁(Slackware 13.1 기준)

윈도우에서 리눅스 클라우드로 접속하기 위해 오픈소스 터미널 프로그램인 Putty와 Xming을 사용하였다. 하지만 Putty에서 X11 forwarding Enable을 체크하여 X-window 프로그램을 실행시켜 보았으나 되지 않았다. 구글링 결과 슬랙웨어 리눅스의 sshd 설정도 변경시켜 주어야 한다.

1. /etc/ssh/sshd_config를 root계정으로 연 후에 아래와 같이 변경한다.
#X11Forwarding no
X11Forwarding yes

2. sshd가 부팅시에 자동실행 될 수 있도록 실행권한를 부여한다.
chmod +x /etc/rc.d/sshd
3. sshd를 재실행한다.
/etc/rc.d/rc.sshd restart
4. putty로 접속후에 xterm을 실행시켜 본다.


참고자료) http://jormamakela.wordpress.com/2010/09/27/basic-configuration-on-a-linux-server-slackware-13-1/