[Linux/Unix] AIX - machine 전체 CPU 및 Core 수 확인
·
OS_Linux&Unix
AIX가 설치된 Machine이 몇개의 CPU로 몇 Core를 가지고 있는지 확인할 수 있는 방법 물리적으로 Total CPU = CPU 수 x Core 수 그러면 Machine에서는 어떻게 확인할까? # lscfg 명령어 lscfg 명령어로 현재 HardWare 구성정보를 확인할 수 있다. 설치된 CPU 칩의 갯수와 CPU가 몇 Core로 되어 있는지 확인한다. # lscfg -vp | grep WAY 4-WAY PROC CUOD: 내가 사용하고 있는 장비의 값 4-WAY => CPU칩 당 Core 수 4-WAY PROC CUOD: => 해당 라인이 나온 갯수는 CPU칩 수 따라서 내가 사용하고 있는 Machine 전체의 수는 4x1 = 4 core 임. # lparstat 명령어 lparstat 명령..
TPENOENT - no entry found / conversation모드에서는 서버의 수동 리부팅이 되지 않는다.
·
TroubleShooting
# 테스트  ## conversation 모드에서 서비스 호출이 안된다. 1. AP server에 CONV=Y 옵션을 주어 conversation모드로 설정하였다.2. Client에서 서비스를 호출하였지만 tperrno = 6 에러만 나왔다.3. CONV=N 옵션을 준 AP server에 호출을 하면 정상적으로 서비스 호출이 되었다.4. 생각해보자. 왜 conversation모드인 AP server에서는 tperrno = 6 에러 즉,  왜 해당 서비스를 찾을 수 없다는 에러가 나왔을까?짐작해보자면...5. conversation모드에서는 대화형 모드로 서버/클라이언트가 연결된다. 이에 사용되는 함수가 tpconnect() 이며 메세지를 주고 받을 때 tpsend() tprecv()함수를 사용한다.연결을..
Hang up 이란 ?
·
TroubleShooting/시스템 안정성 강화
# Hang up이란  통상적으로 서버 프로세스 자체는 기동 되고 있지만, 클라이언트의 request 시에 서버에서의 아무런 reply가 없는 것을 의미한다.   # Hang up의 종류  1. 서버 resource의 부족으로 인한 Hang up  서버의 자원들이 여러개의 Thread를 실행하느라 추가적인 작업 수행에 필요한 Thread가 없을 수 있다.결국 모든 resource와 thread가 바쁘게 프로세싱 되고 있는 상태이다.  2. Deadlock  교착현상. 서로가 Lock의 원인이 되어 이러지도 저러지도 못하는 교착의 상황을 말한다.발생하는 이유는 여러 조건이 있으며, 발생 시에는 Deadlock에서 Hang up 까지 이어진다.  Deadlock 걸리는 조건  1) 프로세스가 resource..
HA / High Availability 란?
·
TroubleShooting/시스템 안정성 강화
HA 란 ?- 고가용성, 고가용도  가용성은 시스템 에러 시 얼마나 빠른 시간 내에 복구 되어 다시 정상적으로 서비스할 수 있는 상태인지를 분석하는 척도이다. 따라서 HA 구성이란 이러한 가용성을 극대화 시키는 구성을 말하는 것이다.   1. 서버 이중화(HA- High Availability) 솔루션의 필요성. 많은 고객사의 IT관리자 분들은 현재의 IT서비스의 연속성을 지속적으로 유지하는 방안에 대한 고민을 한번쯤 하게 된다. 그에 따라, 서버 다운타임 최소화, 백업, 가용성 유지 등으로 정보 검색을 하다 보면, 마지막에 만나게 되는 단어가 “서버 이중화”, “서버 HA”등이 될 것이다. HA(High Availability)를 간단히 한국어로 직역을 하자면 “고가용성” 이라고 말하기도 하는데, Wi..
[Tuxedo] TM_SVCTIMEOUT_SIGTERM 파라미터와 tmshutdown -w 옵션이 많이 사용되지 않는 이유
·
TroubleShooting
# TM_SVCTIMEOUT_SIGTERM 옵션은 SERVICES 섹션에 설정된 SVCTIMEOUT 값(초)에 의존한다. 만약 TM_SVCTIMEOUT_SIGTERM=YES이고 SVCTIMEOUT=10초 로 환경설정이 되어있다면 AP server로 부터 SVCTIMEOUT이 10초동안 발생하게 되면 곧바로 SIGTERM이 사용되어 해당 서비스를 가지고있는 AP server는 terminate되며 restart 된다. (*SERVERS 섹션에서 RESTART=Y로 되어있는 경우에 한함) 140642.node1!BBL.9110032.1.0: CMDTUX_CAT:1837: WARN: Server(49414440) processing terminated with SIGTERM after SVCTIMEOUT 14..
[Tuxedo] TM_SHUTDOWNTIMEOUT 테스트
·
TroubleShooting
# TM_SHUTDOWNTIMEOUT  0~65535(초) 까지의 값을 설정 가능하며, 이 파타미터가 설정되어 있으면 tmshutdown은 timeout을 처리한다.AP server 프로세스가 TM_SHUTDOWNTIMEOUT 으로 설정된 시간(초) 이내에 정상적으로 종료되지 않으면, tmshutdown 은 더 이상 기다리지 않고 아래와 같이 메시지를 남기고 계속 진행하게 된다.  tmshutdown -s simpserv Shutting down server processes ... Server Id = 21 Group Id = APPGRP2 Machine = SITE2: timeout Server Id = 21 Group Id = APPGRP1 Machine = SI..
[Tuxedo] Oracle Tuxedo 10gR3 patch 152
·
Middleware_Tuxedo
# 테스트환경 AIX IBM 7.2 / oracle Tuxedo 10.3 oracle Tuxedo는 12c 부터 설치시 Opatch 디렉토리가 자동적으로 생기지만 아래 버전들은 따로 디렉토리를 만들어 주어야 한다. + 12c 보다 패치방식 훨씬 간단하다고 생각한다. 12c는 patch file의 경로와 oraInst.loc 파일의 경로를 모두 잡아주어야하는 번거로움이 있어서 그렇달까... # 패치 순서 1. 오라클에서 받은 패치 파일을 IBM AIX으로 보내고 압축해제를 해준다. 나는 Opatch 디렉토리를 새로 만들어 이곳에 설치파일을 떨어뜨렸다. # ls p20445464_10300_AIX64-5L.zip # unzip p20445464_10300_AIX64-5L.zip Archive: p204454..
[Tuxedo] SHM 모드에서 BBL의 상태가 DEAD 일 때
·
TroubleShooting
잘 띄워진 BBL을 kill -9 로 죽였다. psr로 확인하니 DEAD 상태가 나왔다. psr 과 psc 커맨드는 들어먹지만 pclt 커맨드는 사용되지 않는다. BBL의 관리하에 WSH가 움직이기 때문이다. BBL이 죽으면 tmshutdown 도 되지 않는다. master node로 해당 명령어를 사용하라는 로그만 나온다. >tmshutdown -cy Shutting down all admin and server processes in /ofm/jwchoi/sw2/tp/tuxedo12.2.2.0.0/samples/atmi/simpapp/tuxconfig tmshutdown: internal error: CMDTUX_CAT:766: ERROR: must run on master node >tmshutdo..
[Tuxedo] WARN: Server(42271008) processing terminated with SIGTERM after SVCTIMEOUT
·
TroubleShooting
UBBCONFIG 환경파일의 SERVICE 섹션에서 SVCTIMEOUT=15(초) 로 설정을 해주었기 때문에 아래와 같이 ULOG에는 15초에 한번씩 SVCTIMEOUT 되는 log가 떨어진다. 내가 알고 싶은 건 SVCTIMEOUT이 일어나고 15초 사이에 Service가 Hang 되었는지 아닌지다. => * 1초단위로 txrpt 수행해서 확인한다. # 테스트 AP server가 TOUPPER 서비스를 수행하는 평균시간으로 16초 마다 서비스 수행을 했던 것으로 기록된다. >txrpt -n TOUPPER -d 12/7 -s 18:16:06 -e 18:30:50 < stderr3 START AFTER: Wed Dec 7 18:16:06 2022 END BEFORE: Wed Dec 7 18:30:50 20..
[Tuxedo] Linux Tuxedo 튜닝 환경설정
·
Middleware_Tuxedo
튜닝을 위해서는 OS / 네트워크 / Tuxedo 환경설정 3가지가 필요하다. == 자세한 글은 아래 출처에 있으며 Tuxedo 환경설정만 가져왔다. == Tuxedo ubbconfig 환경설정 1) WSH의 개수 설정 WSH의 역할은 WS 클라이언트와 통신하는 역할을 하며, 하나의 WSH은 멀티 플렉싱 기능을 이용하여 하나 이상의 WS 클라이언트와 통신이 가능하다. 하나의 WSH가 몇 개의 WS 클라이언트와 통신을 할지는 ubbconfig의 WSL 정의 부분에 CLOPT 부분에 "-x" 옵션으로 지정하는데, 일반적으로 10`50개 사이의 값으로 설정하고, 하나의 WSH가 50개 이상의 클라이언트를 처리해야 하는 경우는 WSH의 수를 늘려야 한다. 2) 서버의 갯수의 설정 Tuxedo 상의 어플리케이션 ..
[Unix/Linux] nohup 사용하여 쉘스크립트 계속 실행하기
·
OS_Linux&Unix
쉘스크립트를 짜서 실행시킨 후, 쉘스크립트를 탈출해도 서비스가 계속 호출 및 응답을 받을 수 있게 하고 싶었다.   #  nohup 명령어  nohup은 "no hangups" 라는 의미로 Linux, Unix 계열의 OS에서 쉘스크립트파일 (*.sh)를 데몬 형태로 실행시키는 프로그램이다. - 터미널 세션이 끊겨도 실행을 멈추지 않고 동작하도록 함- 별도의 옵션을 설정하지 않았다면, nohup으로 프로그램을 실행 시 출력되는 메세지들을 nohup.out이라는 파일에 저장한다.   *nohup으로 실행할 쉘 스크립트의 퍼미션 상태는 755 이상이어야 한다. - 리눅스는 기본적으로 터미널 세션 로그아웃이 발생하면, 해당 터미널에서 실행한 프로세스들에게 "HUP signal"을 전달하여 종료시킨다. nohu..
Oracle Tuxedo 리뷰
·
Middleware_Tuxedo
# oracle tuxedo 리뷰 Online Transanction process성 업무를 다루는 Tuxedo에서 Client가 Server로 서비스를 호출하는 테스트를 진행하다가 tuxedo가 만들어내는 솔루션에 대한 생각을 해보았다. 늘 그렇듯, 들어가는 문은 한정적이나 인구는 박이 터진다. 하나의 예를 들어보자면 서울의 지하철은 출퇴근길에 지옥철로 유명하다. 전세계적으로 보아도 대한민국 서울의 지하철 밀집도는 늘 상위권에 머무른다. 출퇴근을 위해서 사람들은 지하철을 타기 위해 역으로 몰려든다. 하지만 지하철의 최대 탑승객 인원은 한정적이기 때문에 탑승하지 못한 승객은 다음 지하철을 기다려야한다. 지하철 탑승객들의 이러한 불편함을 한명이라도 줄이기 위해서는 사람들이 많을 수록 더 많은 지하철이 필요..
[Tuxedo] WSNAT_CAT:1287 에러 / WSH - Client 의 disconnection
·
TroubleShooting
# WSNAT_CAT:1287 WSNAT_CAT:1287: WARN: Forced shutdown of client; user name ''; client name ''; workstation address '//10.11.118.102:2395' ## 원인 1.WSH의 Session 설정 시간을 초과한 경우에 발생. 2.WSL과 Session을 맺을때 User-ID, Password가 다른 경우에 발생 ## 조치 1.WSH의 Session 설정 시간을 늘이든지, UBB file의 WSL에 정의된 T option을 없앤다. 2.TPINIT 하는 부분의 User-ID, Password를 확인하여 설정한다. WSL SRVGRP="identifier" SRVID="number" CLOPT="[ -A ] [ s..
[Unix/Linux] 에러 Program terminated with signal 11, Segmentation fault.
·
TroubleShooting
Program terminated with signal 11, Segmentation fault.#0 0x00695a0e in malloc_consolidate () from /lib/libc.so.6(gdb) bt#0 0x00695a0e in malloc_consolidate () from /lib/libc.so.6#1 0x00697e37 in _int_malloc () from /lib/libc.so.6#2 0x00699cca in calloc () from /lib/libc.so.6#3 0xf79101f0 in GPT_new_ctx () from /mytuxedodirectory/lib/libengine.so#4 0xf7904455 in _e_ctx_declptr () from /mytuxedodi..
[Tuxedo] CMDTUX_CAT:1685: ERROR: Application initialization failure
·
TroubleShooting
tmboot -s simpserv 가 안됨. 아래 에러는 복합적인 에러임. 이유가 아주 다양하다. 그래서 어렵다. exec simpserv -A : CMDTUX_CAT:1685: ERROR: Application initialization failure # server 기동 안됨 >buildserver -o simpserv -f simpserv.c -s TOLOWER BS-2340148.c: simpserv.c: ld: 0711-224 WARNING: Duplicate symbol: .tpsvrinit ld: 0711-224 WARNING: Duplicate symbol: tpsvrinit ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain mor..
최선을 다하자!
기록