IT 83

lsof 사용법_사용중인 file descriptor 확인

- OS에서 사용중인 FD(file descriptor)를 확인하기 위해 lsof 명령어를 자주 사용한다. - 기본적으로는 pid를 이용해 lsof -p 와 같이 사용 - lsof 명령어 수행에 대한 주요 옵션은 다음과 같다. 옵션 설명 -p 프로세스ID(PID)에 해당하는 파일목록 확인 -c 지정된 프로그램의 프로세스 들이 사용하는 파일 확인 -u 콤마(,) 구분자로 지정한 계정이 수행한 모든 프로세스가 사용하는 파일 확인 -i 소켓들에 대한 목록 확인, 프로토콜이름/서비스 포트 지정해 확인 가능 -N NFS로 연결된 파일 목록 확인 -a and 연산시 사용하는 구분자(* 없으면 or 연산으로 선택해 확인하므로) - lsof 명령어 수행 결과에 대한 출력옵션은 다음과 같다. 옵션 설명 -n 도메인명 대..

IT/OS 2020.08.03

서버 iptables 설정 확인/제거 방법

- 간혹 WEB서버 설치 이후, 기동이 되었음에도 외부에서 접속이 안되는 경우가 있다. 이 경우 일반적으로 외부 방화벽 설정을 확인하나, 외부방화벽 차단 rule 설정이 없는 경우에도 접속이 안된다면, 서버 iptables 설정이 어떻게 되어 있는지 확인이 필요하다. (RHEL6 에 해당) - root 계정으로 다음 명령어 실행해 ACCEPT / REJECT 내역을 확인한다. > iptables --list * 서비스 등록된 경우 다음 명령어로 비활성화 처리할수 있다. - 확인 > service iptables status - 중지 > service iptables stop - OS기동시 자동으로 기동되는 것 방지 > chkconfig iptables off *참고 : RHEL7 에서는 firewalld..

IT/OS 2020.08.03

SSL 버전 확인 _Apache/WebtoB/iPlanet

- WEB어플리케이션에서 지원하는 SSL/TLS버전 확인 방법은 다음과 같다. 1. Apache 1) OS의 openssl 확인 > openssl version 2) Apache 사용중인 SSL 버전 확인(컴파일시 내용 확인 가능) ~~/apache/bin> apachectl -v 3) conf 하위의 httpd.conf 혹은 httpd-ssl.conf 파일의 SSLProtocol 절 확인 2. WebtoB - 기동 계정으로 로그인 후 다음 명령어를 통해 TLS1.2 사용 가능여부를 확인 가능하다. > wbssl s_client -connect ip:port -tls1_2 3. iPlanet - config 하위의 server.xml 내 서버 절에 로 표기된 부분 확인. 아무것도 없으면 default 설..

IT/WEBWAS 2020.08.03

메모리/CPU 과점 프로세스 찾아내기

(Linux 환경 / java 프로세스 기준) 1. top : 메모리나 CPU를 과점하는 프로세스 및 PID 확인 (여기서는 28322를 예시로 함.) 2. top -H -p 28322 : 해당 PID로 실행중인 프로세스 전체 확인 (-> 여기서 자식프로세스로 28337 확인을 예시) 3. jstack -F 28322 > thdump_28322.txt : 3초 간격으로 실행, 쓰레드 덤프를 발생시킨다 / jstack -F 28322 > thdump_28322_1.txt / jstack -F 28322 > thdump_28322_2.txt 4. view thdump_28322.txt : 쓰레드 덤프를 확인한다. STUCK, RUNNING 인 처리건을 주로 확인한다. 이때, 실제 PID에 매핑되는 쓰레드를 ..

IT/WEBWAS 2020.07.11

MAT(힙덤프 분석기) OutOfMemory 발생시

.hprof Heapdump 파일 분석을 위해 MAT를 많이 사용한다. (다운로드 링크 : https://www.eclipse.org/mat/downloads.php ) 만약 사용 중에 MAT에서 OutOfMemory : java heap space 발생시, 실행파일이 있는 디렉토리로 이동해, MemoryAnalyzer.ini 파일 내 -Xmx4096m 과 같이 변경하고 재실행하면 된다. 단, 덤프분석하는 환경의 메모리 설정에 따라 조정해야 함에 주의

IT/WEBWAS 2020.07.11

숫자 진법 계산기(10진수/16진수/2진수/문자로 변환)

top -p pid 등으로 확인한 pid에 해당하는 각 프로세스별 쓰레드 덤프 사용시, nid에 매치하기 위해서는 10진수 16진수 변환이 필요하다. 다음의 계산기를 사용하면 10 진수를 16진수 변환이 가능하다. 10진수: Dec 16진수: Hex 2진수: Bin 8진수: Oct 문자: ASCII / Unicode Char 입력란 우측의 숫자는 자리수를 의미함. 메시지: * 테스트: -10진수 65 -> 문자:A (A의 ASCII코드가 65) -문자 A -> 10진수 65 -한글 가 -> AC00(유니코드, 16진수 HEXA) ** 입력 지원 최대값 : 10진수 4294967295 (16진수로는 FFFFFFFF) *** 음수는 변환 지원 안함. * 출처 : http://mwultong.blogspot...

IT/WEBWAS 2020.07.11

일반계정으로 Apache 80포트 기동

일반적으로 root 계정이 아닌 계정으로 80포트를 사용한 WEB 기동시 다음과 같은 메시지가 확인된다. ------------------------------------------------------------------------------------------------------------------- (13)Permission denied: AH00072: make_sock: could not bind to address 127.0.0.1:80 no listening sockets available, shutting down AH00015: Unable to open logs ------------------------------------------------------------------..

IT/WEBWAS 2020.07.06

OS별 file descriptor 개수 확인 및 수정

- WAS 기동시 Too many openfiles ~~ 와 같은 로그가 확인되며 기동되지 않을 경우, file descriptor 설정 변경필요 - 아래 설명의 는 수정할 값을 의미함. 1. AIX/Solaris /usr/bin/ulimit -a * Hard limit > ulimit -aH ** Soft limit > ulimit -aS - AIX 수정 (전역 수정_root 권한) vi /etc/security/limits OPEN_MAX nofiles= - Solaris 수정 (전역 수정_root 권한) vi /etc/system set rlim_fd_max= set rlim_fd_cur= - 사용자별 수정 (공통) > ulimit -n 실행 Linux * Hard limit > sysctl -a ..

IT/OS 2020.06.29