Posted
Filed under Computer/HPC
이 글은 연제식으로 조금씩 조금씩 쓰려고 합니다.
한번에 모두 쓰기가 힘들것 같아서요... ^^;;

ACE는 Supercomputer 운영 및 관리에 편리하도록 개발된 Appro 제품입니다.
제가 이전에 ACE에대해 소개 자료 형식으로 만든것 중에 소비자들이 가장 궁금해 할 만한 내용을 토대로 질문답변 형식으로 만들것이 있어 그 내용을 약간 소개해보려고 합니다.
물론 현재 ACE는 좀더 많은 업그래이드가 이뤄졌기 때문에 일부 기능이 더 좋아졌을것입니다.
(저도 ACE 패치 작업에 join을 하게 되었죠... ^^*)

아래 내용은 Appro에서  Tsukuba 에 클러스터 설치 및 사용자 환경을 구축해주면서 제가 Tsukuba 작업을 진행하면서 ACE에대해 알게되고 경험해보면서 idea를 내어가며 얻은 경험을 토대로 작성한 내용입니다. 제가 ACE를 설계한것이 아니라서 어쩌면 일부 내용이 설계와 안맞을수 있을지 모르나 대부분은 경험을 토대로 썼기때문에 거의 대부분은 내용이 맞다고 보시면됩니다.



ACE


Q & A


Cluster
에 대해 상황 별로 이해를 돕고자 질문과 답변 식으로 presentation을 합니다.


ACE
의 구조적 특징

Ø   Project 또는 부서에 따라 Resource 분배가 빈번해서 Cluster를 나누거나 합쳐서 쓰고 싶다.

n  ACE Cluster 가상화(partition) 이용하여  Cluster resource split하거나 합쳐 상황에 맞게 computing power size 쉽게 조절할 있다.

 

Ø   부서 또는 Project 특성상 서로 다른 OS 또는 완전히 서로 다른 환경을 써야만 한다.

n  ACEPartition function을 이용하여 하나의 Cluster를 도입했을지라도 logical clusterpartition을 하면 각각 logical cluster는 서로 다른OS를 사용할 수도 있고 서로 다른 환경으로 구성하여 한 시스템에서 여러 OS나 환경으로 독립적으로 사용이 가능하다.

 

Ø   클러스터를 사용하다 보면 과거 설정으로 복원을 해야 될 경우가 생긴다.

n  ACE에는 cluster image revision 관리 기능이 있어 각 logical cluster 마다  설정에 따른 revision이 보관되어 있어 언제든지 쉽게 구 버전 또는 신버전으로 바꿔 사용할 수가 있다. (cluster OS환경에 대한 자동 백업기능)

n  ACE에는 전체 revision에 공통적으로 사용되어야 하는 사용자 환경설정은 따로 설정하여 revision을 바꾸더라도 그냥 환경을 이용할 수 있도록 구성되어 있다.

 

Ø   Software install 및 노드 마다 환경 설정 하려면 힘들다.

n  ACE에서는 checkout(read/write 모드) 후에 checkout 노드에서만 software install 설정을 후에 checkin(read only mode)하면 whole cluster에서 software 환경을 사용가능 하다.

n  ACE에서는 cluster OS영역이 read only이기 때문에 관리자/사용자가 프로그램 삭제 등의 실수를 막을 수 있다.

n  일부 read/write 파일에 대해 잘못 설정을 했을 경우에 the node를 재 가동만 하면 다시 원래 상태로 돌아간다.

 

Ø   Compute node crash 되었을 때 다시 설치하려면 시간이 많이 걸리고 설정이 어렵다.

n  ACE에서 compute node supper computer CPU board 개념으로 사용되기 때문에 compute node crash 불량 node 1:1 간단히 교체 power on하면 작업이 끝난다. (불량 노드는 off line상에서 수리 또는 교환한다.)

 

Ø   사용하는 softwaredisk I/O가 심해서 local scratch disk를 사용해야만 한다.

