Docker 컨테이너를 이용한 JDV 워크샵 데모 실행
ocker 컨테이너를 활용하여 JBoss Data Virtualization (JDV) 워크샵 데모를 실행하는 방법을 알아봅니다.
Docker 환경에서 JDV (JBoss Data Virtualization) Workshop을 실습해 보는 내용입니다.
앞서의 블로그 포스트에서 설명한 CentOS 6.5에서 Docker 1.0을 설치한 후, JDV Workshop 데모를 위한 도커 컨테이너를 작성하고 직접 실행해 보는 내용입니다.
본 내용은 Docker 1.0이 설치되어져 있는 환경을 전제로 진행하기 때문에 도커를 미리 설치해야 합니다.
JDV Workshop 실습을 위한 도커 컨테이너를 만드는 과정은 매우 간단합니다.
또한 컨테이너에 실습에 필요한 JDV 설치, PostgeSQL 설치, 각종 파일 복사, 환경 설정들도 이미 정의된 Build 스크립트에 의해서 자동으로 설치/구성 됩니다.
- JBoss Data Virtualization Workshop – https://github.com/DataVirtualizationByExample/DVWorkshop/tree/master/docs
- Docker and Red Hat JBoss Data Virtualization – http://www.ossmentor.com/2014/05/docker-and-red-hat-jboss-data.html
사전에 호스트에 준비되어야 하는 사항들은 다음과 같습니다.
- OpenJDK 1.6 or 1.7 or Oracle JDK 1.6 or 1.7
- Download [Red Hat JBoss Data Virtualization 6.0.0.GA](http://www.jboss.org/products/datavirt/overview/)
- Download [Red Hat JBoss Developer Studio 7.1.1](http://www.jboss.org/products/devstudio/overview/)
1. Github에서 DVWorkshop 다운로드
먼저 Git을 설치합니다.
sudo yum install git
Github으로 부터 JDV Workshop에 필요한 Lab 파일들을 다운로드 받습니다.
$ git clone https://github.com/DataVirtualizationByExample/DVWorkshop.git
2. 다운로드한 파일들을 복사
이미 다운로드된 JBoss Data Virtualization과 JBoss Developer Studio를 $DVWorkshop/dv-docker 이하 /software 디렉토리에 복사합니다.
3. JDV Workshop을 Build
아래와 같이 실행해 주면 자동으로 Docker 컨테이너와 JDV Woskhop 과정들이 진행됩니다. 많은 작업들이 진행되기 때문에 시간도 꽤 필요합니다.
$ cd DVWorkshop/DVWorkshop/ $ pwd /home/admin/gits/DVWorkshop/dv-docker $ sudo ./build.sh
build 가 완료되면 Workshop 에 필요한 도커 이미지가 생성되었는지 확인해 봅니다.
$ sudo docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE jbossdv600 latest 17af6074944c About a minute ago 1.238 GB centos centos6 0c752394b855 12 days ago 124.1 MB centos latest 0c752394b855 12 days ago 124.1 MB fedora 20 3f2fed40e4b0 2 weeks ago 372.7 MB fedora heisenbug 3f2fed40e4b0 2 weeks ago 372.7 MB fedora latest 3f2fed40e4b0 2 weeks ago 372.7 MB fedora rawhide 64fd7993bcaf 2 weeks ago 366.8 MB centos 6.4 539c0211cd76 14 months ago 300.6 MB
도커 프로세스가 실행 중인지 확인합니다.
$ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4. JDV 도커(Docker) 실행하기
도커 컨테이너를 실행합니다. (참고로 locale 관련한 Warning 메세지 출력될 수 있으나 일단 무시합니다.)
$ sudo docker run -P -i -t jbossdv600 /bin/bash [root@a996958ba0ad /]#
5. JDV를 실행하기
JDV를 실행합니다. (참고로 locale 관련한 Warning 메세지 출력될 수 있으나 일단 무시합니다.)
# /home/jboss/run.sh &
6. JDV Dashboard에 접속하기
도커 컨테이너에서 실행되는 프로세스로 접속하기 위해서는 내부와 외부에서 접속할 수 있는 서비스 IP 와 포트를 확인해야 합니다.
내부에서 사용되는 JDV 와 관련있는 대표적인 포트는 8080 서비스 포트와 9990 관리자 웹콘 솔 포트이며, 외부에서 접속하기 위한 포트번호는 각각 49158과 49159 로 바인딩되어 있는 것을 확인 할 수 있습니다.
또한 도커 컨테이너 ID 가 ‘a996958ba0ad’ 인 것을 확인할 수 있습니다.
$ sudo docker ps [sudo] password for admin: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a996958ba0ad jbossdv600:latest /bin/bash 24 hours ago Up 24 hours 0.0.0.0:49153->22/tcp, 0.0.0.0:49154->27017/tcp, 0.0.0.0:49155->31000/tcp, 0.0.0.0:49156->3306/tcp, 0.0.0.0:49157->5432/tcp, 0.0.0.0:49158->8080/tcp, 0.0.0.0:49159->9990/tcp, 0.0.0.0:49160->9999/tcp grave_newton
도커를 실행 중인 서버에서 접속할 수 있는 내부 IP 주소는 다음과 같이 확인 할 수 있습니다.
$ sudo docker inspect --format '{{ .NetworkSettings.IPAddress }}' a996958ba0ad 172.17.0.4
JDV Dashboard 로 접속할 수 있는 IP와 포트번호는 아래와 같이 내부와 외부로 나누어져 있습니다.
- 호스트에서 접속할때 : http://172.17.0.44:8080/dashboard/
- 외부에서 접속할 때 : http://192.168.0.52:49158/dashboard/
미리 정의된 JDV 접속 사용자 정보와 JDV 가 실행되는 JBoss EAP 관리콘솔에 대한 접속정보도 아래와 같습니다.
- JBoss EAP 접속 정보 = usename =admin / password = redhat1!
- JDV 접속 정보 = username : user/ password : user
먼저 외부에서 JDV Dashboard 로 접속해보도록 하겠습니다.
웹브라우저에서 “http://192.168.0.52:49158/dashboard/” 입력하고 user/user 로 로그인 할 수 있습니다.
JBoss Datagrid Queue 자료구조 구현 방법: Infinispan 설명
/in JBoss, Tech Talk/by 오픈마루 마케팅0Infinispan (http://infinispan.org/)은 레드햇/JBoss의 오픈소스 분산 메모리 Key/Value 데이터 그리드 솔루션입니다.
JBoss EAP 시작 파라미터 살펴보기: Command Line 파라미터 설명
/in JBoss, Tech Talk/by 오픈마루 마케팅0JBoss EAP 6에서 인스턴스 시작 시, 참조되는 바인딩 주소와 각종 디렉터리를 지정하는 시작 파라미터들에 대해 설명한다.
Drools 6.0 성능 비교: Phreak와 Rete 알고리즘 비교
/in Tech Talk/by 오픈마루 마케팅0Drools 6.0에서는 지금까지의 ReteOO 대신 Phreak ( Lazy Matching)라는 새로운 룰 엔진 알고리즘이 도입되었다.