WorkCenter를 실행 시키기 위해, OpenJDK 1.8버전 이상을 설치해야 합니다. Shell에서 아래 명령어로 현재 설치 가능한 버전을 확인합니다.
$> yum list java\*jdk
조회된 결과 중에 java-1.8.0-openjdk.x86_64버전을 설치합니다.
$> yum install java-1.8.0-openjdk.x86_64
아래 명령으로 설치가 정상적으로 되었는지 확인합니다.
정상적으로 설치되었다면, 아래와 같은 출력내용을 확인 할 수 있습니다.
$> java –version
Openjdk version “1.8.0_212”
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04. Mixed mode)
만약 AES-256 암/복호화 작업 중 ‘java.security.InvalidKeyException: Illegal key size or default parameters’ 라는 에러가 발생한다면 jce policy파일을 https://www.oracle.com/technetwork/java/javase/downloads /jce8-download-2133166.html에서 다운로드 받은 후 압축을 풀어 local_policy.jar, US_export_policy.jar 을 %JAVA_HOME%/jre/lib/security/ 에 위치시킵니다.
MariaDB는 오픈 소스 관계형 데이터베이스 시스템으로서, GPL v2라이선스를 따릅니다. WorkCenter에 최적화된 MariaDB 10.4.x를 기준으로, YUM과 RPM을 이용한 설치 방법을 확인 할 수 있습니다.
이번 장에서는 인터넷 환경이 원활한 환경에서 yum repository 를 추가하고, yum 명령어로 MariaDB 를 설치하는 방법을 설명합니다.
'/ect/yum.repos.d' 디렉토리에 mariadb.repo 파일을 만든 후 내용을 아래와 같이 등록합니다.
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey = https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
기존에 다운로드 한 패키지 목록을 제거합니다.
$> sudo yum clean all
MariaDB를 설치합니다.
$> sudo yum install MariaDB-server MariaDB-client
위 명령어를 실행하면 아래와 같은 화면이 출력됩니다. 설치에 대한 물음이 나오면 ‘y’를 입력하여 설치를 진행합니다.
설치가 완료되면 version을 확인합니다.
$> mysqld --version
정상적으로 설치되었다면 아래와 같은 내용이 출력됩니다.
MariaDB서비스를 실행합니다.
$> sudo systemctl start mariadb
MariaDB 서비스가 실행 중인지 확인합니다. 정상적으로 구동되었다면 Active가 출력됩니다.
외부 인터넷이 연결되지 환경에서는 “3.2.1 YUM 설치”를 사용한 MariaDB 설치가 어려울 수 있습니다. 이번 장에서는 오프라인 환경에서 사용 가능한 자원을 rpm 명령어 사용하여 설치하는 방법에 대해 설명합니다.
MariaDB 설치를 위해서는 다음과 같이 5개의 패키지를 필요로 합니다.
① galera-4-26.4.2-1.rhel7.el7.centos.x86_64.rpm
② MariaDB-client-10.4.7-1.el7.centos.x86_64.rpm
③ MariaDB-common-10.4.7-1.el7.centos.x86_64.rpm
④ MariaDB-compat-10.4.7-1.el7.centos.x86_64.rpm
⑤ MariaDB-server-10.4.7-1.el7.centos.x86_64.rpm
Maria DB 의 레파지토리에서 rpm 패키지를 다운로드하여 설치를 진행하는 경우 서명값이 맞지 않아 설치에 실패하게 됩니다. 이러한 경우는 외부 인터넷 연결이 가능하고, MariaDB 가 설치되지 않은 환경에서 yum 명령어로 rpm 패키지를 다운로드 한 자원으로 설치를 진행합니다. 한 가지 예외가 되는 자원은 galera-xxx.rpm로, 해당자원은 직접 MariaDB 레파지토리에서 별도로 다운로드를 하여 사용합니다.
[참고] Maria DB 레포지토리 http://mirrors.nav.ro/mariadb//mariadb-10.4.7/yum/centos7-amd64/rpms/
RPM자원을 다운로드 하는 방법에 대해서는 아래의 참고 부분에서 확인 할 수 있습니다.
MariaDB를 설치하기 전 로그인한 사용자가 Sudo 권한이 있는 사용자 또는 root 권한을 가진 사용자인지 확인한 다음 MariaDB 데이터 저장을 위한 디렉터리를 생성합니다. 생성하는 디렉터리는 mysql 기본 디렉터리 입니다.
$> mkdir -p /var/lib/mysql
$> rpm -Uvh galera-25.3.25-1.rhel7.el7.centos.x86_64.rpm
$> rpm -Uvh MariaDB*
$> systemctl start mariadb
$> systemctl status mariadb
MariaDB RPM 자원 다운로드 방법
먼저 외부 인터넷이 가능한 OS 에서 '/etc/yum.repos.d' 디렉토리에 maria.repo 파일을 생성하여 MariaDB yum 레파지토리를 등록합니다.
maria.repo 내용
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey = https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
yum install 명령어를 수행할 때 다운로드만 하도록 아래처럼 명령을 실행합니다. 이 때 downloaddir 는 적절하게 변경하도록 합니다.
$> yum install --downloadonly --downloaddir=/root/mariadb MariaDB-client MariaDB-server
galera-xxx.rpm 패키지를 다운로드 합니다.
$> wget http://mirrors.nav.ro/mariadb//mariadb-10.4.7/yum/centos7-amd64/rpms/galera-4-26.4.2-1.rhel7.el7.centos.x86_64.rpm
다운로드 받은 rpm 패키지들이 서명된 패키지인지를 확인합니다. 아래처럼 모두 OK 로 표시되어야 설치 가능한 패키지입니다.
$> rpm --checksig \$(find . -name '\*.rpm')
서명확인 패키지 결과 사진
이 RPM 자원을 외부 인터넷이 차단된 CentOS7 서버의 적절한 작업 디렉토리에 업로드 합니다.
테이블 생성시 대/소문자를 구분하므로 $mariadb_home/data/my.ini 파일 중 [mysqld] 영역에 옵션 추가한 후 테이블 생성 스크립트를 수행해야 합니다. MariaDB 의 설정 정보를 포함하는 my.cnf (윈도우의 경우 my.ini) 파일에 아래와 같이 설정합니다.
MariaDB(MySQL) 에 접속하기 위해서 Root 패스워드를 설정합니다.
$ sudo /usr/bin/mysqladmin -u root –p password ‘변경할 암호’
MariaDB에 접속합니다. Root 권한을 변경합니다
WorkCenter를 위한 사용자를 생성하고, 데이터 베이스를 생성합니다. 그리고 생성한 사용자에게 권한을 부여합니다.
배포파일에 포함된 테이블 생성 스크립트(WorkCenter_MySQL.sql) 를 임포트하여 테이블을 생성합니다.
명령어는 mysql {- 호스트} –u 사용자 –p DB명 < 스크립트파일명 입니다,.
$mysql –u wcadmin –p aworksdb < WorkCenter_MySQL.sql
password:
SQL>
테이블 생성시 대/소문자를 구분하므로 $mariadb_home/data/my.ini 파일 중 [mysqld] 영역에 옵션 추가한 후 테이블 생성 스크립트를 수행해야 합니다.
[mysqld]
character-set-server=utf8 # 인코딩
collation-server=utf8_general_ci # 텍스트 정렬 옵션
lower_case_table_names=2 # 테이블 생성시 대문자 구분
max_allowed_packet=100M # 파일 업로드 최대 사이즈
WorkCenter 가 설치된 서버의 conf/workcenter-app.yml 파일에서 datasource 부분을 수정합니다.
spring:
datasource: #DB 설정 정보
url: jdbc:mariadb://{ip}:3306/aworksdb #Mariadb 접속 정보
username: wcadmin #DB 사용자 아이디
password: wcadmin #DB 사용자 패스워드
WorkCenter 와 Mini 간의 Interface를 위해서는 RabbitMQ가 필요합니다. A.WORKS WorkCenter 의 권장 RabbitMQ 버전은 3.7.x 입니다. RabbitMQ v3.7 설치 시 OTP(Erlang) 은 v22 가 설치되어야 하며, RabbitMQ v3.8.x 설치 시 OPT (Erlang) 은 v23 설치되어야 합니다. 이번 장에서는 RabbitMQ서버 설치에 대해 설명합니다. YUM 을 이용한 설치와 RPM 을 사용한 방식 2가지로 구분되어 기술되어 있습니다.
YUM Repository를 사용하기 위해 RabbitMQ sign key를 임포트합니다.
sudo rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
또는
$> sudo rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
/etc/yum.repos.d/ 디렉토리에 rabbitmq.repo 파일을 생성 후 내용을 다음과 같이 같이 등록합니다.
[bintray-rabbitmq-server]
name = bintray-rabbitmq-rpm
baseurl = https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/
gpgkey = 0
repo_gpgcheck = 0
enabled = 1
RabbitMQ를 설치하기 전에 Erlang 을 설치합니다. YUM 명령으로 설치할 경우 RabbitMQ에 호환되지 않는 버전이 설치될 수 있으므로 RPM 명령으로 설치하거나 RedHat 사이트를 참고하여 버전을 고정시킵니다. 이 문서에서는 RPM 명령으로 설치하는 것을 권장합니다.
$> rpm -Uvh erlang-22.3.8.12-1.el7.x86_64.rpm
YUM 명령을 이용하여 rabbitmq 를 설치 합니다.
$ yum install rabbitmq-server
RabbitMQ 설치화면 사진
관리자 화면 접속을 위한 RabbitMQ Web Console 을 활성화 시킵니다. Rabbitmq 가 실행 중이라면 http://<rabbitmq_server>:port을 통하여 Web 화면에 접속할 수 있습니다.
$> rabbitmq-plugins enable rabbitmq_management
RabbitMQ가 설치된 서버가 재시작 될 때, Rabbitmq 가 자동 실행되기 위한 서비스를 등록합니다.
$> systemctl enable rabbitmq-server
RabbitMQ 서버를 실행 시킵니다.
$> systemctl start rabbitmq-server
정상 실행되었다면, 아래와 같은 화면을 확인 하실 수 있습니다.
RabbitMQ 정상 실행 상태 화면 사진
기본 포트인 5672 가 정상적으로 서비스하고 있는지 확인합니다.
5672포트 정상화면 사진
RPM을 이용한 설치는 YUM 명령을 사용할 수 없는 환경에서 유용하게 사용할 수 있습니다.
설치순서는 YUM 명령을 이용한 설치 방법과 동일합니다.
$> rpm -Uvh erlang-21.3.8.12-1.el7.x86_64.rpm
$> rpm -Uvh rabbitmq-server-3.8.2-1.el7.noarch.rpm
socat 의존성 오류시 socat package를 먼저 설치합니다.
$> rpm -Uvh socat-1.7.3.2-2.el7.x86_64.rpm
Web Console 활성화와 RabbitMQ 실행에 대한 내용은 YUM을 이용한 설치와 동일함으로 “4.3 YUM을 이용한 설치”를 확인합니다.
A.WORKS Mini에서 사용하기 위한 RabbitMQ 사용자를 생성합니다. 명령어는 rabbitmqctl을 사용합니다.
사용자를 추가합니다. ID와 Password로 사용자를 생성하여야 합니다. 사용자의 ID 는 mquser 이고 Password 는 1234qwer 인 경우 아래와 같이 사용자를 생성합니다. 다른 ID를 등록할 경우 workcenter-app.yml 파일 내에 RabbitMQ 접속 계정정보를 변경해야 합니다.
$> rabbitmqctl add_user mquser 1234qwer
추가한 사용자의 태그를 입력합니다.
$> rabbitmqctl set_user_tags mquser administrator
사용자의 전체 권한을 부여합니다.
$> rabbitmqctl set_permissions -p / mquser ".\*" ".\*" ".\*"
사용자가 정상적으로 추가 되어있음을 확인합니다.
사용자 추가 확인 화면 사진
웹 브라우저에서 설치된 서버의 IP주소와 포트로 RabbitMQ 의 상태를 확인할 수 있습니다.
http://<rabbitmq_server_ip>:port 를 입력합니다. 예를들면, http://127.0.0.1:15672 로 접속합니다.
RabbitMQ 관리자 로그인 화면
mquser 계정으로 로그인합니다.
RabbitMQ 관리자 화면
Web 화면을 통해 RabbitMQ의 상태를 모니터링 할 수 있습니다.
이미지 설치 (Docker Hub)
docker pull guacamole/guacd
이미지 설치 (Local)
docker load –input 이미지파일경로
이미지 확인
docker images
실행
docker run –name guacd –d –p 4822:4822 guacamole/guacd
실행 확인
docker ps