n  ACE disk-less based cluster이지만 local disk 대한 규칙만 넣어두면 compute node boot-up 자동으로 local scratch disk 사용할 있도록 구성된다.

n  Local disk crash가 나면 disk 교체 후 재가동하면 자동으로 다시 구성시켜 올려주기 때문에 다른 추가 작업이 필요 없다.

 

Ø   Disk-less Cluster는 대규모로 할 경우 성능 저하 현상이 있다.

n  ACE에서는 sub management node 개념을 두어 일정 compute node sub management node support 하기 때문에 Cluster scale 커져도(대규모여도) 성능 저하 현상이 없다.

 

Ø   Disk-less Cluster는 마스터가 죽게되면 whole cluster 죽게 되어 운영이 되지 않는 단점이 있다.

n  ACE에서는 master node HA 구성되어 있어 main management node 죽을지라도 whole cluster 전혀 영향이 가지 않는다.

n  Compute node GNBD File system 사용하기 때문에 OS image 제공하는 management node 문제가 생길지라도 다시 management node 복구하면 whole compute node 재가동 없이 상용하는데 문제가 전혀 없다.

 

Ø   Disk-less Cluster를 구성하려면 MAC Address등 복잡한 설정을 해야 하거나 노드의 위치가 바뀌면 hostname이 바뀌는 단점이 있다.

n  초기 설치 때 구성한 ACE 환경 설정에 의해 특정 고정된 위치에 any node가 들어가면 고정된 hostname을 갖게된다. CPU 보드의 개념이므로 관리자는 위치나 설정에 대해 따로 신경 쓸 필요가 없다.

 

Ø   Compute node crash 시 매번 바로 바로 교체를 해야만 하는가?

n  ACE에 있는 Hot spare 기능으로 하나의 노드가 불량 나면 바로 자동으로 넘어가기 때문에 불량 노드만 교체 작업을 하면 된다.  (기능이 완성되었나 안되었나 아직 모르겠습니다.)

ØACEH/W 관리기능

Ø   Clusterremote에서 power on/off/cycle를 하고 싶다.

n  ACE에서는 networkssh만 연결할수 있으면  ACE GUI/CLI를 이용하여 단일 노드 또는 그룹 단위의 node  poweron/off/cycle을 쉽게 할수 있을 뿐만 아니라 모든 관리 및 모니터링이 가능하다.

n  Compute node 부팅 과정의 상태를 모니터링 가능하다.

 

Ø   Network port 또는 cable이 문제 생기면 disk-less이기 때문에 문제이다.

n  ACEClusterdual network로 구성하면 failover for redundant networks

 

Ø   시스템 관리자와 H/W 엔지니어가 서로 다른 곳에 있을 때 노드 점검을 이야기 할 때 compute node가 너무 많이 실수 할때가 있다.

n  ACE는 같은 화면을 관리자와 H/W 엔지니어가 볼 수 있으며 관리자가 노드에 maintain과 같은 마크를 하면 H/W 엔지니어가 마크된 정확한 노드만 점검이 가능하다.

 

Ø   수많은 컴퓨터의 BIOS를 업그래이드 하려면 너무 힘들다.

n  BIOS image파일을 설정을 해두고 노드만 재 부팅하면 자동으로  BIOS를 업그래이드 하여 준다.

ACE command tools

Ø   수 백대 이상의 compute node에서 메모리 불량을 찾으려면 너무 힘들다.

n  ACE에서는 edac 이용하여 (included edac  support chip set in M/B) memory 불량을 logging하여 history 갖게 있고 또한 한번의 command 어떤 노드에 메모리 불량이 있는지 쉽게 찾을 있다.

 

Ø   수천 개의 Infiniband cable이나 연결된 port들에서 문제 발생시 어떻게 찾아야 할지 어렵다.

n  Infiniband 명령어를 실행해 Infiniband cable test 통하여 불량 포트에 대한 log guid port 번호를 tools command 넣으면 어느 위치(infiniband S/W or Compute HCA) 어떤 포트와 어느위치 (infiniband S/W or Compute HCA) 어떤 포트가 연결되어 있는지 도식화된 결과를 보여주기 때문에 위치와 연결 구조를 쉽게 찾을수 있다.

