728x90
반응형
TMAX는 고성능 및 안정성이 뛰어난 서버를 구축하고 운영할 수 있는 다양한 솔루션을 제공하는 기업입니다.
미들웨어 TMAX는 서버 간 통신을 효율적으로 처리하고, 분산 환경에서 데이터를 관리하며, 다양한 플랫폼 및 언어를 지원하는 등의 다양한 기능을 제공합니다. 또한, TMAX는 미들웨어 TMAX를 이용하여 개발된 애플리케이션을 운영하는데 필요한 모니터링, 로깅, 트랜잭션 관리, 보안 등의 기능도 제공합니다.
미들웨어 TMAX는 기업용 애플리케이션의 개발 및 운영을 위한 솔루션으로 많이 사용되고 있으며, 금융, 제조, 공공기관 등 다양한 산업 분야에서 사용되고 있습니다.
WebtoB 설치
[Tmaxsoft] WebtoB 5.0 웹서버 구축하기 (tistory.com)
JEUS 설치
[TmaxSoft] JEUS 8.5 설치 (tistory.com)
TMAX 다운로드 사이트
TmaxSoft Technical Network [technet-01]
반응형
TMAX 5.0 다운로드 - Linux (x86) 64-bit 선택
TMAX 설치 파일 업로드 및 실행 권한 변경
chmod 750 Tmax50_SP2_Fix4_Linux_k418_x86_64_16384.bin
master@master:~/install/tmax$ chmod 750 Tmax50_SP2_Fix4_Linux_k418_x86_64_16384.bin
master@master:~/install/tmax$ ll
합계 122988
drwxrwxr-x 2 master master 4096 3월 1 21:34 .
drwxrwxr-x 15 master master 4096 3월 1 21:33 ..
-rwxr-x--- 1 master master 125926642 3월 1 21:34 Tmax50_SP2_Fix4_Linux_k418_x86_64_16384.bin
strings: '/lib/libc.so.6': No such file 오류 발생 시
master@master:~/install/tmax$ ./Tmax50_SP2_Fix4_Linux_k26_x86_64_16384.bin
Preparing to install...
Extracting the JRE from the installer archive...
Unpacking the JRE...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...
strings: '/lib/libc.so.6': No such file
Launching installer...
./Tmax50_SP2_Fix4_Linux_k26_x86_64_16384.bin: 2479: exec: /tmp/install.dir.14141/Linux/resource/jre/bin/java: not found
해결 방안
sudo ln -s /lib/x86_64-linux-gnu/libc.so.6 /lib/libc.so.6
참조 사이트
12.04 - strings: '/lib/libc.so.6': No such file - Ask Ubuntu
exec: /tmp/install.dir.14733/Linux/resource/jre/bin/java: not found 오류 발생
master@master:/home/master/install/tmax# ./Tmax50_SP2_Fix4_Linux_k418_x86_64_16384.bin
Preparing to install...
Extracting the JRE from the installer archive...
Unpacking the JRE...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...
Launching installer...
./Tmax50_SP2_Fix4_Linux_k418_x86_64_16384.bin: 2479: exec: /tmp/install.dir.14733/Linux/resource/jre/bin/java: not found
해결 방안
sudo apt install lib32ncurses5
master@master:~/install/tmax$ sudo apt install lib32ncurses5
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
다음 패키지가 자동으로 설치되었지만 더 이상 필요하지 않습니다:
gir1.2-goa-1.0 libpython-dev libpython2.7-dev python-pip-whl python2.7-dev python3-wheel
'sudo apt autoremove'를 이용하여 제거하십시오.
다음의 추가 패키지가 설치될 것입니다 :
lib32tinfo5 libc6-i386
다음 새 패키지를 설치할 것입니다:
lib32ncurses5 lib32tinfo5 libc6-i386
0개 업그레이드, 3개 새로 설치, 0개 제거 및 2개 업그레이드 안 함.
2,909 k바이트 아카이브를 받아야 합니다.
이 작업 후 15.5 M바이트의 디스크 공간을 더 사용하게 됩니다.
계속 하시겠습니까? [Y/n] y
받기:1 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32tinfo5 amd64 6.1-1ubuntu1.18.04 [79.1 kB]
받기:2 http://kr.archive.ubuntu.com/ubuntu focal-updates/main amd64 libc6-i386 amd64 2.31-0ubuntu9.9 [2,730 kB]
받기:3 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32ncurses5 amd64 6.1-1ubuntu1.18.04 [100 kB]
내려받기 2,909 k바이트, 소요시간 3초 (862 k바이트/초)
Selecting previously unselected package libc6-i386.
(데이터베이스 읽는중 ...현재 248147개의 파일과 디렉터리가 설치되어 있습니다.)
Preparing to unpack .../libc6-i386_2.31-0ubuntu9.9_amd64.deb ...
Unpacking libc6-i386 (2.31-0ubuntu9.9) ...
Selecting previously unselected package lib32tinfo5.
Preparing to unpack .../lib32tinfo5_6.1-1ubuntu1.18.04_amd64.deb ...
Unpacking lib32tinfo5 (6.1-1ubuntu1.18.04) ...
Selecting previously unselected package lib32ncurses5.
Preparing to unpack .../lib32ncurses5_6.1-1ubuntu1.18.04_amd64.deb ...
Unpacking lib32ncurses5 (6.1-1ubuntu1.18.04) ...
libc6-i386 (2.31-0ubuntu9.9) 설정하는 중입니다 ...
lib32tinfo5 (6.1-1ubuntu1.18.04) 설정하는 중입니다 ...
lib32ncurses5 (6.1-1ubuntu1.18.04) 설정하는 중입니다 ...
Processing triggers for libc-bin (2.31-0ubuntu9.9) ...
TMAX 설치 시작 화면
master@master:~/install/tmax$ ./Tmax50_SP2_Fix4_Linux_k418_x86_64_16384.bin
Preparing to install...
Extracting the JRE from the installer archive...
Unpacking the JRE...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...
Launching installer...
Preparing CONSOLE Mode Installation...
===============================================================================
Tmax50_SP2_Fix4 (created with InstallAnywhere by Macrovision)
-------------------------------------------------------------------------------
===============================================================================
Introduction
------------
InstallAnywhere will guide you through the installation of Tmax50_SP2_Fix4.
It is strongly recommended that you quit all programs before continuing with
this installation.
Respond to each prompt to proceed to the next step in the installation. If you
want to change something on a previous step, type 'back'.
You may cancel this installation at any time by typing 'quit'.
PRESS <ENTER> TO CONTINUE:
라이선스 사용 동의
===============================================================================
License Agreement
-----------------
Installation and use of Tmax50_SP2_Fix4 requires acceptance of the following
License Agreement:
TP-Monitor Tmax Release
TmaxSoft Co., Ltd. (hereafter, TmaxSoft) End-User License Agreement
Product : Tmax
This is a legal agreement between you (either an individual or an company) and
TmaxSoft, Incorporated. By opening the sealed software package and/or by using
the software, you agree to be bound by the terms of this agreement.
TmaxSoft License
1. Grant of License: This TmaxSoft License Agreement ("License") permits you
to use one copy of the TmaxSoft product Tmax, on any single computer, provided
the software is in use on only one computer at any one time. If this package
is a license pack, you may make and use additional copies of the software up to
the number of licensed copies authorized. If you have multiple licenses for
the software, then at any time you may have as many copies of the software in
use as you have licenses.
The software is "in use" on a computer when it is loaded into the temporary
memory (i.e., RAM) or installed into the permanent memory (e.g., hard disk,
CD-ROM, or other storage devices) of that computer, except that a copy
installed on a network server for the sole purpose of distribution to other
computers is not "in use". If the anticipated number of users of the software
will exceed the number of applicable licenses, then you must have a reasonable
PRESS <ENTER> TO CONTINUE:
저작권 및 제한사항 관련 내용 - Y 입력
mechanism or process in place to ensure that the number of persons using the
software concurrently does not exceed the number of licenses.
2. Copyright: The software (including any images, "applets," photographs,
animations, video, audio, music and text incorporated into the software) is
owned by TmaxSoft or its suppliers and international treaty provisions.
Therefore, you must treat the software like any other copyrighted materials
(e.g., a book or musical recording) except that you may either (a) make one
copy of the software solely for backup or archival purposes, or (b) transfer
the software to a single hard disk provided you keep the original solely for
backup or archival purposes. You may not copy the printed materials
accompanying the software, nor print copies of any user documentation provided
in "online" or electronic form.
3. Other restrictions: This license is your proof of license to exercise the
rights granted herein and must be retained by you. You may not rent, lease, or
transfer your rights under this license on a permanent basis provided you
transfer this license, the software, and all accompanying printed materials,
retain no copies, and the recipient agrees to the terms of this license. You
may not reverse engine, decompile, or disassemble the software, except to the
extent that the foregoing restriction is expressly prohibited by applicable
law.
PRESS <ENTER> TO CONTINUE:
DO YOU ACCEPT THE TERMS OF THIS LICENSE AGREEMENT? (Y/N):
설치 환경 선택 : 1번 선택 - Server + Client
===============================================================================
Choose Install Set
------------------
Please choose the Install Set to be installed by this installer.
->1- Server + Client
2- Client
ENTER THE NUMBER FOR THE INSTALL SET, OR PRESS <ENTER> TO ACCEPT THE DEFAULT
:
설치 폴더 선택 및 입력 - 기본 값으로 선택 ENTER
===============================================================================
Choose Install Folder
---------------------
Where would you like to install?
Default Install Folder: /home/master/tmax
ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT
:
Tmax 기본 환경 파일 중 Tmax 시스템이 수행될 서버의 IP 주소를 입력한다. 입력하지 않으면, 디폴트로 현재 설치되고 있는 노드의 IP 주소가 설정된다 - 기본 값 선택 ENTER
===============================================================================
Set Environment Variable
------------------------
TMAX_HOST_ADDR : IP Address of your Tmax Host.
TMAX_HOST_ADDR (DEFAULT: 192.168.87.128):
설치 요약 화면 - ENTER
===============================================================================
Pre-Installation Summary
------------------------
Please Review the Following Before Continuing:
Product Name:
Tmax50_SP2_Fix4
Install Folder:
/home/master/tmax
Link Folder:
/home/master
Disk Space Information (for Installation Target):
Required: 326,728,954 bytes
Available: 9,874,964,480 bytes
PRESS <ENTER> TO CONTINUE:
설치 시작 및 완료 - ENTER
===============================================================================
Ready To Install
----------------
InstallAnywhere is now ready to install Tmax50_SP2_Fix4 onto your system at the
following location:
/home/master/tmax
PRESS <ENTER> TO INSTALL:
===============================================================================
Installing...
-------------
[==================|==================|==================|==================]
[------------------|------------------|------------------|------------------]
===============================================================================
Install Complete
----------------
The installation of Tmax50_SP2_Fix4 is complete, but some errors occurred
during the install.
Please see the installation log for details. Press "Done" to quit the
installer.
PRESS <ENTER> TO EXIT THE INSTALLER:
라이선스 발급
라이선스 업로드 - license.dat
/home/master/tmax/license
master@master:~/tmax/license$ ll
합계 28
drwxrwxr-x 3 master master 4096 3월 1 22:15 .
drwxrwxr-x 22 master master 4096 3월 1 22:00 ..
-rw-r--r-- 1 master master 80 3월 1 22:15 license.dat
-rwxrwxr-x 1 master master 9101 3월 1 22:00 ncpu
drwxrwxr-x 2 master master 4096 3월 1 22:00 oss_licenses
환경변수 설정 - profile
설치 후 Tmax 응용 프로그램을 컴파일할 때 또는 실제 개발환경에서 프로젝트를 진행할 때에는 C 컴파일러나 make 유틸리티 등이 필요하다. 파일들(cc, make 등)이 포함된 디렉터리가 PATH 환경변수에 설정되어 있는지 확인하고, 설정되어 있지 않다면 반드시 관련 디렉터리와 그 외 필요한 기본 디렉터리들도 적용될 수 있도록 해야 한다.
다음은 Bourne 셸 또는 Korn 셸 사용자가 Tmax를 설치하면 .profile에 추가되는 Tmax 시스템 환경변수이다. 자세한 내용은 플랫폼마다 다를 수 있다.
vi ~/.profile
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 1.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
TMAXDIR=/home/master/tmax
export TMAXDIR
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 1.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 2.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
PATH="/home/master/tmax/bin:${PATH}"
export PATH
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 2.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 3.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
TMAX_HOST_ADDR=192.168.87.128
export TMAX_HOST_ADDR
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 3.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 4.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
TMAX_HOST_PORT=8888
export TMAX_HOST_PORT
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 4.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 5.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
SDLFILE=/home/master/tmax/sample/sdl/tmax.sdl
export SDLFILE
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 5.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 6.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
FDLFILE=/home/master/tmax/sample/fdl/tmax.fdl
export FDLFILE
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 6.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 7.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
TMAX_CONNECT_TIMEOUT=3
export TMAX_CONNECT_TIMEOUT
# End comments by InstallAnywhere on Tue Aug 28 15:10:11 JST 2012 7.
# New environment setting added by Tmax50_SP2_Fix4 on Tue Aug 28 15:10:11 JST 2012 8.
# The unmodified version of this file is saved in /home/master/.profile1069083458.
# Do NOT modify these lines; they are used to uninstall.
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/home/master/tmax/lib64"
export LD_LIBRARY_PATH
profile 적용
. .profile
예제 프로그램 테스트
Tmax가 올바르게 설치되었는지 간단한 예제 프로그램을 통해서 확인할 수 있다.
프로그램에 사용된 각종 파일들은 다음과 같다.
파일명 | 설명 |
sample.m | Tmax 환경설정 파일($TMAXDIR/config) |
svr1.c | 서버 프로그램($TMAXDIR/sample/server) |
sdltoupper.c | 클라이언트 프로그램($TMAXDIR/sample/client) |
demo.s | 구조체 정의 파일($TMAXDIR/sample/sdl) |
demo.f | 필드키 정의 파일($TMAXDIR/sample/fdl) |
tmax.env | Tmax 환경변수 정의 파일($TMAXDIR/sample/client) |
$TMAXDIR/config 디렉터리로 이동하여 다음과 같이 환경 파일을 컴파일한다. sample.m 파일은 Tmax가 설치되면 TMAXDIR/config 디렉터리에 자동으로 생성된다.
cfl –i sample.m
완료 시 tmconfig생성됨
master@master:~/tmax/config$ cfl -i sample.m
CFL is done successfully for node(master)
master@master:~/tmax/config$ ll
합계 608
drwxrwxr-x 2 master master 4096 3월 1 22:21 .
drwxrwxr-x 22 master master 4096 3월 1 22:00 ..
-rwxrwxr-x 1 master master 328 3월 1 22:00 RM
-rwxrwxr-x 1 master master 5007 3월 1 22:00 sample.m
-rwxrwxr-x 1 master master 436 3월 1 22:00 tdl.cfg
-rw-rw-r-- 1 master master 596856 3월 1 22:21 tmconfig
서비스 테이블을 생성
서비스 테이블은 각각의 서버 프로세스가 생성될 때 필요한 파일로, 각각의 프로세스들이 어떤 서비스를 처리하는지에 대한 정보가 담겨 있다.
gst
master@master:~/tmax/config$ gst
SVC tables are successfully generated
GST is successfully done
서버 프로그램 컴파일
cd /home/master/tmax/sample/server
./compile c svr2
master@master:~/tmax/sample/server$ ./compile c svr2
cc -O -I/home/master/tmax -c svr2.c
svr2.c:5:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
5 | TOUPPER(TPSVCINFO *msg)
| ^~~~~~~
svr2.c: In function ‘TOUPPER’:
svr2.c:13:18: warning: implicit declaration of function ‘toupper’ [-Wimplicit-function-declaration]
13 | msg->data[i] = toupper(msg->data[i]);
| ^~~~~~~
svr2.c: At top level:
svr2.c:21:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
21 | TOLOWER(TPSVCINFO *msg)
| ^~~~~~~
svr2.c: In function ‘TOLOWER’:
svr2.c:29:18: warning: implicit declaration of function ‘tolower’ [-Wimplicit-function-declaration]
29 | msg->data[i] = tolower(msg->data[i]);
| ^~~~~~~
cp -f /home/master/tmax/svct/svr2_svctab.c .
touch ./svr2_svctab.c
cc -O -I/home/master/tmax -c ./svr2_svctab.c
cc -O -I/home/master/tmax -L/home/master/tmax/lib64 -o svr2 svr2.o svr2_svctab.o -lsvr -lnodb /home/master/tmax/lib64/sdl.o
mv svr2 /home/master/tmax/appbin/.
rm -f svr2.o svr2_svctab.o
정상적으로 컴파일되면, svr2_svctab.c 파일 생성
cd /home/master/tmax/svct
master@master:~/tmax/svct$ ll
합계 12
drwxrwxr-x 2 master master 4096 3월 1 22:32 .
drwxrwxr-x 22 master master 4096 3월 1 22:00 ..
-rw-rw-r-- 1 master master 709 3월 1 22:23 svr2_svctab.c
Tmax 시스템 기동
tmboot
master@master:~/tmax/svct$ tmboot
TMBOOT for node(master) is starting:
Welcome to Tmax demo system: it will expire 2023/5/1
Today: 2023/3/1
TMBOOT: TMM is starting: Wed Mar 1 22:40:14 2023
TMBOOT: CLL is starting: Wed Mar 1 22:40:14 2023
TMBOOT: CLH is starting: Wed Mar 1 22:40:14 2023
(I) CLH9991 Current Tmax Configuration: Number of client handler(MINCLH) = 1
Supported maximum user per node = 15922
Supported maximum user per handler = 15922 [CLH0141]
TMBOOT: TLM(tlm) is starting: Wed Mar 1 22:40:14 2023
TMBOOT: SVR(svr2) is starting: Wed Mar 1 22:40:14 2023
TMAX 프로세스 확인
ps -ef |grep -e tmm -e cll -e clh
master@master:~/tmax/svct$ ps -ef |grep -e tmm -e cll -e clh
master 20937 1 0 22:40 pts/1 00:00:00 tmm -b 20936 -n master
master 20938 1 0 22:40 pts/1 00:00:00 cll -b 20936 -n master
master 20939 1 0 22:40 pts/1 00:00:00 clh -b 20936 -n master
클라이언트 프로그램 컴파일 및 실행
cd TMAXDIR/sample/client
./compile c solowwer
./compile c toupper
master@master:~/tmax/sample/client$ ./compile c tolower
cc -O -I/home/master/tmax -c tolower.c
tolower.c:6:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
6 | main(int argc, char *argv[])
| ^~~~
tolower.c: In function ‘main’:
tolower.c:17:14: warning: implicit declaration of function ‘tmaxreadenv’ [-Wimplicit-function-declaration]
17 | if ( (ret = tmaxreadenv( "tmax.env","TMAX" )) == -1 ){
| ^~~~~~~~~~~
cc -O -I/home/master/tmax -L/home/master/tmax/lib64 -o tolower tolower.o -lcli
master@master:~/tmax/sample/client$ ./compile c toupper
cc -O -I/home/master/tmax -c toupper.c
\toupper.c:7:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
7 | main(int argc, char *argv[])
| ^~~~
toupper.c: In function ‘main’:
toupper.c:18:14: warning: implicit declaration of function ‘tmaxreadenv’ [-Wimplicit-function-declaration]
18 | if ( (ret = tmaxreadenv( "tmax.env","TMAX" )) == -1 ){
| ^~~~~~~~~~~
cc -O -I/home/master/tmax -L/home/master/tmax/lib64 -o toupper toupper.o -lcli
서비스 실행
./toupper aaa
./tolower AAA
master@master:~/tmax/sample/client$ ./toupper aaa
TOUPPER service is started!
INPUT : data=aaa
OUTPUT: data=AAA
send data: aaa
recv data: AAA
master@master:~/tmax/sample/client$ ./tolower AAA
TOLOWER service is started!
INPUT : data=AAA
OUTPUT: data=aaa
send data: AAA
recv data: aaa
tmadmin 명령어로 서비스 호출 확인
tmadmin
si
st -s
master@master:~/tmax/sample/client$ tmadmin
--- Welcome to Tmax Admin (Type "quit" to leave) ---
$$1 master (tmadm): si
------------------------------------------------------------------------
clh svrname (svri) status count qcount qpcount emcount
------------------------------------------------------------------------
0 svr2 ( 4) RDY 2 0 0 0
$$2 master (tmadm): st -s
CLH 0:
-----------------------------------------------------------------------------------------------------
svc_name svr_name count q_cnt aq_cnt q_avg avg status
-----------------------------------------------------------------------------------------------------
TOLOWER svr2 1 0 0 0.000000 0.000360 RDY
TOUPPER svr2 1 0 0 0.000000 0.000571 RDY
$$3 master (tmadm):
728x90
반응형
LIST
'Linux' 카테고리의 다른 글
[Linux] curl을 이용한 WebDAV 사용법 (0) | 2023.03.23 |
---|---|
[Linux] curl 명령어 (1) | 2023.03.22 |
[Linux] history 출력 시 날짜/시간 표시 하기 (1) | 2023.03.08 |
[Linux] Jira Software + MySQL 협업 툴 구축 하기 - 설치형 (1) | 2023.03.04 |
[Linux] Confluence + MySQL 구축하기 - 설치형 (2) | 2023.03.02 |