n  너무 많은 Cable로 인해 연결을 잘못시켜 문제가 발생되는 경우가 있는데 이 command을 이용하여 원하는 guidport 번호를 넣으면 연결되어야 하는 상대 위치와 포트번호를 찾을 수가 있다.

 

Ø   Compute node가 너무 많아 일일이 점검하려면 너무 힘들다.

n  ACE에 있는 유용한 tool을 이용하면 하나의 명령어로 whole cluster의 기본적인 상태를 간단히 전체적으로 점검해볼 수가 있다.

n  다양한 tool을 이용하여 상황에 맞게 정보를 살펴보거나 명령어를 단위노드, 그룹 또는 전체적으로 실행하는 기능이 된다.

n  Command tools은 단위노드, 렉 단위, 그룹 단위 또는 클러스터 단위로 하나의 명령어로 명령어 실행 또는 정보를 볼 수가 있다.

 

Job schedule

Ø   Job schedule를 한눈에 보고 싶다

n  ACE GUI를 이용하면 한눈에 job schedule 상태를 실시간으로 모니터링 가능하다.

n  Job Number를 클릭하면 그 job에 대해 상세하게 정보를 보여준다.

n  QueueJob scheduler에 등록된 host에 대한 정보를 다른 tab에서 살펴볼 수가 있다.

2009/06/26 13:32 2009/06/26 13:32
[로그인][오픈아이디란?]
Posted
Filed under Computer/HPC
일본 Tsukuba 대학교에 Appro의 Supercomputer를 설치를 했다. 3월에 appro에 입사를 하여 미국 본사에서 부터 일본 Tsukuba 대학까지 약 2개월 이상 출장을 다니면서 설치 준비작업부터 설치작업까지 진행하여 왔다. 이제 거의 마무리 작업이 되어 간다. 그래서 작업했던 최종 맴버들끼리 장비앞에서 함께 사진을 찍었다.

Shannon, me(kage), Jim & Joon 이렇게.... 다른분들은 없어서... 우리끼리.. ^^;;
User inserted image

여기서 3명은 미국 국적이고 나만 한국 국적이다. ^^
(30대 40대 60대의 맴버들... ㅎㅎ)

(사진에 보여지는 사람보다 사진에 보여지지 않은 고생하신 수많은 사람이 있지만... ^^;;
개인 적인 블로그이다보니 개인적으로 사진이 있는분만... ^^;; 다른분들께는 죄송합니다.)

Jim은 저 많은 나이에도 참 열정적이다. 나도 나이를 저렇게 먹을때까지 저렇게 열정적인 엔지니어로 살고 싶었는데 내 앞에 저렇게 해외에서는 유명하고 알아주는 분과 팀이 되어 함께 일할수 있었다는것이 너무나도 기분이 좋았고 즐거웠다. 

다른분들과 함께 일하면서도 문제를 하나하나 풀어가면서 즐거워했던 즐거운 기억이 가득하다.  특히 물론 내가 영어가 짧아서 잘 못알아 듣는것도 있지만 그런 와중에도 서로 하나하나 문제를 풀어가면서 외국인인 Jim, Shannon이 즐거워하면서 함께 야호를 부를때면 참 영화같같다는 생각이 들면서 재미있었고 즐거웠다.

한편으로는 나이드신분께 표현이 안어울리지만 참 해맑게 웃는 모습이 너무나..... ^^*

아무튼 이런 프로젝트에서 이렇게 함께 모두 일할수 있었다는것이 즐거웠고 또한 내 꿈처럼 나이 먹어서도 남들이 인정을 해줄만한 인물로 현업에서 열심히 일하는 모습을 그렸던 그런분과 함께 일할수 있었다는것이 더욱더 즐겁고 좋았다.  어디에서도 살수없는 경험이고 행복같다. 일은 정말 너무나도 힘들고 많았다고 생각했지만 적은 인원이 이런 큰 프로젝트에 붙어서 이렇게 맞춰진 내가 생각할때 넉넉치 않은 시간내에 해낸다는것역시 놀랍고 좋은 경험이었다. 물론 이런 프로젝트에 내가 참가했다는것에 더욱더 놀라울뿐이다. 이런 프로젝트에서 나도 하나의 힘이 된다는것이 너무도 기쁘다.... ^^


일본에서 지진을 격어보니 엄청나다는것을 알았는데 이런 슈퍼컴퓨터가 그런 지진에 괜찮을까 걱정을 많이 했었는데 그런 지진에도 대비되어 설계가 된 전산센터라는것이 더욱더 놀라울뿐이다. 지진 이후에 전산센터에 일하러 갔을때 장비들은 여전히 멀정히 살아 있었고 또한 장비에 큰 문제도 없어 보였다. 정말 신기했다. ㅎㅎ 그런 엄청난 아니 일본인한테는 별거 아닐지 몰라도 외지인에게는 엄청난 지진이었는데 진도 5정도였으니....

욕심같아서는 남은 기간동안 더욱더 열심히하여 Linpak 돌렸을때 부디 생각보다 더 좋은 결과가 나와서 Top500 site에 조금더 좋은 자리를 차지했으면 좋겠다. 첫 project에서 좋은 분들과 일했다는 것뿐만 아니라 이렇게 큰 프로젝트를 기간내에 이뤄내는 저력 속에 나역시 하나의 힘이되었다는것도 즐거웠지만 하나의 더큰 선물로 첫 프로젝트에서 Top 500 site에까지 좋은 자리를 차지한다면 너무나도 크나큰 선물일것 같다.


나의 큰 소원은 아직 멀었지만 하나의 꿈이었던 내가 해외에 까지 진출한다는것과 전세계의 Cluster 기술에 내가 참여하여 함께 한다는것이 었는데... 이것역시 어느정도 이뤘다고 생각이 든다. 이젠 다음 꿈으로 하나를 더 키워본다. Jim을 소원인 Top 500사이트에 1위를 올리는것처럼 나에게 새로 생긴 하나의 꿈 역시 Top 500 site에 1위를 올려 보는 것이다.

언제쯤 이뤄질까??

아니 언제쯤이면 이 꿈을 이룰 수 있는 나의 기술이 아니 그릇이 될까??? ^^*

ps, 앞으로 더 많은 좋은 프로젝트들을 이 좋은 분들과 함께 많이 할 수 있도록 더 좋은 프로젝트들이 계속 생겼으면 좋겠다. ^^
2008/05/19 00:37 2008/05/19 00:37
kage

System Name : T2K Open Supercomputer
Site : Center for Computational Sciences, University of Tsukuba
System Family : Appro HyperBlade
System Model : Appro XtremeServers
Computer : Appro Xtreme-X3 Server - Quad Opteron Quad Core : 2.3 GHz, Infiniband
Vendor : Appro International
Application area : Research
Main Memory : 20416 GB
Installation Year : 2008

Operating System : Redhat Linux
Memory : 20416 GB
Interconnect : Infinband DDR 4x
Processor : AMD x86_64 Opteron Quad Core 2300 MHz (9.2 GFlops)

Cores : 10000
Rmax(GFlops) : 76460
Rpeak(GFlops) : 92000
Nmax : 1508000
Nhalf : 0

Top 500
Year : Rank : Rmax
11/2008 : 32 : 76460
06/2008 : 20 : 76460

Japan : 2nd

다꺼

좋은 경험을 하고 있구려~~~
너무 일만 하지 말고 장가도 얼른 가시게나~~~ ㅋㅋㅋ

kage

^^ 그러고 싶은 맘은 굴뚝같으나... 쩝... 없네요... ^^;;
어디에 숨어 있는지... 도통 찾기가 힘들어서... ㅋㅋ

[로그인][오픈아이디란?]