-
[WebTier/OHS] Cannot load mod_wl_ohs.so into server: rtld: 0712-001 Symbol ons_ssl_versions_validate was referenced from module mod_wl_ohs.so(), but a runtime definition
1. Overview Oracle HTTP Server 12.2.1.4 (12cR2) 에 DB Client 19c 패치 적용 및 최신 OHS BP 적용 시 OHS Instance 기동 시 예외가 발생한 사례. 1 Cannot load mod_wl_ohs.so into server: rtld: 0712-001 Symbol ons_ssl_versions_validate was referenced from module mod_wl_ohs.so(), but a runtime definition 2. Descriptions AIX 환경에서 발생하며, 특정 Symbolic을 export 하지 않아 발생하는 문제... Read More
-
[WebLogic/WRC] How To Use WebLogic Remote Console?
1. Overview WebLogic Remote Console(이하 WRC) 를 상세하게 다룬다. 2. Descriptions 2.1 What Is It? WRC는 Oracle Cloud, K8S, Container 환경, VM, On-Prem 와 같은 다양한 환경에 있는 WebLogic Domain 에 접근하여 관리할 수 있도록 하는, 가벼운 OpenSource. 기존의 WebLogic Admin Console과 다르게, WRC은 WebLogic Server Domain에 배치 되어 있지 않아도 된다. WebLogic REST APIs 를 활용하는 WRC는 어디에서나, 손쉽게 Destktop Ap... Read More
-
[ODI] org.xml.sax.SAXParseException: XML document structures must start and end within the same entity.
1. Overview ODI Studio 에서 JMS XML Queue 의 Data를 Load 할 때, 다음과 같은 예외가 발생한다. 1 2 3 ODI-1228: Task Procedure-<Procedure>-Load JMS fails on the target connection <Schema Name>. Caused by: java.sql.SQLException: class java.sql.SQLException org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 3012785; XML document structures must... Read More
-
[WebLogic] Intermittently hangs with using file session
1. Overview HttpSession store method로 file 을 사용하는 경우, 간헐적으로 Hang 발생 사례 2. Descriptions 아무런 동작을 하지 않는, test.jsp와 같은 페이지를 호출 시에도, 응답이 간헐적으로 지연되는 현상이 있다. Thread dump를 추출하여 아래와 같은 Stack Trace가 출력되었다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 "[ACTIVE] ExecuteThread: '13' for queue: 'weblogic.kernel.Default (self-tuning)'" #60 daemon p... Read More
-
[WebLogic/SAML] How To Set SAML 2.0 Services
1. Overview WebLogic 12.2.1.4 에서 SAML 2.0 Services를 구성하여, SSO 기능을 구현한다. 실제 지원 사례와 동일한 버전을 선택하였다. 2. Descriptions 2.1 개념 SAML 2.0 에서 지원하는 SSO 개념/기능에 대해서 간단하게 설명하자면, 사용자에게 실 서비스(포털/쇼핑 등)를 제공하는 서비스 제공자. Service Provider. 줄여서 SP가 있다. 사용자에게 시스템 접속 인가 여부를 확인하고 인증 시스템을 제공하는 인증 제공자. Identity Provider. 줄여서 IdP가 있다. 많은 SP들은, IdP와 채널링되어, 하나의 IdP에서... Read More
-
[ODI/Patch] SPB(Stack Patch Bundle) to ODI
1. Overview ODI 12.2.1.4 (12cR2) 에 SPB 적용 가이드 2. Descriptions 작성일 기준 다음의 Patch files을 적용한다. Patch 28186730: OPATCH 13.9.4.2.17 FOR EM 13.5 AND FMW/WLS 12.2.1.4.0 AND 14.1.1.0.0 Patch 37157608: ODI Stack Patch Bundle 12.2.1.4.241010 OPatch version 확인 1 2 3 4 5 6 7 export ORACLE_HOME=/sw/odi/odi/12cR2 export JAVA_HOME=/sw/jdk/jdk1.8.... Read More
-
[JVM/Crash] Where is hs_err_pid file?
1. Overview JVM Core dumped 시, hs_err_pid 파일의 위치 2. Descriptions -XX:ErrorFile 지시어가 가리키는 위치에, 파일을 쓸 수 없으면 기본값으로 대체된다. Runtime JVM에 지시어 자체를 쓰지 않더라도, 기본값으로 대체된다. 기본값은, 실행중인 프로세스의 Working Directory 이다. Working Directory는 다음의 명령으로 조회 한다. 1 2 3 4 5 6 $ sudo lsof -p 664406 | grep cwd lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/... Read More
-
[WebLogic/WLST] How To Upgrade a Domain
1. Overview WebLogic Domain Upgrade 방법 및 사례 2. Descriptions 다음의 WLST Script를 통해 Debug log 수집과 더불어 Upgrade가 완료된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 export ORACLE_HOME=/sw/weblogic/12cR2 export DLOG_DIR=/tmp/wlstDebug mkdir ${DLOG_DIR} export WLST_PROPERTIES="${WLST_PROPERTIES} -Dwlst.debug.init=true" export WLST_PROPERTIES="${WLST_PROPERTIES} ... Read More
-
[WebLogic] How To Pack or Unpack
1. Overview Pack을 이용하여 Domain을 Template 화 할 수 있으며, Unpack으로 손쉽게 Template 을 Remote machin에 설치할 수 있다. 2. Descriptions 다음을 실행하여, Domain에 대한 Template을 생성한다. 1 2 3 4 5 ${ORACLE_HOME}/oracle_common/common/bin/pack.sh \ -domain=${DOMAIN_HOME} \ -template=/tmp/template.jar \ -template_name="My Template" \ -managed=true 다음을 실행하여, Template을 원하는 경로에... Read More
-
[WebLogic/WLST] How To Debug WLST
1. Overview WLST 명령문의 Debugging 방법 2. Descriptions 스크립트 예시는, Domain upgrade 시 WLST debugging. WLST_PROPERTIES에는 Debugging 뿐만 아니라, 다양한 옵션을 구성할 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ORACLE_HOME=/sw/weblogic/12cR2 DLOG_DIR=/tmp/wlstDebug mkdir ${DLOG_DIR} export WLST_PROPERTIES="${WLST_PROPERTIES} -Dwlst.debug.init=true" export WLST_PROPERTIES="... Read More
-
[ODI] Size limit exception with ODI studio when reading queue
1. Overview JMS Queue로 부터 Data를 읽으면, 임시로 생성된 ODI Studio in-memory table에 load 된다. Queue data가 너무 큰 경우 Exception이 발생한다. 2. Descriptions JMS XML Queue 에서 Big data를 가정하기 위해서, 다음의 Data를 생성한다. 단순히 id가 1인 single user에 email string이 매우 크도록 한 것이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 // StringBuilder를 사용하여 큰 XML 문자열 생성 StringBuilder xmlDa... Read More
-
[ODI] How to create a JMS XML Queue dataserver
1. Overview ODI Studio JMS XML Queue dataserver topology를 생성하는 방법 2. Descriptions Topology - Physical Architecture - JMS Queue XML - - JNDI 1 2 3 4 5 6 JNDI Authentication : <Undefined> JNDI User/Password JNDI Protocol : <Undefined> JNDI Driver : weblogic.jndi.WLInitialContextFactory JNDI URL : http://<IP>:<PORT&g... Read More
-
[Linux] TigerVNC
1. Overview Oracle Linux 8.X (RHEL 8.X) 에서 TigerVNC 사용 방법 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 # packages 설치 sudo yum -y install tigervnc-server tigervnc sudo yum -y group install GNOME base-x # GUI mode 활성화 sudo systemctl set-default graphical.target sudo systemctl isolate graphical.target # V... Read More
-
[WebTier/OHS] All In One Script For 12cR1
1. Overview Oracle HTTP Server 12cR1 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. Descriptions All-In-One-Script-For-12cR1.sh 실행으로 다음 환경을 구성하도록 한다. base_domain NodeManager (SecureListner=false, TCP 5556) Worker 2ea 3. Script 3.1 Engine 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 ... Read More
-
[WebLogic] Redeploy App With Removing Cache
1. Overview Nostage mode App의 Redeploy를 단순히 Cache 삭제하여 수행하는 방법 2. Descriptions App은 배치 시에, ${DOMAIN_HOME}/servers/<SERVER>/tmp/_WL_user 아래에 생성되고, 첫 호출되는 JSP는 class compile 되어 위치한다. Instance 종료 _WL_user 아래 App 삭제 Instance 시작 단순한 세가지 단계만으로 App 재배포가 완료된다. 3. References How To Clear The Server Cach... Read More
-
[WebTier/OHS] iPlanet Error Page To OHS
1. Overview iPlanet 에 정의된 Error page 설정을 OHS로 Migration 하는 방법 2. Descriptions iPlanet에 정의된 Error page 설정은 다음과 같이 HTTP Response Status Code가 정의되지 않고, Status Text로 정의되어 있다. 1 2 # in Ipalnet Error fn="send-error" reason="Bad Request" path="/error/error_page.html" OHS에서 ErrorDocument 설정은, <3-digit code> 가 필요하다. 1 2 # in OHS ErrorDocu... Read More
-
[WebLogic] When Using Same Cookie-Name
1. Overview 배포된 2개 이상의 App이 같은 Cookie Name을 사용하는 경우 2. Descriptions 다음과 같은 weblogic.xml 구성을 갖는 두 개의 Application(/testapp , /testapp2)이 배포되어 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <weblogic-web-app> <session-descriptor> <persistent-store-type>replicated_if_clustered</persistent-store-type> <tim... Read More
-
[WebLogic/SAML] How to use expired certificate with SAML
1. Overview WebLogic 12cR2 에서 SSO Server에 참여하기 위해 Service Provider로 SAML 2.0 Service를 구성한다. 만료된 인증서를 사용해도 되는가? 2. Descriptions 기본적으로 만료된 인증서를 쓰는 것은, 보안 취약점을 야기한다. Client와 Server간의 주고 받는 Data는 여전히 Encrypt 되지만 그럼에도 만료된 인증서를 쓰는 것은, 노후화된 Algorithm을 쓰는 것과 같고, Identity Provider 의 보안 정책에 위반 될 수 있다. 만료된 인증서를 사용하기 위해서는, Identity Provider로 동작하는... Read More
-
[WebTier/OHS/Apache] Log rotation
1. Overview Apache 2.X를 Based로 하는 Oracle HTTP Server 에서의 Log rotation 설정 방법 2. Descriptions ErrorLog 지시어를 예시로 다음과 같이 지정 할 수 있다. ErrorLog "||${PRODUCT_HOME}/bin/odl_rotatelogs ${ORACLE_INSTANCE}/servers/${COMPONENT_NAME}/logs/error-%Y-%m-%d 10M 100M" 모든 로그는 error 파일에 기록된다. error 파일이 용량 10Mbytes에 도달하면, error-%Y-%m-%d-%H 으로 회전한다. erro... Read More
-
[WebTier/OHS] How To DNS Lookup?
1. Overview OHS/Apache 에서 DNS Lookup 에 관한 설명 2. Descriptions The “main server” Address 설명과 같이, OS의 기본 Kernel 구현을 따른다. gethostname 의 호출과 동일하다는 것이다. Kernel 설명을 참고하면, /etc/nsswitch.conf 에서 hosts: 로 우선순위가 지정된다. files는 /etc/hosts 를 의미하고, dns는 /etc/resolv.conf 를 의미한다. 3. References 본문에 포함되어 있음. Read More
-
[WebLogic] Password Encryption Algorithm With 12cR2
1. Overview WLS 12.2.1.4 (12cR2) 에서 지원/사용 가능한 암호화 알고리즘 2. Descriptions Security 에서 ‘AES 256-Bit Encryption Used in New Domains’ Docs link 오류로 인해 ‘AES 256-Bit Encryption Used in New Domains’ 직접 링크 이동에 문제가 있어 보인다. 위 내용에 따르면, 12.2.1.4 Release 부터 새로 생성되는 도메인에 대해 AES-256 bit의 암호화를 사용하며, 이전 도메인은 AES-128 을 사용하게 된다. 12.2.1.4 부터 AES-258 사용에 대해 변경... Read More
-
[WebLogic] No error despite changed datasource password
1. Overview Datasource password를 서비스 도중 변경했음에도, 서비스에 영향이 없다. 2. Descriptions Datasource password option 설명에 따르면, Password는 Physical connection이 생성될 때 사용된다. 그러므로, 이미 사용 중인 Datasource connection pool들은 socket 통신으로 연결되어 있으므로 password를 서비스 도중 변경하여도 문제가 없다. Test JDBC data sources 설명에 따르면, Datasource connection pool에서 1개 connection을 예약(reserve... Read More
-
[WebLogic] index-directory-enabled
1. Overview index-directory-enabled 옵션 설명 2. Descriptions index-directory-enabled 옵션을 true로 적용 시, http://.../<context-root>/ 와 같이 Directory 를 URI로 호출 할때, Directory Listing을 표시할지를 정의한다. 같이 살펴봐야 할 옵션으로 welcome-file-list 옵션이 있다. 해당 옵션의 기본값은 Servlet 3.1 Sepc 에서 8.1.6 Other annotations / conventions 에 따라 index.html, index.jsp 등이 있고, web... Read More
-
[WebLogic/Hibernate] HV000030 No validator could be found for constraint 'javax.validation.constraints.Email'
1. Overview WebLogic 12cR2 에 배포된 App이 Hibernate 사용 시 Exceptio이 발생하였다. 1 2 javax.validation.unexpectedTypeException: HV000030: No validator could be found for constraint ‘javax.validation.constraints.Email’ validating type ‘javax.lang.String’. Check configuration for ‘email’ at org.hibernate.validator.internal.engine.Constraintvalidation.Constra... Read More
-
[WebLogic] How To Get Active Execute Threads
1. Overview WLS 11gR1 기준에서 Active Execute Threads 의 추이를 모니터링 하는 방법 2. Descriptions How To Get Active Execute Threads (Doc ID 2348749.1) 문서의 안내에 따라 확인을 하면 된다. 위 문서의 설명에 더해, 알아둬야 할 것은, Active Thread 는 현재 작업이 실행중인 스레드 Idle Thread 는 유휴상태로써, 아무런 작업 없이 wait() 상태에 있는 스레드 Stuck Thread 는 동일한 작업을 기본값 600초 초과하여 실행중인 지연 스레드 Standby Thread 는 위 항... Read More
-
[WebLogic] How to change context root of console
1. Overview 어떻게 Admin Console의 Context Root를 변경하나요? 2. Descriptions Admin Console Page > Click DOMAIN_NAME > Configuration > General > Advanced 에서 Console Context Path 를 변경하면 됩니다. 또는 다음의 WLST Script를 실행합니다. 1 2 3 4 5 connect('<USERNAME>','<PASSWORD>','<ADMIN_URL>') edit() set('ConsoleContextPath', 'A string t... Read More
-
[ODI] How To Set JMS XML Queue
1. Overview ODI 12c 에서 JMS XML Queue 정의 방법 2. Descriptions Topology 에서 JMS XML Queue Architecture 를 정의하고, JMS JNDI URL을 정의시에, studio.log에 아래와 같이 확인된다. JDBC:SNPS:JMSXML:jndi:<URL> 앞 부분의 Prefix(JDBC:SNPS:JMSXML) 부분은 SNPS Driver로 인해 정의되는 것이다. 때로 JNDI URL을 올바르게 설정하여도, 다음과 같은 Error를 마주할 수 있다. 1 2 3 4 5 6 7 java.sql.SQLException: ODI-4... Read More
-
[JDBC] How to use keepalive?
1. Overview JDBC Connection에 Keepalive 사용 방법 2. Descriptions Oracle JDBC Thin Driver에서 Keepalive 기능은 Connect url description 에 ENABLE=BROKEN 으로 활성화 한다. 또한, JDBC Driver에 keepalive 활성화 외에 다른 설정 가능한 매개변수는 직접적으로 없고 OS level에 매개변수인 tcp_keepalive_time, tcp_keepalive_interval, tcp_keepalive_probes 를 사용한다. tcp_keepalive_time : 해당 Seconds 동안 TCP 연결... Read More
-
[Database/JDBC] Keepalive with JDBC
1. Overview JDBC Thin Driver에서 Keepalive 구성 방법 2. Descriptions 2.1 Client side JDBC URL Description 절에 ENABLE=BROKEN 을 적용하면, Keepalive이 활성화 된다. Keepalive time 옵션값은 JDBC에 매개변수가 존재하지 않아, Linux OS의 tcp_keepalive_time, tcp_keepalive_interval, tcp_keepalive_probes 파라메터들에 의존한다. tcp_keepalive_time : 기본값 7200초. 해당 시간 동안 Connection 을 유지한다. tcp... Read More
-
[Coherence] Creating and Deploying App with WebLogic
1. Overview Coherence 14c 에서 App을 생성하고 배포하는 내용에 대해 설명한다. 공식 문서만을 기준으로 정리하였으며, 설명하는 순서가 공식 문서의 목차 순서와 다를 수 있다. 2. Descriptions 2.1 Creating First App Building Your First Coherence Application에서 가장 심플한 Coherence App을 만들 수 있다. 2.1.1 Basic Coherence Standalone Application 해당 과정은 “2.1.2 Basic Coherence JavaEE Web Application”의 방법과 거의 동일하다. ... Read More
-
[WebTier/OHS] ECC Cipher Suite with OHS 12cR2
1. Overview Oracle HTTP Server 12.2.1.4 에서 ECC(Elliptic-curve cryptography)를 지원한다. 2. Descriptions Table H-1 SSLCipher Suite Tags 에서 사용 가능한 Cipher suites 목록이 있다. ECDSA, ECDHE와 같이 ECC 기반 Cipher suite를 사용할 수 있다. 특정 요구사항으로, X25519Kyber768 를 지원하는지에 대해서 논의한다면, X25519는 ECC 기반 알고리즘이지만, 위 목록에 포함되어 있지 않고, Kyber(Post-Quantum Cryptography) 또한 지원... Read More
-
[WebTier/iPlanet] ECC Cipher Suite with iPlanet 7
1. Overview iPlanet 7 에서 ECC(Elliptic-curve cryptography)를 지원한다. 2. Descriptions A.27.15 Elliptic Curve Cryptography Support ECC를 지원하고 있음을 알 수 있다. ssl3-tls-ciphers 에서 Cipher suites 목록을 확인한다. 특정 요구사항으로, X25519Kyber768 를 지원하는지에 대해서 논의한다면, X25519는 ECC 기반 알고리즘이지만, 위 목록에 포함되어 있지 않고, Kyber(Post-Quantum Cryptography) 또한 지원되지 않아 X25519Kyber76... Read More
-
[WebLogic/Servlet] weblogic.servlet.ServletServlet Class
1. Overview weblogic.servlet.ServletServlet Class를 사용하면 잘못된 URL에도 정상 페이지가 호출 될 수 있다. 2. Descriptions weblogic.servlet.ServletServlet Class는 WebLogic 초기 버전에서 개발자의 Servlet 개발의 도움을 위해 제공되었다. WebLogic 14cR1 까지도 제공되는 Class 이며, 향후에는 포함되지 않도록 Deprecated 되었다. 다음과 같은 사용 예시. 1 2 3 4 5 6 7 8 9 <servlet> <servlet-name>ServletServlet</s... Read More
-
[WebLogic/JMS] A JMS Client using IIOP
1. Overview WebLogic 12.2.1.4 (12cR2) 환경에서 개발되는 JMS Client는 IIOP Protocol을 사용하여, JMS Resource에 접근할 수 있다. 그러나, 권장되는 것은 T3 Protocol 이다. 2. Descriptions Overview of Standalone Clients에서 WebLogic Server와 독립적으로 사용하는 Standalone client의 전반적인 목차가 소개된다. Developing a WebLogic Thin T3 Client에서 가장 권장되는 Model 인 Thin t3 client 을 소개하며, t3/t3s protocol을 사... Read More
-
[WebLogic] Deployer Command
1. Overview weblogic.Deployer 의 기본적인 사용 방법 2. Descriptions 배포된 App list 조회 1 java weblogic.Deployer -adminurl <ADMIN URL> -username <USERNAME> -password <PWD> -listapps App 배포 및 롤백 1 2 3 java weblogic.Deployer -adminurl <ADMIN URL> ... Read More
-
[WebLogic/TLS] TLS with WLS 11gR1
1. Overview WLS 11gR1 에서 TLS 활성화 방법 2. Descriptions WLS 10.3.6 (JDK 1.7) 환경에서 Inbound 또는 Outbound SSL 설정 방법. 아래 내용에 따라, JDK 1.7 update 1 이상 에서 TLS 1.2 를 사용 가능. Transport Layer Security (TLS) Support WebLogic Server supports the use of TLS V1.2 when using the JSSE provider in JDK 7 update 1 (or later JDK 7 releases). JDK 1.7 Cipher... Read More
-
[WebLogic/JTA] JTA Timeout and EJB Timeout
1. Overview JTA Timeout과 EJB Timeout의 상관관계 2. Descriptions 2.1 JTA Timeout JTA Timeout 의 설명 Specifies the maximum amount of time, in seconds, an active transaction is allowed to be in the first phase of a two-phase commit transaction. If the specified amount of time expires, the transaction is automatically rolled back. JTA는 2P... Read More
-
[WebLogic/SSL] Configuring Multiple Cipher Suite Certificates
1. Overview WebLogic Server 14.1 (14cR1) 및 JDK 1.8 환경에서 하나의 단일 HTTPS Port에 다양한 Cipher Suite Certificates 구성 방법을 살펴본다. 2. Descriptions 결론적으로, WLS 에서는 단일 HTTPS Port에 단 하나의 Keystore Alias만 설정할 수 있기 때문에 다양한 Cipher Suite의 Client와 Handshake 할 수 없다. WLS 에서 SSL 구성 단계 과정 중, Keystore 에 있는 인증서 중 단 하나의 Alias만 Load 하도록 설정한다. 이로 인해, 단일 HTTPS Port 별로 ... Read More
-
[WebLogic] A config.xml under pending or original directory
1. Overview DOMAIN_HOME 아래 original/pending 디렉터리에 생성되는 config.xml 의 용도를 설명한다. 추가로 config.xml의 archiving 도 간략 설명한다. 2. Descriptions 2.1 original/config.xml original directory는 공식 메뉴얼에 소개되어 있지 않기 때문에 일련의 테스트를 통해 확인된다. Admin console 에서 편집 모드를 활성화 하면 DOMAIN_HOME/original/config.xml 생성된다. 재차 편집 모드로 들어설 때마다, overwrite 한다. AdminServer 재시... Read More
-
[SSL/Certificate] How to make a self-signed certificate?
1. Overview JAVA SSL 테스트를 위해 수없이 생성하는 self-signed certificate의 생성 방법에 대한 간략한 정리 여기서는 JDK 1.8 기준에서 사용 가능한 RSA 와 ECDSA cipher suite를 가정한다. 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 # JAVA 환경변수 export PATH=/sw/jdk/jdk1.8.0_381/bin:${PATH} # 인증서 변수 KEYSTOREPATH=/tmp/ssl/keystore KEYSTOREFILE=keystore.jk... Read More
-
[JVM/Heap] How to calculate SurvivorRatio?
1. Overview SurvivorRatio옵션값에 따른 계산 방식 2. Descriptions Heap 은 New / Old 영역으로 구성 되어 있으며, New 영역은 다시 Eden 과 Survivor 로 구성 되어 있다. Survivor는 From 과 To 영역으로 구성 되어 있다. JVM 옵션으로 Heap 전체 크기가 2GB, NewSize 768MB, SurvivorRatio 8 설정일 경우 다음의 공식에 의해 계산한다. 1 2 3 # SurvivorRatio 공식 SurvivorRatio : 8 NewSize = Eden : Survivor(From) : Survivor(To) ->... Read More
-
[Coherence/Data Grid] How to install Coherence Data Grid 14c?
1. Overview Coherence Data grid 설치 및 기본적인 사용 방법을 설명한다. 2. Descriptions 2.1 Data Grid 기본적으로 Coherence Web 과 크게 다르지 않기 때문에, How-to-install-Coherence-Web-14c 을 참고하여 설치한다. 3.2 Cache Configuration 에서 추출하여 사용하는 *session-cache-config.xml 은 필요치 않고, 다음의 Data grid cache config 파일을 사용한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23... Read More
-
[ODI/Studio] Why does not show Physical Schema Lists in Logical Architecture?
1. Overview Logical Architecture Component에 Context와 이에 대응되는 Physical Schemas 를 선택하려고 하지만, List box에는 Undefined 만 표시된다. 2. Descriptions Logical Architecture 에서 생성한 Components 에서는 Context와 이에 대응되는 Physical Schemas 를 선택할 수 있다. Undefined 로 표시되는 원인은, Physical Architecture 에서 생성한 Component에 Physical Schemas 를 생성하지 않았기 때문에 발생한다. Physical Archit... Read More
-
[ODI] All In One Script For 11gR1
1. Overview How-to-install-ODI-12cR2 에서 작성한 내용을 토대로, All In One Script를 작성한다. 2. Descriptions 2.1 Downloads Oracle Software Delivery Cloud 에서 Download 할 List Oracle Database Standard Edition 2 12.1.0.2.0 (2.5 GB) Oracle WebLogic Server 10.3.6.0.0 (1018.5 MB) Oracle Data Integrator 11.1.1.9.0 (4.1 GB) Oracle Fusion Middleware Rep... Read More
-
[WebTier/OHS] Removed wlst key files under user home
1. Overview OHS Component가 생성하고 사용하는 /home/<USER>/.wlst key files 들이 제거되어 발생하는 문제와 원인에 대해 설명한다. 2. Descriptions OHS Component는 user home directory 하위의 .wlst (/home/<USER>/.wlst) key files 들을, NodeManager에 connect 시에 인증 수단으로 사용한다. Component가 storeUserConfig flag를 사용하면서, NodeManager에 connect 할 때 내부적으로 nmConnect 라는 function을 사용... Read More
-
[WebTier/OHS] Nzos Call NzosSetCredential Returned 28791
1. Overview Oracle HTTP Server 12cR2 기준으로 OHS Component가 기동이 되지 않으며, Nzos Call NzosSetCredential Returned 28791 Error를 기록한다. 2. Descriptions OHS Component Runtime Directory 하위 keystores/default 에는 Wallet 이 구성되어 있다. 1 2 $ ls ${DOMAIN_HOME}/config/fmwconfig/components/OHS/instances/<WORKER>/keystores/default cwallet.sso cwallet.sso.l... Read More
-
[WebTier/OHS] 한글 파일명 호출 시 HTTP 404 Not Found
1. Overview OHS(Oracle HTTP Server) 에서 한글 파일명을 호출 시, HTTP 404 Not Found Error가 발생한다. FS(File System) 에는 한글 파일명이 올바르게 존재하고 있다. 이러한 경우 어떻게 문제를 해결해야 하는지 살펴본다. 2. Descriptions 2.1 Problem and Solution FS 내에 다음과 같이 한글로 된 파일명이 존재한다. 1 2 $ ls -al ./config/fmwconfig/components/OHS/instances/worker1/htdocs -rw-rw-r-- 1 weblogic weblogic 0 4월... Read More
-
[WebLogic/JDBC] JDBC Driver Certifications
1. Overview Oracle JDBC Driver 의 Certifications 문서 확인 방법에 대한 설명 2. Descriptions Frequently Asked Questions에 JDBC Driver와 JDK 그리고 Oracle DB 버전간의 상호 호환성을 위한 페이지가 있다. Which version of JDBC drivers are supported ? 지원되는 JDBC 버전들에 대한 소개. What is the JDBC and RDBMS interoperability matrix or the certification matrix? JDBC driver와 Oracle DB 버... Read More
-
[ODI/Studio] Hangs On Connecting WORKREP with ODI Studio
1. Overview ODI 12cR2 Studio 에서 WORKREP (작업저장소 Repository) 접근 시 Hang 사례 2. Descriptions ODI Studio 에서 WORKREP 를 접근 시, 다음 화면에서 Hang 걸린다. Stack trace는 socketRead0 에 걸려 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 "ProgressBarThread" #133 prio=5 os_prio=0 tid=0x000000002b510800 nid=0x3677c runnable [0x0000000022c6c000] java.lang.Thread.St... Read More
-
[ODI] All In One Script For 12cR2
1. Overview How-to-install-ODI-12cR2 에서 작성한 내용을 토대로, All In One Script를 작성한다. 2. Descriptions 2.1 DB Scripts 2.1.1 Define Envs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ## OS Env ## unset $(env | grep ORACLE | awk -F= '{print $1}') BASEDIR=/sw/downloads OS_USERNAME=$(id --user --name) OS_GROUPNAME=$(id --group --name) OS_HOSTNAME=w... Read More
-
[WebLogic] JIT Exclude
1. Overview Just-In-Time (JIT) 의 Method Exclude 방법 2. Descriptions 결론을 언급하면, Advanced JIT Compiler Options의 설명대로 -XX:CompileCommand=exclude,java/lang/String.indexOf 와 같이 설정하여 java/lang/String Class의 indexOf method를 JIT에서 제외할 수 있다. 특정 장애 사례에서, 어느 Thread가 다음과 같은 복잡하지 않은 Stack Trace를 갖는데, 1 2 3 4 5 6 7 8 9 10 11 12 J 33516 java.net.Inet4Ad... Read More
-
[ODI] How to install ODI 12cR2?
1. Overview Oracle Data Integrator 12cR2 (12.2.1.4.0) 의 설치를 위해 공식 메뉴얼과 해외 블로그를 토대로 정리한다. ODI 와 Oracle DB 를 설치하고, WLS Domain 구성하여 ODI Studio 에서 생성한 Agent와의 연결까지 진행한다. 2. Descriptions 2.1 Roadmap for Verifying Your System Environment 설치에 앞서 Certification 확인 및 OS 에 필요한 정보들을 Roadmap for Verifying Your System Environment 에서 전체적으로 확인한다. Abou... Read More
-
[Database/Oracle] Oracle 12c 설치
1. Overview Oracle DB가 필요하게 되어, 12c 설치를 하며 작성을 한다. 정확도가 떨어지는 가이드의 문서가 될 수 있겠다. Install-Oracle-19c 게시물을 참고하여 작성 2. 문서 작성 기준이 되는 테스트 환경 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Oracle Linux Server release 8.8 NAME="Oracle Linux Server" VERSION="8.8" ID="ol" ID_LIKE="fedora" VARIANT="Server" VARIANT_ID="server" VERSION_ID="8.8... Read More
-
[WebTier/OHS] How to capture SSL Hello Messages
1. Overview Oracle HTTP Server 12cR2 (12.2.1.4) 환경에서 Client와 Server의 SSL Handshake 과정 중에 Client/Server 의 Hello Messages 를 Capture 해본다. 2. Descriptions SSL Handshake 과정 중에 Hello Messages 를 Capture 하여, 어떤 CipherSuites, 어떤 SSL Protocol version을 합의되었는지를 확인 해볼 수 있다. Capture 된 데이터를 통해, Client와 Server간의 SSL Handshake가 실패하는 원인으로 서로 지원하는 메서드가 다를 경... Read More
-
[WebLogic] WLDF uses cpu resources highly
1. Overview WLDF(WebLogic Server Diagnostic Framework)가 cpu resources를 많이 사용하는 이슈 2. Descriptions CPU resources 사용률이 높을 때 Thread dump 분석을 하면 아래와 같은 Thread가 문제점으로 확인된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 "Thread-21" #60 prio=5 os_prio=0 tid=0x00007f7c500c3000 nid=0x875c9 runna... Read More
-
[WebLogic] What Is .cache.ser
1. Overview App 배포 시 META-INF 내부에 생성되는 .cache.ser 파일 2. Descriptions App 배포 시 working-dir을 별도로 설정되어 있지 않다면, 다음과 같은 .cache.ser 파일이 생성된다. ${DOMAIN_HOME}/servers/M1/tmp/_WL_user/testApp/59ezjo/META-INF/.WL_internal/cache/testApp/.classinfos/.cache.ser ${APP-ROOT}/META-INF/.WL_internal/cache/testApp/.classinfos/.cache.ser .cache.ser 파일은... Read More
-
[WebLogic] ClassNotFoundException com.bea.xml.stream.MXParserFactory
1. Overview Admin Console 을 통해서 반영 작업을 진행할 때, Caused By: java.lang.ClassNotFoundException: com/bea/xml/stream/MXParserFactory 발생하는 에러에 대해서 살펴본다. 2. Descriptions 문제가 재현되는 시스템에서는, Admin Console을 통해서 반영 작업을 적용하려고 시도할 때 마다, 다음과 같은 Exception이 기록된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ... Read More
-
[WebTier/OHS] Oracle HTTP Server 14c Release Information
1. Overview Oracle HTTP Server 14c Release Information 2. Descriptions Oracle Lifetime Support Policy for Oracle Fusion Middleware Guide 의 Page 6 (Oracle Fusion Middleware Releases – 12c) 에 따르면 Fusion Middleware 12c (12.2.x) 는 다음과 같다. GA Date : Oct 2015 - Apr 2016 Premier : Dec 2026 Extended : Dec 2027 2026년 12월에 Premier가 종료된다. ... Read More
-
[Linux] tcpdump basic usage
1. Overview tcpdump의 사용법은 Google 에 매우 많다. 여기서는 더 간략한 내용만 포스팅한다. 2. Descriptions sudo tcpdump -i any -vvv -nn -w /tmp/tcpdump.bin port 443 명령으로 System에 있는 여러 interface(ifconfig) 에서 port 443 을 추적하여 file에 binary 로 기록한다. sudo tcpdump -r /tmp/tcpdump.bin 명령으로 tcpdump.bin 바이너리 기록된 데이터를 ASCII 로 변환하여 사람이 읽을 수 있다. 어떻게 이걸 분석하는지에 대한 내용은 -vvv 옵션... Read More
-
[WebLogic] Annotation Scanning
1. Overview WLS 11g 부터 도입된 Admin Server에 의한 배포된 App의 Annotation Scanning 기능. 2. Descriptions 수 많은 Files/Dirs 를 갖는 App을 AdminServer가 EJB/RAR 구성 요소가 있는지 Scan 한다. File 하나하나는 매우 빠른 속도로 Scan 을 완료하지만, Files/Dirs 수가 매우 많거나, NAS로 연결된 경우 Files 목록 gathering 에 지연이 발생하여 Scan 완료가 늦어진다. Scan 기능은 쓸 수 없고, 다음의 옵션들로 Debugging 할 수 있다. (Admin Server에 적용) 1 2 ... Read More
-
[WebLogic/Datasource] BEA-000627 And No resources currently available in pool
1. Overview BEA-000627 Reached maximum capacity of pool “{0}”, making “{2}” new resource instances instead of “{1}” 메시지와 No resources currently available in pool 메시지간의 차이점을 알아본다. 2. Descriptions BEA-000627 메시지와 No resources currently available in pool 은 기본적으로, Datasource connection pool 에 available connection이 부족한 상황에서 발생할 수 있다. 그러나 항상, 부족한 ... Read More
-
[WebLogic/JDBC] Why Doest It Show Different JDBC Driver Version?
1. Overview JDBC Driver version을 확인하기 위해, ojdbc 파일을 압축해제 하여 직접 확인하거나, -getversion 명령어 등으로 확인할 수 있다. 이 Driver version을 확인하는데, 상황에 따라 다른 version이 표시되면 왜 그런지 추적해보자. 2. Descriptions 2.1 일반적인 Driver version 확인 방법 일반적으로 다음의 명령어를 통해 표시된다. 1 2 3 java -jar ojdbc6.jar 또는 java -jar ojdbc6.jar -getversion 결과는 아래와 같다. 1 2 $ /sw/jdk/jdk1.8.0_381/bin... Read More
-
[Programming/Batch] VPN Command Line Interface
1. Overview 내 근무처는 Cisco AnyConnect Secure Mobility Client (version 4.10.05111) 로 VPN을 활성화해야 업무를 볼 수 있다. 매번, PC boot 후 GUI Tool로 활성화 하는 것이 불편하여 vpncli.exe CLI 로 활성화 하는 것을 정리한다. 2. Description C:\Program Files (x86)\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe 를 제어할 수 있기 때문에, 다음과 같은 batch 를 작성했다. Relogin.cmd 는 작업 스케쥴러에 등록하여, ... Read More
-
[WebLogic] How To Load Balancing Without Proxy?
1. Overview WebLogic 앞단에 Proxy Plugin이나 Load Balancer 없이 어떻게 Load Balancing 을 할 수 있는가? 2. Descriptions WL Proxy Plugin을 사용하는 Web server에서는 기본적으로 다음의 목적을 달성 할 수 있다. 여러 Weblogic Instances를 하나의 Pool로 만들고, 항상 가용 가능한 목록만 제공하므로 사용자는 Weblogic의 System Down을 알 수 없는 투명성 제공 DynamicServerList 기능을 쓰지 않더라도 Plugin은 문제가 있는 Instance를 MaxSkipT... Read More
-
[Programming/VBA/Outlook] How to play sound with VBA in Outlook?
1. Overview Outlook에서 중요한 이메일을 받으면, 알림이 울리도록 설정할 수 있지만, 반복적으로 사용자가 컴퓨터 앞에 도착할 때까지 울리지 않는다. 꼭 수신받아야 하는 이메일이 왔을 경우를 위하여 반복적으로 사운드 파일을 재생하도록 한다. 2. Description 2.1 Class Module VBA 클래스 모듈은 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 Private WithEvents objInspectors As Outlook.Inspectors Private WithEvents objMailItem As Outlook.MailItem Private Sub... Read More
-
[SSL] SSL Handshake
1. Overview SSL/TSL Handshake에 대하여 간단히 살펴본다, 이미 더 자세하게 설명된 자료들이 구글링 되지만 여기서는 오로지 비대칭키, 대칭키가 왜 같이 사용되는지, Handshake 안에서 일어나는 순서적인 개념을 되짚는다. 2. What Is Questions? 일반적으로 비대칭키의 일부분만 요약하면, 누출되면 안되는 개인키와 공개되어도 되는 공개키의 조합으로 만들어지는 암호이며, 상대방이 나의 공개키로 보낼 Data를 암호화하여 보내면 나의 개인키로 복호화할 수 있다는 이상적인 방법이다. 장단점은, CPU Resource가 많이 필요하다는 것이며, 개인키가 누출되면 매우 위험하다... Read More
-
[WebLogic] How To Use Connection Filter
1. Overview 과거에 Security-Filter 를 Post 한 바 있다. 많이들 활용하는 기능은 아닌데 반해, 낮은 이해도로 접근 할시에 많은 위험을 초래할 수 있는 옵션이기에 다시 한 번, 자세하게 소개한다. 2. Descriptions 2.1 Syntax 기본적인 Syntax는 targetAddress destAddress destPort Action Protocols 로 구성되어 있다. 외부에서 인입되는 요청의 IP가 targetAddress 이다. 왜, targetAddress 이냐면, Connection Filter를 적용시킬 target 이기 때문이다. 그리고, target... Read More
-
[WebTier/OHS] How To Disable Weak SSLCipherSuite
1. Overview OHS 12.2.1.4 SSLCipherSuite 취약점 제거 방법 2. Descriptions nmap으로 OHS 12.2.1.4 SSLCipherSuite 취약점을 검진하면 다음과 같이 조사된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 $ nmap -p 10443 --script ssl-enum-ciphers wls.local PORT STATE SERVICE 10443/tcp open unknown | ssl-enum-ciphers: | TLSv1.2: | ciphers: | ... Read More
-
[WebTier/OHS] mod_ossl 과 openssl
1. Overview OHS가 설치된 시스템의 openSSL 을 업그레이드 해도 괜찮은가? mod_ossl 모듈이 영향이 생기는게 아닌가? 2. Descriptions Oracle에서 개발한 mod_ossl Module은 기능적으로 Apache의 mod_ssl Module과 유사하다. 다만, mod_ossl Module은 RSA security technology를 기반으로 하는 Oracle의 Secure Socket Layer를 사용하고, mod_ssl Module은 OpenSSL 에서 제공하는 암호화 Engine을 사용한다. 그래서, mod_ossl Module은 OpenSSL 을 사용하거나 관... Read More
-
[WebTier/Apache] MaxConnectionsPerChild Monitoring
1. Overview Apache MaxConnectionsPerChild 가 정상적으로 동작하는지 살펴본다. Debug Log를 통해서도 살펴볼 수 있는데, 이 방법은 나중에 작성하고 여기서는 server-status Page를 통해 확인 해본다. 2. Descriptions httpd.conf는 다음과 같이 구성한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <Location /server-status> SetHandler server-status </Location> ExtendedStatus On ... <I... Read More
-
[WebTier/Apache] Error Redirect
1. Overview ErrorDocument 로 접수되는 Http Status Code를 Redirection 할 수 있다. 2. Descriptions 1 2 3 4 5 6 ErrorDocument 404 /error/404.html ErrorDocument 500 /error/500.html RewriteEngine on RewriteCond %{REQUEST_URI} /error/404.html RewriteRule ^/.* - [R=500] 사용자의 요청이 HTTP 400 를 유발하는 경우, /error/404.html 을 호출하게 된다. RewirteRule 에 의하여 HTTP 500 으... Read More
-
[WebTier/Nginx] Install Nginx
1. Overview NGINX 기본 설치 및 튜닝을 진행한다. 설치 템플릿 구조나 튜닝에 대한 부분은 전체적으로 내가 Apache 에 익숙하므로 은연히 Apache 템플릿에 맞추어질 수 있다. 2. 설치 2.1 다운로드 여기 에서 Mainline/Stable Version을 받자. 작성일 기준 nginx-1.21.6 Mainline Version nginx-1.21.6 으로 진행한다. 2.2 설치 설치 스크립트화를 위해 만들어두었다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... Read More
-
[WebTier/Apache] DeflateFilterNote
1. Overview mod_deflate.so 모듈로 특정 확장자를 압축 하고, 해당 정보를 DeflateFilterNote 으로 AccessLog에 Logging 설정 할 수 있다. 2. Descriptions LoadModule filter_module "${PRODUCT_HOME}/modules/mod_filter.so" LoadModule deflate_module "${PRODUCT_HOME}/modules/mod_deflate.so" <IfModule deflate_module> DeflateFilterNote Input instream DeflateFilterNote O... Read More
-
[WebLogic] Keep Alive
1. Overview WebLogic 12cR2 환경에서 Keep Alive 가 어떻게 동작하는지 살펴본다. 2. Descriptions 2023-06-29 기준으로 아래의 Java program으로 HTTP Urlconnection을 통해 hello.jsp 호출 그리고 1분 Sleep 이후 world.jsp 호출을 하도록 했는데, Managed Server가 기본 30 초 이상의 KeepAlive Timeout이 설정되어 있음에도 대략 10초 안에 ESTABLISHED가 TIME_WAIT으로 변경된다. HttpUrlConnection 에서 채널이 사라지는 듯한 느낌이다. 크롬 브라우저를 통해 ... Read More
-
[WebTier/Apache] KeepAlive
1. Overview Client 의 요청이 Backend WAS Server에 도달하는 과정에서 KeepAlive가 HTTP Connection 의 흐름에 어떤 영향을 주는지 살펴본다. 2. Descriptions Chrome Browser(Client) 로 요청을 받는 OHS WEB과 WEB내의 WLPluign, 그리고 Backend Weblogic Server까지 흐름을 netstat 명령과 Plugin debug log로 살펴본다. 2.1 Port간의 ESTABLISHED 요청이 인입되면, 각 Perspective 별로 어떻게 Port가 ESTABLISHED 하는지 간단히 살펴본다. 2... Read More
-
[Coherence] Coherence 14c Clustering Join Process
1. Overview Coherence 14c 기동 될 때, Clustering 에 Join 되는 과정을 Log Level 에서 살펴본다. Log Message의 불필요할 수 있다고 판단되는 부분은 ... 으로 skip 한다. Log Message에서 Date/Time Prefix 또한 불필요한 부분은, 임의 삭제한다. 2. Environments OS, Oracle Linux Server release 8.7 JVM, java version “1.8.0_351” 그리고 다음의 Arguments로 구성된 여러 Instances 를 갖고 있다. 1 2 3 4 -Xms512m -Xmx512m -D... Read More
-
[Java/JOL] Java Layout Object
1. Overview JOL(Java Layout Object) Library 사용법 2. Description Java 객체의 실제 크기를 Inspect 하기 위해서는 Instrumentation 을 활용할 수 있으나, 이는 Shallow size만 알아낼 수 있다. 실제 Size를 Heap dump보다 정확하게 추적할 수 있다고 소개하는 JOL 을 사용해보자. 3. Use 최신버전을 다운로드 하여 WEB-INF/lib 에 위치시킨다. 3.1 My App 아래와 같은 Business Java code 가 있다고 가정한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... Read More
-
[Java/Instrumentation] Instrumentation.getObjectSize()
1. Overview Instrumentation 의 getObjectSize를 통해 Object 의 Size를 조사하는 방법 Java bytecode에 개입할 수 있는 Instrumentation Class의 getObjectSize method를 통해서 Object의 Size를 조사하는 방법을 소개한다. 2. ObjectSizeAgent getObjectSize 를 수행하는 ObjectSizeAgent App은 javaagent 로 심어져야 한다. App은 다음과 같은 구조로 개발된다. 1 2 3 4 5 6 7 $ tree /sw/app/ObjectSizeAgent/ /sw/app/ObjectSi... Read More
-
[Coherence/App] Coherence Session Test Application
1. 개요 Coherence 14.1 기준에서 Test 용 Application 2. 어플리케이션 2.1 구조 1 2 3 4 5 6 7 8 9 10 11 $ tree /sw/app/cohSessionApp/ /sw/app/cohSessionApp/ ├── META-INF ├── session.jsp └── WEB-INF ├── classes │ └── session-cache-config.xml ├── weblogic.xml └── web.xml 3 directories, 4 files 2.2 Servlet 1 2 3 4 5 6 7 8 9 10 11 12 1... Read More
-
[ETC/Outlook/VBA] How To Automatically Send Mail
1. Overview Outlook 에 내장된 VBA 를 이용하여, 자동으로 이메일을 보내는 Macro를 개발해본다. 2. Descriptions Win Object를 잘 다루지 못하므로, Googling 을 통해서 많은 도움을 얻고자 했는데.. Chat GPT를 통해서 뚝딱 완성이 되어 버렸다. 질문은 여러개가 있었지만, 주요한 것은 두개정도다. 1 2 - how to make macro that automatically send email per 1 minutes and that is background like user32 - can you change TimerLoop to other metho... Read More
-
[WebTier/OHS] All In One Script For 11gR1
1. Overview Oracle HTTP Server 11gR1 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. Overview All-In-One-Script-For-11gR1.sh 실행으로 다음 환경을 구성하도록 한다. baseInstance Worker 2ea 3. Script 3.1 Engine 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 5... Read More
-
[WebTier/OSSL] SSL VirtualHost With SNI
1. Overview Oracle HTTP Server 12.2.1.4 에서 SNI 가 지원되는지, SSL VirtualHost 사용 시 유의할 점을 살펴보자. 2. SNI SNI(Server Name Indication). 사용자의 HTTP Request 내에는 Host Header가 있으며, 여기에 사용자가 도달하려는 ServerName이 있다. 이것을 가지고, Web server는 Any Virtual Host section에 사용자를 할당할 수 있다. HTTPS Request 는 암호화된 Packet을 추출해야, Host Header를 볼 수 있으나, Packet을 추출한다는 건, SSL Ha... Read More
-
[WebTier/OHS] How to Configure SSL ProxyPass
1. Overview Oracle HTTP Server 12cR2 에서 ProxyPass SSL 구현 방법 2. Server SSL 설정 Server가 되는 SSL Site에 Wallet 인증서를 구현한다. Wallet 생성 1 2 3 4 $ orapki wallet create -wallet <Wallet dir> -pwd <Wallet pwd> -auto_login $ orapki wallet add -wallet ${CERT} -pwd <Wallet pwd> \ -dn "CN=`hostname`, OU=Example Department, O=Example C... Read More
-
[WebLogic/WLST] WLST Tuning
1. 개요 weblogic.WLST Class 의 동작 속도의 지연을 줄여보자. 2. 설명 weblogic.WLST Class 를 사용할 때마다, 이 답답한 동작 속도를 개선해보자. 개선해보기 위해서 여러 자료들을 찾아보았다. JVM Compiler 옵션 조정을 통해서 효과가 있을 것으로 보였다. 참고한 문서로는, 크게 두가지가 있다. 하나는, Tiered Compilation in JVM 에서 JVM Compiler 동작 방식에 대해서 이해를 도왔다. 두번째로는, 4 Compilation Optimization 에서 JVM Compiler 개념이며, 여기서 For example, the cl... Read More
-
[WebLogic] Uploading Files with Java Servlet Tech
1. Overview J2EE 6 의 Servlet 3.0 부터 추가된 Servlet Fileupload 를 사용해본다. WebLogic 에서 대용량 파일 업로드시에 어떤 처리 과정을 갖는지 살펴본다. 2. File upload Implements Chapter 16 Uploading Files with Java Servlet Technology 에 따르면, Servlet 3.0 이전에는 File uplaod 시에 외부 라이브러리 등 복잡한 구성 요소를 가져야 했지만 Servlet 자체에서 지원하게 되어, 그럴 필요가 없어졌다는 의미이다. 해당 기능의 App 구현은 FileUpload 에서 다루... Read More
-
[Servlet/JSP] File upload App
1. Overview Commons FileUpload 라이브러리를 이용한 파일 업로드 예제 어플리케이션 Uploading-File-With-Servlet 를 작성하며 알게 되었는데, Servlet 3.0 부터 외부 라이브러리 없이 request.getParts() 로 가능하다. 2. Description 배포할 /sw/app/fileUpload 어플리케이션 구조는 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 /sw/app/fileUpload/ ├── META-INF └── WEB-INF ├── classes │ └── example │ └── ... Read More
-
[WebLogic/WLST] OPatch lsinventory Printed Issue
1. 개요 WLS Log에 opatch lsinventory log가 기록되어, 기동 시점이나, WLST 실행 시 지연이 발생한다는 이슈. 2. 설명 WLS PSU April 2022 과 WLS PSU July 2022 적용 시에 java weblogic.WLST 호출이 되면 opatch lsinventory Log가 기록되어, 지연 발생한다는 보고가 있었다. WLS 기동 시점 (<BEA-141107> <Version: WebLogic Server 14.1.1.0.0 >) 뒤에 opatch lsinventory Log가 실행/기록되어 기동 지연이 발생하고, java weblog... Read More
-
[Scripts/Batch] How to make Bandizip Batch
1. Overview Oracle GCS 업무를 수행하면서, 고객이 SR에 업로드한 파일을 내려 받아보면 <Filename>_SR-Number.<zip> 과 같은 형식으로 되어 있다. Bandizip 으로 압축을 일괄 해제하면, 각기 디렉토리에 분리되어 풀리는 등, 하나의 디렉토리에 모아서 보기가 여간 쉬운 일이 아니다. Bandizip 에서 제공하는 CLI 와 Window batch script를 이용하여 편리하게 만들어 본다. 2. 준비물 2.1 Batch Script 다음의 Script를 MySR.bat 으로 생성한다. EXE, OUT variable 은 환경에 맞게 설정... Read More
-
[Coherence/Web] How to use Coherence Web 14c
1. Overview How-to-install-Coherence-Web-14c 에서 설치를 완료 했다. 여기서는 실제 환경에서 쓰일 수 있게 다음의 항목들을 확인한다. Death Detection F/W Session Reaper Thread Tuning 2. Death Detection Configuring Death Detection 을 하여, ClusterMember 이탈 여부를 확인한다. 2.1 TCP-RING Member들은 하나의 Ring으로 연결된다. 25초 동안 HeartBeat 응답을 주지 않은 Member를 5회 실시하여, Member를 제거한다. java.... Read More
-
[Coherence/Web] How to install Coherence Web 14c
1. Overview Coherence 14c 테스트 환경을 위해 기본 설치 환경을 집약한다. 2. Descriptions 다음 환경을 구성하도록 한다. cluster-base_domain Coherence Server, TCP 9000 ~ 9100 Managed Coherence Server, TCP 9000 아래 문서에서는 Coherence-Server를 Cache-Server, Managed Coherence Server(WLS+Coherence Module)를 Cache-Client 라고 표현하기도 했다. WLS 또한 자기 자신이 Cac... Read More
-
[WebLogic] security-constraint in web.xml
1. 개요 web.xml J2EE Spec에서 security-constraint 기술 사용법에 대해서 간략하게 설명한다. 2. HTTP-METHOD 제한 1 2 3 4 5 6 7 8 9 10 11 <web-app> <security-constraint> <web-resource-collection> <web-resource-name>Secured</web-resource-name> <url-pattern>/secured/*</url-pattern> <http-method&... Read More
-
[WebTier/OHSWLPlugin] WebLogic Proxy Plugin 12cR2의 Failover 동작
1. Overview WebLogic Proxy Plugin 12cR2에서 Failover 를 처리하는 방법에 대해서 다양하게 살펴본다. 2. Descriptions 사용자의 GET/POST 요청의 처리 도중 Failed 시에 다른 Available Instance로 Failover를 위해 필요한 옵션은 FileCaching Idempotent WLRetryOnTimeout WLRetryAfterDroppedConnection WLServerInitiatedFailover 3. GET Method GET Method 방식에서 Failover시에는, 다음의 옵션으로 구성되어 있... Read More
-
[WebLogic] Force and Graceful shutdown
1. 개요 WebLogic 14c 기준으로 Force 및 Graceful Shutdown 에 대해서 살펴본다. WebLogic 14c 기준으로 Force shutdown, Graceful Shutdown 에 대해서 살펴본다. 상세한 내용을 모두 다 옮기지는 않고, 주요내용만 살펴본다. 2. Force shutdown Diagram of the Server Life Cycle 에서 전체적인 State flow를 확인할 수 있다. Force Shutdown의 Flow를 확인할 수 있다. RUNNING > FORCE_SUSPENDING > ADMIN > STANDBY > S... Read More
-
[WebLogic] OPatch
1. 개요 OPatch 기본 사용 명령어 정리 2. OPatch 2.1 OPatch Upgrade 현재 Version 확인 1 2 3 4 5 ORACLE_HOME=/sw/weblogic/14c ${ORACLE_HOME}/OPatch/opatch version OPatch Version: 13.9.4.2.3 OPatch succeeded. 작성일 기준 최신 Patch(13.9.4.2.11) File 준비 1 2 $ ls ${ORACLE_HOME}/OPatch/patches 6880880 p28186730_1394211_Generic.zip 반드시 6880880/README.txt 준수하여 작... Read More
-
[WebLogic/JDBC] Non supported character set
1. Overview Non supported character set (add orai18n.jar in your classpath) 에러가 발생할 시 대처 가이드 2. Descriptions Globalization Support 문서를 보면, 기본 Char set 외에 다른 세계언어를 사용하기 위해서 orai18n 파일이 필요하다고 설명 한다. 문서의 “Compressing orai18n.jar” 가이드를 확인하여 원하는 Char set만 추출하여 사용할 수 있다. orai18n.jar 를 그대로 사용하기에는 무겁기 때문에 그렇다. OJDBC Download 에서 ‘Companion Jars... Read More
-
[Linux/Sed] sed and regex
1. Overview sed 기본적인 사용 방법과 regex를 활용한 몇몇 유용한 패턴을 정리한다 2. 기본 사용법 다음과 같은 Document가 있다고 가정하고, 기본적인 사용방법을 예시로 든다. 변경된 결과만 언급하기로 한다. 1 2 3 4 5 6 7 8 9 10 $ cat /tmp/sed/before.txt Hello world! My name is ${NAME} This time is 'How to use sed' Through practice, You can enhance editing text document! - Ref. My blog addr is //dhkim900331.github... Read More
-
[WebTier/OHS] All In One Script For 12cR2
1. Overview Oracle HTTP Server 12cR2 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. Descriptions All-In-One-Script-For-12cR2.sh 실행으로 다음 환경을 구성하도록 한다. base_domain NodeManager (SecureListner=false, TCP 5556) Worker 2ea 3. Script 3.1 Engine 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 ... Read More
-
[WebTier/Apache] Mutex And Semaphore
1. Overview Apache, OHS 의 SSLSessionCache 에서 사용되는 Mutex와 Semaphore 에 대해서 간략하게 알아본다. 2. Descriptions 고객의 ssl.conf 설정값으로 다음의 기본값이 지정되었다. 1 2 3 4 5 6 7 8 9 # Inter-Process Session Cache: # Configure the SSL Session Cache: First the mechanism # to use, second the expiring timeout (in seconds) and third # the mutex to be used. SSLSe... Read More
-
[WebTier/Apache] Content Security Policy Header
1. Overview Content Security Policy Header를 테스트한다. default-src 개념만 알면, 나머지 XXX-src 는 동일하므로 default/script-src 만 테스트한다. 2. Descriptions 2.1 default-src 아래와 같이 설정 시에, 모든 동작(img, css, media, script, connect)이 수행되지 않는다. 1 2 3 <IfModule mod_headers.c> Header always set Content-Security-Policy: "default-src 'none';" </IfModule> 예... Read More
-
[WebLogic] All In One Script For 14c
1. Overview WebLogic 14c 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. Descriptions All-In-One-Script-For-14c.sh 실행으로 다음 환경을 구성하도록 한다. AdminServer (TCP 8001 , console account : weblogic, weblogic1) Managed M1 (TCP 8002) Managed M2 (TCP 8003) myCluster (M1, M2) /sw/app/{testApp, PostDataTest} deployed on myCluster 3. Script 3.1 E... Read More
-
[WebLogic] All In One Script For 12cR2
1. Overview WebLogic 12cR2 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. Descriptions All-In-One-Script-For-12cR2.sh 실행으로 다음 환경을 구성하도록 한다. AdminServer (TCP 8001 , console account : weblogic, weblogic1) Managed M1 (TCP 8002) Managed M2 (TCP 8003) myCluster (M1, M2) /sw/app/{testApp, PostDataTest} deployed on myCluster 3. Script 3... Read More
-
[WebLogic] All In One Script For 12cR1
1. Overview WebLogic 12cR1 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. Descriptions All-In-One-Script-For-12cR1.sh 실행으로 다음 환경을 구성하도록 한다. AdminServer (TCP 8001 , console account : weblogic, weblogic1) Managed M1 (TCP 8002) Managed M2 (TCP 8003) myCluster (M1, M2) /sw/app/{testApp, PostDataTest} deployed on myCluster 3. Script 3.1... Read More
-
[WebLogic] All In One Script For 11gR1
1. 개요 WebLogic 11gR1 테스트 환경을 자동 재구축을 위해 모든 기본 설치 환경을 집약한다. 2. 설명 All-In-One-Script-For-11gR1.sh 실행으로 다음 환경을 구성하도록 한다. AdminServer (TCP 8001 , console account : weblogic, weblogic1) Managed M1 (TCP 8002) Managed M2 (TCP 8003) myCluster (M1, M2) /sw/app/{testApp, PostDataTest} deployed on myCluster 3. Script 3.1 Engine 1 2 3... Read More
-
[Database/Oracle] Oracle 19c 설치
1. Overview Oracle DB가 필요하게 되어, 19c 설치를 하며 작성을 한다. 정확도가 떨어지는 가이드의 문서가 될 수 있겠다. 다음의 게시물을 기초로 하였다. 2. 문서 작성 기준이 되는 테스트 환경 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 $ cat /etc/*release Oracle Linux Server release 8.7 NAME="Oracle Linux Server" VERSION="8.7" ID="ol" ID_LIKE="fedora" VARIANT="Server" VARIANT_ID="server" VERSIO... Read More
-
[Coherence/Web] Performance Test In Coherence Web 3.X
1. Overview How-To-Thread-Tuning-Coherence-Web-3 에서 몇가지 간단한 부하테스트와 함께, 튜닝에 효과가 있는지 살펴보았는데, 테스트 방식이 조잡하여 이번에 좀 더 정규화 과정으로 스크립트를 사용해본다. 2. Descriptions 주기적 Session을 Scan하여 Timeout 된 객체는 invalidate 하여 IsValid=False로 변경하는 Reaper Thread에 대해서, 오랜시간 부하 테스트를 진행하여 성능 개선이 이뤄지는지 살펴본다. 3. 테스트 환경 OS : Oracle Linux Server release 8.7 JDK : 1.7.0... Read More
-
[Coherence/Web] How to Thread Tuning Coherence Web 3.X
1. Overview 해당 버전에서, Reaper Thread 성능 개선을 위해 Thread Tuning 을 살펴본다. 2. Descriptions 주기적 Session을 Scan하여 Timeout 된 객체는 invalidate 하여 IsValid=False로 변경하는 Reaper Thread에 대해서, 심플한 부하 테스트를 진행하여 성능 개선이 이뤄지는지 살펴본다. 3. 테스트 환경 OS : Oracle Linux Server release 8.7 JDK : 1.7.0_80 WebLogic 11g Coherence 3.7.1.22 * WEB SPI 3.1 Test #1 ... Read More
-
[Coherence/Web] How to Monitor Coherence Web 3.X
1. Overview Coherence Web 3.X 사용 시, 여러 Monitoring 옵션과 결과물을 확인한다. 2. Debug Log 2.1 Using Coherence WLS Instance JVM Options으로 다음과 같이 설정 시, Instance에서 동작하는 Coherence 의 Debug Log가 최대값(9)로 기록된다. https://docs.oracle.com/cd/E24290_01/coh.371/e22837/gs_debug.htm#COHDG5549 1 2 -Dtangosol.coherence.log.level=9 -Dtangosol.coherence.log=debug.l... Read More
-
[Coherence/Web] How to Install Coherence Web 3.X
1. Overview Coherence Web 3.X 설치를 다룬다. 이 버전은 WebLogic 11g 에 호환된다. 공식 가이드 2. Download (Install) Oracle Support의 Patches에서 Coherence를 다운로드 받는다. Patch 32973233: Coherence 3.7.1 Patch 22 (3.7.1.22) Full Distribution /sw/coherence/3.7.1.22와 같은 경로 안에 압축을 해제하여 구성한다. 3. Configurations 3.1 run.xml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... Read More
-
[WebLogic] How to Enable TLS-Server
1. 개요 WebLogic Server 14c 기준에서 Server 측에 TLS Protocol을 어떻게 다루는지 알아본다. 2. TLS 지원 정보 WebLogic Server 14c 표준 Security 지원 정보 에서 표준으로 지원하는 Security 항목을 확인할 수 있다. TLS 1.2 이상을 권장 TLS 1.2 미만 버전에 대해서는 JDK에 의해 Disabled 될 수 있다. SSL/TLS 프로토콜 버전 지정 에서 Protocol 인수를 살펴볼 수 있다. weblogic.security.SSL.protocolVersion : 활성화할 Protocol weblogic.s... Read More
-
[WebLogic] How to Enable TLS-Client
1. Overview WebLogic Server 14c 기준에서 Client 측에 TLS Protocol을 어떻게 다루는지 알아본다. How-To-Enable-TLS-Server 에서는 Server측 기준이었으나, How-To-Enable-TLS-Client 에서는 WLS가 Client가 되었을 경우를 설명한다. 2. Inbound TLS 다음 옵션으로 TLS를 받아들이는 Server측의 Protocol은 TLSv1.2 이상이 된다. 1 2 USER_MEM_ARGS="${USER_MEM_ARGS} -Djava.security.properties=${DOMAIN_HOME}/java.security" ... Read More
-
[WebTier/OHS] Proxy Plugin 12cR2
1. Overview WLS Proxy Plugin 12cR2 의 주요 옵션들에 대해서 살펴본다. OHS 제품에 적용될 수 있는 (Applies to: Oracle HTTP Server) 항목만 살펴본다. 또한, 자세한 동작의 알고리즘을 알아야 되는 옵션들 위주로 먼저 문서를 작성하므로 Index는 존재하지만 내용은 Empty 할 수 있다. 2. Connections Connect 관련 옵션들에 대해서 살펴본다. 해당 부분은, 워낙에 대중적으로 잘 알려져있고 공식 메뉴얼에서 명확하게 설명하므로 추후 필요시에 업데이트한다. 3. Debugging 3.1 DebugConfigInfo 참고, ... Read More
-
[WebTier/OHS] Oracle HTTP Server 12cR2 Configurations
1. Overview Oracle HTTP Server 12cR2 Configurations 2. Performance Performance에 직접적으로 연관된 설정을 살펴본다. 2.1 MPM ohs.plugins.nodemanager.properties 파일에서 변경한다. # mpm whether to use prefork or worker or event MPM # valid values: "prefork" and "worker" and "event" # default: "event" mpm = worker ... Read More
-
[WebTier/OHS] Oracle HTTP Server 12cR2 Installation
1. Overview Oracle HTTP Server 12cR2 Installation 2. 설치 전 확인사항 여기에서 전체적으로 확인할 사항이 나열되어 있다. 아래에서는 일반적으로 살펴보는 부분만 나열한다. 2.1 OS Requirements 여기에서 설치 대상 운영체제별로 요구사항을 준수한다. RHEL 8 Section에는 ksh 언급이 없으나, 문서상 누락이 된 것 같다. 필요하다! 2.1 Certification Matrix 여기에서 System Requirements and Supported Platforms for Oracle Fusion Middleware 12c (12... Read More
-
[Typora] 이미지 패스 수정하기
1. 개요 PostImageSorting에서는 Image 의 경로를 바로 잡아주었다. Typora로 image를 paste 하고 나면 내가 원하는 Image 경로가 아니다. (냅둬도 상관은 없음) 이 게시물에서는, 문제가 없이 존재하는 Image 자체를 내가 원하는 디렉토리 구조로 옮겨 세팅해주는 스크립트다. 2. ImagePathSorter.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 4... Read More
-
[Typora] 불필요한 이미지 리소스 제거
1. Overview Post (md) 파일에서 link 되지 않아 사용되고 있지 않는 image 를 일괄 제거해본다. 2. ImageGC.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 #!/usr/bin/bash # 사용하지 않은 이미지 들을 추적하여 제거한다. BASEDIR=$(dirname "$0") . ${BASEDIR}/env.sh # post에 사용되었을 것으로 예상되는 이미지 파일 find $HOME/$GIT/assets/img $HOME/$GIT/assets/posts/images \ ... Read More
-
[Typora] 이미지 커스텀 업로드 기능 사용해보기
1. Overview 예전에 PostImageSorting 에서 Typora 이미지 업로드 기능을 알아보았다. 해당 방식은 나의 Local git directory 에 이미지를 삽입하는 방식이다. 혹, 다른 image cloud (like CDN) 서비스에 업로드하고 해당 이미지의 URL을 사용하고 싶을 때는 어떻게 해야 될까? 2. Custom Upload Image 2.1 Preferences 그럴때는 Custom Upload 방식을 취하면 된다. 해당 방식은 공식 메뉴얼 을 참고하면 되며, 트러블 슈팅 란 또한 참고하면 된다. 우선, 다음과 같이 Upload image 및 Cu... Read More
-
[Typora] 포스트 이미지 깔끔하게 정리
1. Overview Post (.md) 작성을 해오면서, 다양한 jekyll theme 도 적용해보고 이에 따라 디렉토리나 이미지들이 지저분하게 보관이 되어왔다. 이번 기회에, Post 파일에서 사용되지 않는 Garbage 이미지 파일을 찾아 삭제하고 해당 부분은 NotUsedImageCleaner 에서 다룬다. assets/img 아래에 저장되는 이미지들을 assets/posts/images 으로 이동시키고, 이동된 정보를 모든 Post를 수정해보도록 한다. 굳이 옮기지 않아도 되지만, 향후 Post 관련 디렉토리를 좀 더 체계적으로 관리하기 위함. 2. Script 2.1 Im... Read More
-
[Scripts/Shell] Log를 Compress 및 Backup
1. Overview Log를 Tar 압축하여 분리/삭제 해본다. 2. 전체 Script 전체 Script 부터 공개를 하면 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 #!/usr/bin/bash # 백업하려는 로그의 원본 위치 LOG_HOME=/sw/weblogic/14c/domains/base_domain/logs LOG_HOME_NOHUP=${LOG_HOME}/nohup LOG_HOME_GCLOG=${LOG_HOME}/gc # 압축해서 보관할 위치 BACK_LOG_HOME=/sw/we... Read More
-
[WebLogic/J2EE] How to configure Cluster Weight - EJB
1. Overview Sample EJB App을 배포하여, Cluster Weight 기능을 테스트한다. 여기서 소개하는 EJB App의 Java Source Code나 Deployment Descriptor XML File의 내용은 올바르지 않을 수 있다. 2. Requirements 다음의 환경에서 진행하였다. Red Hat Enterprise Linux release 8.7 Oracle WebLogic Server 14c Oracle JDK 1.8.0_351 2.1 WebLogic 다음의 3개 Instance를 구성하고, ... Read More
-
[WebTier/Apache] mod_proxy의 ProxyErrorOverride
1. Overview Apache에서 Back-end Server에서 return 받은 Error code를 다루어 보자. 2. Tomcat의 Error Page 여기서 말하는 Back-end Server로 Tomcat을 사용하고, Tomcat에서 발생하는 Error Code는 다음과 같이 자체 처리할 수 있다. 1 2 3 4 5 6 7 8 9 10 <web-app> <error-page> <error-code>404</error-code> <location>/error.jsp</location> </erro... Read More
-
[Linux/Putty] Port Forwarding
1. Overview 접속 하려는 Port가 방화벽 등의 문제로 접속을 할 수 없다면, putty.exe 또는 ssh command의 Port Forwarding 기능으로 해결할 수 있다. 2. putty.exe Target Server 에 TCP Port Listen 되어 있으나, 방화벽 등으로 직접 TCP Port 에 Access 할 수 없을 때, putty 의 Port Forwarding 기능을 사용하여 접속할 수 있다. TCP 8081 Listen 상태 확인 1 2 $ netstat -an | grep 8081 | grep LISTEN tcp 0 0 192.168.5... Read More
-
[Linux/Memory] Check the process memory
1. Overview 시스템 점검 중 가용가능한 메모리가 얼마 없어, 메모리-과점유 프로세스 점검 차 간단하게 짜보았다. 2. Descriptions 1 2 3 PID=$(jps -v | grep "Standalone" | awk '{print $1}') PID_SED=$(echo ${PID} | sed 's| |\||g') ps -eo start,user,pid,rss,vsize,pmem,pcpu --sort -rss | egrep "${PID_SED}" 당시 점검 대상 시스템은 WAS-Middleware 시스템이라, jps 명령으로 실행중인 java 프로세스의 PID 값을 따왔다. ... Read More
-
[JVM/GC] GC Log Options에 따른 Format
1. Overview GC Log 기록에 관여하는 여러 Options가 있다. Options 변경에 따른 GC Log Format을 확인하여, 우리가 고객에게 어떤 GC Log options를 적용해줄 지 준비하자. 2. 테스트 환경 CentOS Linux release 7.9.2009 openjdk version “1.8.0_322” Apache Tomcat/9.0.65 다음의 기본 GC 옵션이 항상 적용되어 있다. 1 2 3 JAVA_OPTS="$JAVA_OPTS -verbose:gc" ... Read More
-
[Linux/Log Rotation] Log Rotation
1. Overview Log 파일의 관리를 위해 Rotation 방법을 알아 보자. 2. Null Copy 유닉스 계열에서 별다른 Tools 없이 사용 가능한 방법이다. 과거에 어디선가 null copy 시에 프로세스가 해당 파일의 원본을 계속 물고 있어, 해당 프로세스를 재기동 하기 전까지 file size가 release 되지 않았던 기억이 있지만, 버그일 것이다. crontab 에 등록 하면 된다. 1 2 # (min:0~59) (hour:0~23) (day:0~31) (month:1~12) (day of the week:0/7-sunday ~ 6-saturday) 0 5 * * * /usr... Read More
-
[JBoss] Application Deployment
1. Overview Application Deployment 명령어를 학습한다. 압축된 Unexploded WAR 파일의 배포 및 관리 압축해제된 Exploded WAR 파일의 배포 및 관리 2. Deploy CLI 기본적으로 배포 시에는 다음의 Syntax를 유념해야한다. jboss-cli > deploy --help 명령을 통해 확인하면 되겟으며, 여기서는 필요한 요소만 확인한다. deploy \ --name=baseApp \ --runtime-name=baseApp.war \ --url=file://.../baseApp.war \ --unmanaged \ --force ... Read More
-
[WebTier/Apache] Http Proxy (mod_proxy+)
1. Overview Apache 에서 Forward, Reverse Proxy 사용 방법에 대해 알아보자. 2. Forward/Reverse Proxy 사용자의 요청을 적절한 목적지로 보내주기 위해서는 Apache와 같은 중간 전달자(Proxier)가 있어야 한다. Proixer 없는 단어인걸 지금 알았다, 구글 번역에서는 대리인으로 나오긴 하는데.. 어쨋든 문맥상.. 이해만.. Middleware 엔지니어가 아니라도, 이러한 개념은 어디서나 알고 사용해야 하는데, 사회 초년생 때에는 이 개념을 잡기가 너무 어려웠다. 지금도 Proxy 에 대해서 검색을 해보면, Forward(정방향)과... Read More
-
[Database/MySQL] Backup & Recovery (백업과 복구)
1. Overview 아주 심플하게, 바로 써먹을 수 있는 백업과 복구 방법을 알아보자. 2. Backup 부분 백업도 가능하며, 아래 명령줄은 root 계정으로 전체 DB를 ${FILENAME} 으로 백업한다. 1 2 $ FILENAME="full_backup.sql_$(date "+%Y_%m_%d_:_%H:%M:%S")" $ mysqldump -u root -p --all-databases > ${FILENAME} 3. Recovery 다음의 명령으로, 복구할 수 있다. 1 $ mysql -u root -p < ${FILENAME} 장애로 인하여 DB데이터를 잃어버린 경우 복... Read More
-
[Database/MySQL] MySQL 8.X 설치 (Source Compile)
1. Overview 고객사에 MySQL 설치가 필요하게 된 상황이 생겨서, rpm 설치 또는 source build 설치 등을 확인하고 있다. (정말 별의별 업무를 다하게 된다 ㅠㅠ) 여튼, rpm은 차후, 기록하고, 폐쇄망 타겟으로 source build 를 진행해본다. 2. 문서 작성 기준이 되는 테스트 환경 1core/8gb mem/CentOS Stream release 8 3. 사전 준비사항 3.1 설치 파일 3.1.1 Boost MySQL Build 하기 위해서 Boost 라는 C++ Library 집합이 필요하다. 작성일 기준 1.79.0 이 최신이나, MySQL 최신버전 8.0... Read More
-
[Servlet/JSP] Fail over Test를 위한 JSP
1. Overview 기본적으로 session clustering 환경 구성 후, Failover Test를 위해 사용하는 JSP 다른 포스트에서도 webapp.zip 등으로 첨부파일 업로드 한 것이 있으나, 좀 더 깔끔한 것으로 업데이트 2. Description 다음의 어플리케이션의 구조이며, 해당 소스는 infinispan에서 사용되어 distributable 태그를 갖는다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 $ tree /usr/app/testapp.war /usr/app/testapp.war ├── WEB-INF │ ├── classes │ │ └── exa... Read More
-
[JBoss] Cluster Protocol Type
1. Overview JBOSS EAP 7.X 의 Unicast Cluster 구성 방식 중에 Protocol Type에 대한 내용을 요약한다. 2. Protocol Type FRAG 또는 FRAG2 송신자는 큰 메시지를 쪼개어, 수신자에게 전달한다. 수신자는 작은 메시지를 조합하여, 원본 큰 메시지로 만든다. frag_size 보다 큰 메시지를 쪼갠다. TCP 송신자 정보, 연결 만료 시간, 버퍼 크기 등 소켓 채널과 관련 FORK Piggyback 이라는 방식의 통신 방법을 의미하는 것으로 보임. send/ack 와 같이 주고받는 통신 형식이 아니라, 수신자가 나중에 보낼... Read More
-
[JBoss] Jconsole을 이용하여 JMX 연결하기
1. Overview Windows 환경에서 jconsole을 이용하여 JBoss EAP 7.X 의 JMX 모니터링을 위해 연결 방법을 설명한다. X-Windows 환경의 Linux 에서도 가능하지만, Windows 에서 해보니 문법상 특이점이 많아 Windows 로 가이드한다. 2. Descriptions 우선 나는, JBoss EAP 7.X 버전을 기준으로 삼기 때문에, jboss-cli-client.jar 가 필요하여, 설치된 Engine 에서 가져왔다. Windows 에서 스크립팅을 자주 해보지 않아, 아래 스크립트를 짜고 실행할 때 정말 많은 시행착오를 ... Read More
-
[JBoss] Color Log Pattern
1. Overview JBOSS Log는 기본적으로, LogLevel 에 따른 Color Pattern 기능이 적용되어 있다. 해당 부분을 vi 에디터 등으로 보면, escape character 가 보여지는 현상이 있다. 어떤 내용인지 자세히 알아보고, 제거해보자. 2. Descriptions Log Pattern은 logging.properties와 standalone-ha.xml 에 속성 정의 되어 있다. 기본적으로 COLOR-PATTERN 을 사용하는 Log 파일은 tail , cat 으로 보면 왜 그러한지 문제가 없지만 vi 에디터 등으로 보면 다음과 같이 es... Read More
-
[Programming/Javascript] Gmail 을 이쁘게 복사하자
1. Overview 고객과 주고받은 이메일을, 사내 Confluence(wiki)에 자주 삽입하곤 하는데 gmail 을 Ctrl+C/V 로 옮기면 매우 안이쁘게 복사가 된다. 크롬 확장 기능을 이용해 좀 더 깔끔하게 복사 하도록 하는 애드온(확장 프로그램)을 만들어 보았다. 아직 완성도가 매우 떨어진다. 2. 확장 프로그램 설치 지원되는 기능 복사 -> 붙여넣기를 할 때, html code를 파싱하여 보낸사람/받는사람/시각/제목/본문을 얻는다. 얻는 결과를 자동으로 클립보드에 넣고 싶지만 모르겠다. 다운로드 PrettyGma... Read More
-
[WebTier/Apache] X-Forwarded-For
1. Overview 얼마 전 고객사에서 XFF Header 값이 Apache Access Log에 찍히지 않았다. 앞단 Load Balancer에도 정상적으로 설정이 완료되었다는 엔지니어 확인 결과에도 동작하지 않았다. 사무실로 돌아와 LB 환경을 만들 수 없어, Apache VM을 2대를 이용하여 LB -> WEB 환경을 모방하며 테스트 해보았다. 2. Request Flow Request가 들어올 경우, 어떠한 흐름으로 처리되는지를 이해하기 위한 그림이다. 순서대로, 사용자(Client) / LB (wellknown.com) / WEB (innerweb.com) 사용자가 ... Read More
-
[Putty] Putty Connect Host With CLI
1. Overview 포스트하기에도 매우 심플한 내용… 고객사 등등 여러 호스트에 접속을 시도할 때마다, Putty.exe 에 세션을 저장하는 등의 불편한 환경이라면 사용할만 하다. 2. Descriptions 1 2 putty.exe -ssh -P port user@host -pw pwd # putty.exe -ssh -P 22 dhkim@192.168.56.2 -pw dhkim 바로가기.exe 를 활용하거나, cmd 내에서 바로 명령만 입력하여도 자동 접속을 수행한다. Read More
-
[WebTier/OHS] Cross Domain (Access Control Allow Origin)
1. Overview CORS 설정 방법. 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 13 14 LoadModule headers_module modules/mod_headers.so # 모든 URL <IfModule mod_headers.c> Header add Access-Control-Allow-Origin * Header set Access-Control-Allow-Credentials true </IfModule> # 다음 URL <IfModule mod_headers.c> SetEnvIf Origin "h... Read More
-
[SSL/Apache] 사설 SSL 인증서 사용과 검증
1. Overview 안녕하세요. 오늘은, WEB/WAS 에서 자주 언급되고 사용되는 SSL 인증서의 기본 학습을 위한 테스트를 진행해볼까 합니다. 최근에 고객사에서 사용하던 SSL 인증서가 만료시점이 되어, 파일 교체를 하였다고 합니다. 교체한 인증서와 기존에 사용하고 있던 인증서 내용이 다르지 않고, Expire (만료기간)만 갱신된 동일한 인증서라면 별다른 트러블이 발생하지 않겠지만, 어떠한 문제가 발생을 하였는지 SSL 인증 거부로 통신이 되지 않는 이슈가 있었습니다. 이러한 상황에 맞닥뜨렸을 때, 기본적으로 어떠한 방법을 통해 SSL 인증서에 문제가 없는지 테스트를 진행해보겠습니다. ... Read More
-
[Linux/Repository] Create Local Repository
1. Overview 고객사에 Apache 설치를 위해 OS Package가 사전 설치되어 있어야 하나, 폐쇄망으로 인하여 직접 Package를 설치해야 되는 상황이 발생하였다. Linux Image를 마운트하여 직접 Package를 구성해보자. 2. Local Repo 구성 2.1 Image Upload 고객사와 같이 테스트 환경은 CentOS 7.4.1708 이미지다. 해당 이미지를 구할 수 있는 미러는 많으나, 오래된 자료라 Not Found 또는 다운로드 속도 지연 문제로 토렌트로 받을수는 있었다. 다음과 같이 받은 DVD (Full image) 파일을 특정 경로에 업로드 한다. ... Read More
-
[Scripts/Bash] Thread Dump 파일들 비교 분석
1. Overview Tomcat Thread Dump 분석을 하다가, 수 많은 Dump 파일에서 수 많은 Thread 상태를 추적해야 될 필요가 있었다. 여러 파일을 열어, 특정 내용들을 추출하는 스크립트를 짰다. 수 많은 덤프의 유연하게 변화하는 내용을 단순 스크립트로 볼 수 없다. 그냥 참고용이다~ 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 # Thread Dump파일명* 으로 일괄 검색 FILE=/tmp/??* FILE_LIST=$(ls -al ${FILE} | ... Read More
-
[Scripts/Bash] Log 일괄 점검 스크립트
1. Overview 고객사 솔루션(대표적으로 WAS) 로그 점검 시, 일괄 점검할 수 있는 스크립트 2. Scripts 2.1 run.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #!/bin/bash LOG_HOME=/WEB/logs GREP_HOME=/WEB/logs/greplist START=$(date "+%Y%m010000") END=$(date "+%Y%m010000" -d 'next month') touch -t ${START} ${GREP_HOME}/start.txt touch -t ${END} ${GREP_H... Read More
-
[APM/Scouter] Method Profiling
1. Overview Scouter APM에서 Method Profiling 방법 2. Descriptions 가령, 다음과 같은 구조를 갖는 Application이 있다고 해보자. org.apache.catalina.session 패키지 아래의 class와 method 들이 수두룩~ com.athena.dolly 아래에도 수두룩~ org.infinispan 아래에도 수두룩~ com.example.parent Class 아래에는 child 라는 method 1개 2.1 hook_method_patterns ... Read More
-
[Scripts/Bash] High Cpu Process의 분석을 위한 Dump
1. Overview 커피 브랜드 프로모션 지원 중에, High CPU Thread 추적을 위해 만든 스크립트 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 #!/bin/bash LOG_DIR=/tmp/2022-03-31_OSC_Monitoring #SERVER=mobile #SERVER=mobile2 SERVER=mobile3 PID=$(ps -ef | grep java | grep -w "\-DSERVER=${SERVER}" | awk '{print $2}') DT=$(date "+%Y%m%d_%H%M%S") ps -eLo pid,ppid,tid,pcpu,comm |... Read More
-
[Jekyll] jekyll-theme-yat 테마를 사용하기 위한 기본 Setup
1. Overview 현재 이 블로그는 jekyll-theme-yat 테마를 사용 중이다. 해당 블로그를 꾸미기 위해 여러 가지 편집을 했는데, 어떤것을 했나? 향후 테마가 변경된다 해도 해당 게시물 편집을 할 수도 안할수도!! 2. Descritpions 2.1 _config.yml (1). post url 변경 permalink: /:categories/:title (2). header tag를 ToC 표시 시 적용 단계 변경 1 header_offset: 1 (3). post의 date 더 짧게 보여주기 위해서 date_format: "%Y-%m-%d" (4).... Read More
-
[WebLogic] 미들웨어 한글문서 리스트 - Oracle Weblogic Server (문서 ID 2301250.1)
1. Overview [WebLogic] 미들웨어 한글문서 리스트 - Oracle Weblogic Server (문서 ID 2301250.1) 2. Descriptions [WebLogic] 미들웨어 한글문서 리스트 - Oracle Weblogic Server (문서 ID 2301250.1) Read More
-
[WebLogic] WTC 설정
1. Overview WTC 설정 가이드 2. Descriptions 2.1 테스트 환경 Tuxedo Address : 172.16.0.145:20001 Local Access Point ID : TDOM WebLogic Address : 192.168.56.2:8001 Local Access Point ID : WDOM02 Tuxedo 입장에서, WDOM02는 Remote Access Point ID 다. 2.2 웹로직 설정 콘솔 > 상호 운용성 > WTC 서버 > 새로... Read More
-
[WebLogic] 플러그인 정보, 플러그인 버전 보는 방법
1. Overview 플러그인 정보, 플러그인 버전 보는 방법 2. Descriptions 오라클 권장은 플러그인 1.1 이상은 웹로직 버전에 크게 상관없이 최신으로 유지 오라클 권장사항은 12c 최신 플러그인 안되면 11g최신 플러그인, 그래도 안되면 10g용 플러그인 사용 하도록 2.1 WebLogic Proxy Plug-in 12.1.2 A WebLogic Server 12.1.2 Web server plug-in can proxy to the latest Patch Set release of a 9.x, 10.0, and 10.3.x server. 참고 2.2 WebLogi... Read More
-
[WebLogic/WLS8] 웹로직 8버전 USER_MEM_ARGS 기능 넣기
1. Overview 웹로직 8버전만 사용자 정의 메모리 아규먼트 기능이 없다. 사실 기능이라고 하기에는 단순한 문자열 치환이다… 2. Descriptions startA.sh 과 같이 사용자 스크립트에 export USER_MEM_ARGS 한다면 이 startA.sh은 결국 startWeblogic.sh 을 노헙으로 실행. startWeblogic.sh에서는 하위 프로세스로 실행되므로 앞에서 export된 USER_MEM_ARGS 변수를 내부적으로 사용가능. echo 등으로 찍히진 않는다. (물론 startWeblogic.sh을 실행시키면 찍힌다) 여튼 프로그래밍하여 startWeblogic... Read More
-
[WebLogic] WEB-INF(web.xml, weblogic.xml) 의 버전 업그레이드
1. Overview WEB-INF(web.xml, weblogic.xml) 의 버전 업그레이드 2. Descriptions java -cp "$WL_HOME/server/lib/weblogic.jar" weblogic.DDConverter -d /path/newConfig /applications/webapp /applications/webapp/WEB-INF/web.xml과 weblogic.xml을 해당 웹로직 버전으로 업그레이드 하여, /path/newConfig 디렉토리에 저장한다. Read More
-
[WebLogic] 스레드 풀 사이즈 튜닝(조절)
1. Overview 스레드 풀 사이즈 튜닝(조절) 2. Descriptions (1). 콘솔 설정 Environment - Servers - select instance - Configuration - Tuning - Self Tuning Thread Minimum/Maximum Pool Size 적용 후 재시작 (2). config.xml 설정 1 2 3 4 <server> <name>서버이름</name> <self-tuning-thread-pool-size-min>50</self-tuning-thread-po... Read More
-
[WebLogic] 기동이 느린 경우
1. Overview 기동이 느린 경우 2. Descriptions config.xml에 listen-address가 blank라면 아이피 주소를 기입한다. 또는, -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false Read More
-
[WebLogic] 접근 허용 아이피 설정
1. Overview Security Filter를 이용하면, 접근 제한 규칙을 활용하여 인스턴스 접근 제한을 둘 수 있다. 2. Descriptions 2.1 Security Filter 적용 (1). Console - Domain - Security - Filter Connection Filter: weblogic.security.net.ConnectionFilterImpl Connection Filter Rules: 1 2 192.168.56.2 192.168.56.1 8001 allow \* 192.168.56.1 8001 deny ... Read More
-
[WebLogic] WLST로 DB 상태 출력
1. Overview DB 상태 출력하는 WLST Script 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 # 출처: http://middlewaremagic.com/weblogic/?p=4917 ############################################################################# # # @author Copyr... Read More
-
[WebLogic] 다른 JDBC Driver 적용 방법
1. Overview 다른 JDBC Driver 적용 방법 2. Descriptions derby.jar로 설명. 스크립트 쉘에 옵션. export EXT_PRE_CLASSPATH=derby.jar 데이터 소스 생성 시 드라이버 클래스 이름: org.apache.derby.jdbc.EmbeddedDriver 어때요 참쉽죠? Read More
-
[WebLogic] Windows 환경에서 WebLogic Java Thread Dump 추출 방법
1. Overview WebLogic Console 메뉴에서 Thread Dump 생성 jdk의 jstack tool 사용하여 Thread Dump 생성 위 방법 외에 WebLogic이 실행중인 cmd.exe에서 Ctrl + Break 키조합으로 Thread Dump 생성 방법입니다. 2. Descriptions 2.1 Scripting (1). startAdmin.cmd (인스턴스 기동 스크립트) 1 2 3 ...skip... start /B %DOMAIN_HOME%\bin\startWebLogic.cmd >> %LOG_DIR%\%SERVER_NAME%.out 2>&a... Read More
-
[WebLogic] 진단 기록 끄기 - WLS_DIAGNOSTICS
1. Overview WLDF (WebLogic Diagnostics Framework) Off 2. 활성화 2.1 기동 스크립트 다음의 옵션을 주석(#) 처리 합니다. 재기동 합니다. 1 2 3 #-D_Offline_FileDataArchive=true #-Dweblogic.connector.ConnectionPoolProfilingEnabled=false #-Dcom.bea.wlw.netui.disableInstrumentation=true 위 옵션은, WLDF 모듈이 생성하는 .DAT 진단 파일의 인덱싱 관리 등에 대한 옵션들입... Read More
-
[WebLogic] 웹로직 Client IP와 WebServer IP를 얻는 방법
1. Overview WebLogic AP 단에서 앞단 WebServer IP 또는 L4, 또는 Client IP를 얻어야 하는 경우가 발생한다. 이를 위해 WL-Proxy-Client-IP Header 를 제공한다. 2. Descriptions 2.1 Client Real IP 콘솔에서 서버 Conf 페이지 -> General -> WebLogic Plug-in Enabled 를 True로 설정 이렇게 하면 클라이언트 -> 웹서버 -> 웹로직의 경우 웹로직에서 웹서버의 헤더가 아닌 클라이언트(브라우저)의 헤더를 가져오므로 클라이언트의 아이피를 얻을 수 있다. 웹로직에서는 re... Read More
-
[WebLogic/Bash] config.xml 에서 정보 일괄 추출
1. 개요 고객사 시스템 정보 추출을 위해 만든 스크립트 2. 인스턴스 정보 2.1 인스턴스명 (1). server tag 범위 검색 1 2 3 4 5 6 7 8 9 $ egrep "<server>|<\/server>" config.xml -n 44: <server> 76: </server> 77: <server> 136: </server> 137: <server> 157: </server> 158: <server> 213: </server> (2). sed 명령으로 범위 출력 ... Read More
-
[WebLogic] Encoding
1. 개요 Encoding 설명 2. 설명 (1). Encoding 옵션 적용 순서는 jsp -> web.xml -> weblogic.xml 대규모 프로젝트의 경우 보통 weblogic.xml 설정하여 도메인 전체 어플리케이션에 동일한 인코딩을 적용 (2). jsp pageEncoding 1 2 3 4 5 6 7 <!-- weblogic.xml --> <jsp-descriptor> <jsp-param> <param-name>encoding</param-name> <param-value>UTF-8</p... Read More
-
[WebLogic] 데이터소스 RAC URL
1. 개요 데이터소스 RAC URL 2. 설명 (1). $ORACLE_HOME/network/admin/tnsnames.ora에서 host, port, service_name을 캐치 하여 아래 URL 적용 1 jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=dbhost1)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=dbhost2)(PORT=1521)))(FAILOVER=on)(LOAD_BALANCE=off)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=dbs... Read More
-
[WebLogic] CTF / TAF 선택지와 설정 방법
1. Overview CTF / TAF 선택지와 설정 방법 2. Descriptions 2.1 CTF (Connection Time Failover) 연결하려는 DB Listener TCP 통신 Connection Timeout 에 따라, 접속을 실패하면 다른 접속가능한 DB Listener 를 탐색한다. (1). WebLogic WebLogic에서는 MultiDataSource(MDS)를 사용하면 된다. WebLogic에서 CTF 를 관리하는 주체가 된다. 정확한 동작 메커니즘(Plugin Flow-Diagram 같은)은 문서상에 존재하지 않는다. (2). JDBC Driver Leve... Read More
-
[WebLogic] 커넥션 풀 강제 반환
1. Overview 사용 가능한 커넥션 풀의 갯수가 어떤 조건보다 적을 때 얼마 만큼의 커넥션을 강제로 풀로 반납시킬 수 있다. 2. Descriptions (1). Console > Services > DataSource > Configuration > Connection Pool > Advanced Connection Harvest Max Count: 5 Connection Harvest Trigger Count: 8 (2). Test 현재 Connection Pool 은 10개 사용중인 Connection은 5개 사... Read More
-
[WebLogic] 윈도우 서비스 Heap Usage 확인
1. Overview SR 3-18602337531 : [XXXX] How to get Permgen Space info of Weblogic Server on Windows Service 윈도우 서비스 항목으로 등록된 JVM 의 Heap Usage 항목 확인 방법 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 d:\sw\domains\Domain_10.3.6>sc queryex WLS_10.3.6_Admin SERVICE_NAME: WLS_10.3.6_Admin 종류 : 10 WIN32_OWN_PROCESS 상태 : 4 RUNNING (STOPPABLE, ... Read More
-
[WebLogic] 아이디, 비밀번호 변경하기
1. Overview WLS 8 이상에서 ID/PWD 변경 방법 가이드 2. Descriptions 2.1 WebLogic 8 (1). 모든 인스턴스 종료 (2). 도메인/각각 서버/ldap 디렉토리 삭제 (3). boot.properties 삭제 (4). call setEnv.cmd (5). java weblogic.security.utils.AdminAccout <변경할 아이디> <변경할 비밀번호> . 맨 뒤에 dot(.) 필요 (6). 서버 재시작 “(5)”번 항목을 실행하면 도메인/DefaultAuthenticatormyrealmInit이 생성되고, ... Read More
-
[Ansible/2.9] 기본 playbook 테스트
1. 개요 Ansible installation 후에 Sample Playbook testing. 2. 테스트 hosts 파일에 테스트용 VM 을 나열하고, /tmp 에 디렉토리 생성 playbook /tmp 에 생성한 디렉토리 삭제 playbook 위 playbook 을 all-in-one 으로 만드는 import playbook 총 3가지 테스트한 파일 20210803.tar.gz Read More
-
[Ansible/2.9] Installation
1. 개요 Ansible installation 2. 설치 CentOS Version 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 $ cat /etc/*release CentOS Stream release 8 NAME="CentOS Stream" VERSION="8" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="8" PLATFORM_ID="platform:el8" PRETTY_NAME="CentOS Stream 8" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:8" HOME_URL="https:... Read More
-
[RHCSA] Container 생성
1. 개요 podman 을 이용한 Container 생성과 비-루트 계정으로 서비스를 등록해본다. 2. 컨테이너 생성 2.1 이미지 검색 # podman search docker.io/httpd INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED docker.io docker.io/library/httpd The Apache HTTP Server Projec... Read More
-
[RHCSA] Root Password 변경
1. Overview root 계정 패스워드 변경 방법 2. Descriptions (1). Linux 부팅 단계에서 e 를 눌러 명령줄 편집모드 진입 (2). linux 행에 마지막(End 키)에 rd.break 입력 후 Ctrl-x 키로 이어서 부팅 일반 파일 시스템의 루트가 올라오지 않아, sysroot가 올라온다. 그래서 아래에서 _chroot /sysroot_를 한다고 구글신이 알려준다. (3). sysroot 리마운트 현재 sysroot가 ro(read only)다. 리마운트 한다. 1 # mount -o(options) remount,rw /sy... Read More
-
[RHCSA] NFS 마운트
1. Overview NFS 환경에서 마운트 방법을 알아본다. 명령줄 mount (리붓시 날라감) /etc/fstab 파일 (영구 적용) autofs (반영구 적용으로 인한 자원 효율적 사용, 동적으로 자동 마운트. 권장) 2. 테스트 환경 준비 RHCSA 실습으로 주어진 랩 환경에서 하다가, 본인 로컬 VM에서 바로 하려니까 기본 환경을 준비하지 않아 안되었던 부분이 있었다. 2.1 NFS 서버 환경 1 2 # yum install -y nfs-utils # systemctl enable --now nfs-server.service 대부분 기본으로 설치되어 있는 nfs 패... Read More
-
[RHCSA] LVM 확장
1. Overview 특정 마운트 지점의 공간이 부족하다는 가정하에 확장 방법을 알아본다. 2. Descriptions 2.1 현재 상황 1 2 3 # df -h /data Filesystem Size Used Avail Use% Mounted on /dev/mapper/servera_01_vg-servera_01_lv 395M 24M 372M 6% /data /data Total Size가 395MB 이다. 1 2 # mount | grep /data /dev/mapper/servera_01_vg-servera_01_lv on... Read More
-
[RHCSA/LVM] LVM 생성
1. Overview 물리 디스크를 쓸 수 있게 포맷하고 마운트를 하는 방법을 [RHCSA] Storage 파티셔닝 [RHCSA] Swap 파티셔닝 에서 학습하였다. 여기서는 LVM 개념을 배운다. LVM은 물리 디스크를 초기화 한 이후에, 그룹핑 개념을 도입하여 여러 물리 디스크를 하나의 그룹처럼 묶어줄 수 있게 된다. 논리적인 개념으로 만들어주기 때문에 원하는 크기의 가상의 디스크 장치를 만들 수 있다. 2. 디스크 초기화 및 파티셔닝 1 2 3 4 5 6 7 8 9 # lsblk --fs NAME FSTYPE LABEL UUID ... Read More
-
[RHCSA] Swap 파티셔닝
1. Overview RHCSA 과정을 준비하면서, Swap파티셔닝을 정리한다. fdisk, gdisk 를 먼저 공부했지만, parted 가 너무 편리하여 parted로 정리한다. Swap이 아닌 일반 스토리지는 여기를 클릭 2. Swap 일반 스토리지 단계에서부터 이어서 진행한다. 1 2 3 4 5 6 7 8 9 # parted /dev/vdb print Model: Virtio Block Device (virtblk) Disk /dev/vdb: 5369MB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: ... Read More
-
[RHCSA] Storage 파티셔닝
1. Overview RHCSA 과정을 준비하면서, Storage 파티셔닝을 정리한다. fdisk, gdisk 를 먼저 공부했지만, parted 가 너무 편리하여 parted로 정리한다. 2. MBR / GPT MBR과 GPT의 차이점 등은 다른 구글링으로 쉽게 찾아볼 수 있다. 아래 Section 실습에서는 MBR 이든 GPT이든 mklabel 에서만 지정하면 된다. 예시 1 2 parted /dev/vdb mklabel msdos # MBR parted /dev/vdb mklabel gpt # GPT 너무 편리하다.. 3. GPT 파티셔닝 MBR 파티셔닝은 ms... Read More
-
[Mermaid] Mermaid 기능 사용
1. Overview Jekyll github blog에서 mermaid 를 사용하여 graph(chart 등)이 그려지지 않았었다. git white plug list라는 word 로 검색을 해보니, 현재 mermaid plugin은 지원하지 않고 있어 javascript 삽입 방식으로 사용해야 한다. 2. mermaid 설치 여기를 눌러 보면 Mermaid plugins 사용 방법을 확인할 수 있다. 아래의 내용과 동일하다. 2.1 javascript 삽입 _include/head.html 파일 끝에 삽입한다. 1 2 3 <script src="https://cdn.jsdelivr.... Read More
-
[Jenkins] 설치
1. Overview Tomcat 에 Jenkins 설치 Jenkins 는 기본적으로 jetty 로 구성되어 패키지 제공되고 있으나, war를 Tomcat에 배포하는 것으로 설치해보기로 한다. 2. Descriptions 2.1 다운로드 여기 클릭 위 LTS 항목을 다운로드 받았다. 2.2 Tomcat 환경변수 설정 JEKINS_HOME만 세팅하였다. 1 export JENKINS_HOME="your path" 2.3 war를 배포 1 /app/servers/tomcat1/webapps/jenkins.war 여기까지가 아주 심플하게 설치는 완료되었다. 3. Tomcat (jen... Read More
-
[JBoss] EAP Patch 명령어
1. Overview JBOSS EAP 대상으로, Patch 명령어 가이드 상위 patch는 하위 patch를 모두 포함한다. 7.3.10 , 7(major), 3(minor), 10(micro release) 를 의미한다. 2. Patch 구문별 명령어 설명 2.1 patch apply 1 ./jboss-cli.sh "patch apply /tmp/jboss-eap-7.3.10-patch.zip" 2.1 patch info 1 2 3 4 ./jboss-cli.sh "patch info" Version: 7.3.10.GA Cumulative patch ID: ... Read More
-
[WebLogic] WLST으로 Thread Dump
1. Overview WLST로 Thread dump를 뜨는 스크립트 2. Descriptions 1 java -cp wlfullclient.jar weblogic.Admin -url t3://ip:port -username weblogic -password weblogic1 THREAD_DUMP nohup에 기록된다. wlfullclient.jar는 https://docs.oracle.com/cd/E13222_01/wls/docs103/client/jarbuilder.html#wp1078098 를 참고하여 생성한다. Read More
-
[WebLogic] WLST으로 Thread Dump Client 만들기
1. Overview WLST으로 Thread Dump Client 만들기 2. Tool 개발 2.1 wlfullclient.jar 여기 참고하여 wlfullclient.jar 준비 위 jar 외에도 수많은 라이브러리를 classpath 로 잡아야 하나, 어떤것이 특정적으로 필요한지 몰라서 아래와 같이 모든 라이브러리를 사용했다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 weblogic.jar wlfullclient.jar jython-modules.jar com.oracle.cie.wizard_7.1.0.0.jar com.oracle.cie.config_8.1.0.0.... Read More
-
[WebLogic] nostage와 stage 배포 흐름
1. Overview Staing Mode는 stage와 nostage로 분류 2. Descriptions 2.1 stage 모든 instance가 AdminServer의 장비에서 file donwload 하기 때문에, instance startup이 지연되는 단점이 있다. webapp을 배포해야 하는 많은 장비가 있을 경우에는, source update가 편리해지는 장점이 있다. 또한, download 받은 webapp은 domain_home/servers/{instances} 아래에 모두 복사한다. 2.2 nostage 모든 instance는 자신의 장비에 webapp이 있... Read More
-
[WebLogic] Serializable 란 무엇인가?
1. Overview Serializable 란 무엇인가? 2. 바이트 스트림(Byte Stream) 통신(네트워크, 입출력I/O)은 바이트 단위로 이루어 집니다. 그리고 이 통신을 스트림 이라고 합니다. 즉, 통신은 바이트 스트림으로 이루어진다고 할 수 있습니다. 3. 고수준과 저수준 그리고 이때 통신은 하드웨어적인 저수준과, 소프트웨어적인 고수준으로 구분할 수 있습니다. 고수준 통신을 사용하는 소프트웨어에서 문자 “a”를 전송하기 위해서는 저수준인 1바이트 0110 0001로 하드웨어에 전달해야 합니다. 여기서 하드웨어는 이더넷 케이블이나 랜카드, 라우터 등을 의미합니다. 4. 객체... Read More
-
[WebLogic] BSU, OPatch, Tool Upgrade 정리
1. Overview BSU, OPatch, Tool Upgrade 정리 2. Patch 전에는 백업이 필수다. 오라클 공식문서에서는 ORACLE_HOME 백업을 권고한다. 아래에서 설명할 예시 환경은 다음과 같이 지정하자. WLS11gR1 : - 오라클 제품 홈 (ORACLE_HOME) : /sw/weblogic/11gR1 - 웹로직 엔진 홈 (WL_HOME) : /sw/weblogic/11gR1/wlserver_10.3 WLS12cR1 : - 오라클 제품 홈 (ORACLE_HOME) : /sw/weblogic/12cR1 - 웹로직 엔진 홈 (WL_HOME) : /sw/weblogic... Read More
-
[WebLogic] servlet-reload-check-secs, resource-reload-check-secs, page-check-seconds
1. Overview servlet-reload-check-secs, resource-reload-check-secs, page-check-seconds 2. Descriptions servlet-reload-check-secs: Servlet 변경 resource-reload-check-secs: XML, image 등등 모든 일반 파일 재갱신 page-check-seconds: jsp recompile 0 is 항상 변경 확인. 5 is 이전에 변경된 기록 => 5 일 경우 변경 확인. -1 is 전혀 확인 하지 않음. 사용자의 요청이 들어왔을 때, 변경 확인. 즉,... Read More
-
[WebLogic] Stdout Log Rotation (perl script)
1. Overview Stdout Log Rotation (perl script) 2. Descriptions 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # rotateLOG.pl 파일 내용 #!/usr/bin/perl $TRUE=1; $FALSE=0; $DEBUG=$FALSE; #$DEFAULT_LOG_PFX="/was_log/디렉토리/로그이름."; $DEFAULT_LOG_PFX="/home/weblogic/was/1213/domains/base_domain/logs/AdminServer/AdminServer.out."; ... Read More
-
[WebLogic] Maven 간단히 해볼까..?
1. Overview Maven 아주 진짜 너무 간단하게.. 2. Version 별 문서 웹로직 11g 메이븐 문서 웹로직 12c 메이븐 문서 3. Maven Phase를 실행하면, Phase에 속한 모든 goal가 실행된다. Table 3.1 Maven Lifecycle Phases은 maven의 기본 라이프 사이클 테이블을 보여주는 것이고, Table 3.2 Common Mapping of Goals to Phases는 웹로직에서 사용하는 단계와 골 들을 보여주는 정보이다. 즉 메이븐에서 제공하는 Table3.1을 웹로직에 맞는 Table3.2로 오라클이 maven 프로젝트를 개발하였... Read More
-
[WebLogic] Cluster간 Session Replication
1. Overview WebLogic Cluster 의 Session 복제 조건을 알아본다. 2. Session Replication 대상 사용자가 was1번에 접속 시, 이를 Primary Server라 하며 Session을 생성. Primary Server에 생성된 Session Backup을 Secondary Server에 복제. Secondary Server는 같은 Cluster내 Member중 Random하게 하나를 선택. 말이 랜덤이지, 기준이 있다 (웹로직만의 기준). 아래 그림. Primary Server가 shutdown 되더라도, Seco... Read More
-
[WebLogic] Session을 생성하고 복제하는 Method (setAttribute, getAttribute, getSession)
1. Overview Session을 생성하고 복제하는 Method (setAttribute, getAttribute, getSession) 2. Oracle 공식 문서 확인 여기 에서 Session Replocation Sync가 setAttribute method로 동작한다는 부분은 다음과 같습니다. (setAttribute 로 검색시) 3. 실제 Test 결과 및 결론 Session 생성과 복제는, setAttribute, getAttribute method로 동작함을 확인하였습니다만. 실제론, FailoverTest_get.jsp를 다음 처럼 수정하니, getSession(tr... Read More
-
[WebLogic] Serializable Test
1. Overview 세션 복제 될 데이터가 직렬화 되어있는 경우와 그렇지 않은 경우를 테스트해보았습니다. 이때 세션 데이터는 직렬화 구현이 필요한 클래스 객체로 구현해보았습니다. 2. 테스트 어플리케이션 webapp.zip 첨부파일의 FailoverTest.jsp는 원본입니다. FailoverTest_class.jsp는 페이지 로드 시 1씩 증가하는 Integer 데이터를 새로 생성한 클래스에 멤버 변수로 선언하여 저장하게 했습니다. 세션 데이터는 첨부파일의 sessionObject 클래스를 선언하여 멤버 변수에 저장합니다. package kdh; -> FailoverTes... Read More
-
[WebLogic] JSSE 및 SSL 관련
1. Overview JSSE 및 SSL 관련 2. Descriptions ~ WebLogic 10.3.2 : Certicom SSL + SHA1 만 가능. WebLogic 10.3.3 ~ : Use JSEE Enabled를 통해 SHA2 가능. SHA2 가 JSSE 환경에서만 동작. WebLogic 12c : JSSE가 Default로 Enabled되어 있음. Read More
-
[WebLogic] JMX MBean 사용을 위한 기초 개념
1. Overview WebLogic 환경에서 MBean 사용방법을 간단하게 알아보자 2. WebLogic 에서 MBean 이란? 웹로직의 모든 접근 가능한 정보들은 MBeanServer에 저장된다. 웹로직 콘솔 페이지 또한 이 MBeanServer를 보여주는 것에 불과하다. MBeanServer는 계층적 구조를 가지고 있으며, 접근하기 위해서는 JMX API를 구현한 MBeans로 가능하다. 이 MBean에 접근하여 수정하는 코드를 만든다면, 웹로직 콘솔을 커스터마이즈 하는 것과 동일하다. 3. WebLogic 에서 MBean 접근 방법 3.1 사용할 MBean 먼저 MBeans ... Read More
-
[WebLogic] JDBC 스펙에 의해, AutoCommit 이 실행되는 경우
1. Overview JDBC 스펙에 의해, AutoCommit 이 실행되는 경우 2. Descriptions 어플리케이션에서 쿼리를 auto commit 하지 않는 상태 = setAutoCommit(false) 위의 경우에, commit 또는 rollback 실행하지 않고 connection.close()를 호출하면 해당 쿼리는 setAutoCommit(true)를 호출하여, 자동으로 commit 되게 한다. 이것은, JDBC 스펙에 따라 commit 을 보장하기 위함이다. 하지만 몇몇 드라이버(Oracle 10.x, 11.x)에서는 commit이 자동으로 실행되지 않는다. 이러한 ... Read More
-
[WebLogic] WLDF WLS_DIAGNOSTICS000000.DAT 열기
1. Overview 셧다운 된 서버의 DAT파일만 열 수 있는 것으로 보임. 2. Descriptions 1 2 ./wlst.sh exportDiagnosticData(logicalName='HarvestedDataArchive', logName='/sw/weblogic/12cR2/domains/base_domain/sportal71/data/store/WLS_DIAGNOSTICS000000.DAT', logRotationDir='.', storeDir='/sw/weblogic/12cR2/domains/base_domain/sportal71', query='', exportFileName='sportal... Read More
-
[WebLogic] 웹로직에 부하를 주는 스레드 찾기(Linux, AIX, Windows7)
1. Overview 웹로직에 부하를 주는 스레드 찾기(Linux, AIX, Windows7) 2. 다음의 JSP를 배포하여 실행 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 for (int i=0; i < 3; i++) { Thread x=new Thread(new Runnable(){ public void run() { System.out.println("Thread " +Thread.currentThread().getName() + " star... Read More
-
[WebLogic] OCI Datasource 생성
1. Overview OCI(Oracle Call Interface) SQLPlus, SQLDeveloper와 같은 oracle db 접속 툴이 oci 임. oci는 native library를 사용하므로, pure java인 thin 방식보다 더 빠르다고 한다. support.oracle에 oci 사용 시 weblogic jvm crash, not closed 사례와 같은 문서 혹은 패치 내용이 있으며, thin 방식 사용하는 것을 권장한다고 설명한다. WLS JDBC Pool - Physical Connections are not closed by Weblogic JDBC Datasource us... Read More
-
[WebLogic] DataSource Password 변경
1. Overview DataSource Password 변경 2. Descriptions 웹로직 마이그레이션이나.. 업그레이드 등을 진행할때, 데이터소스(jdbc.xml)등의 패스워드는 직접 다시 수정해야 한다. 또는 패스워드 변경 시 콘솔을 이용하기 보다 직접 config/jdbc/.xml 을 수정하는 편이 편리하다. 다음 명령어는 $DOMAIN_HOME 에서만 실행된다. (setDomainEnv.sh가 제일속편함) 1 2 . ./$DOMAIN_HOME/bin/setDomainEnv.sh java weblogic.security.Encrypt {암호입력} 또는 java -cp weblogic.... Read More
-
[WebLogic] consoleapp context-root 다르게 변경 방법
1. Overview consoleapp context-root 다르게 변경 방법 2. Descriptions 2.1 consoleapp 다른 이름으로 복제 1 cp ${WL_HOME}/server/lib/consoleapp ${WL_HOME}/server/lib/consoleapp_gtplus 2.2 consoleapp_gtplus context-root 변경 1 2 3 4 5 6 7 8 9 10 # ${WL_HOME}/server/lib/consoleapp_gtplus/META-INF/application.xml 파일 편집 ... skip ... <module> <w... Read More
-
[WebLogic] weblogic.jar와 wlfullclient.jar
1. Overview weblogic.jar와 wlfullclient.jar 생성 방법 2. Descriptions WebLogic 10.0 이전까지는, weblogic.jar file 하나로 T3, WLS-IIOP client application을 개발하여 WebLogic Server과 통신할 수 있다. WebLogic 10.3.x 이후부터는, weblogic.jar 대신에 wlfullclient.jar을 사용해야 client application을 개발하고 사용할 수 있다. 여기 에서 client application 확인 여기 에서 wlfullclient.jar 생성 방법 확인 원격... Read More
-
[WebLogic] File Descriptor 로그 확인 및 변경
1. Overview File Descriptor 로그 확인 및 변경 2. Descriptions 2.1 현재 웹로직 FD값 도메인/servers/{server}/logs/{server}.log 에 다음처럼 로그가 보인다. 2.2 웹로직 FD 변경 1 2 ulimit -Ha # 하드웨어 설정값 확인 ulimit -Sa # 소프트웨어 설정값 확인 commEnv.sh 에서 resetFd 의 uname -n 4096 을 수정. (ulimited 으로 된경우에는 수정이필요.) Read More
-
[WebLogic] enforce-valid-basic-auth-credentials
1. Overview enforce-valid-basic-auth-credentials 2. Descriptions 2.1 enforce-valid-basic-auth-credentials 해당 옵션은 웹로직에서 실행중인 어플리케이션에서 HTTP BASIC authentication을 사용시 추가적으로 인증을 할 것인지 선택하는 옵션입니다. 웹보안 중에 http 인증 방식이 여러가지 있는데 그 중 HTTP BASIC authentication인증방식을 웹로직에서 디폴트로 ‘사용’ 설정이 되어있습니다. 예를 들어 enforce-valid-basic-auth-credentials값이 true일 때,... Read More
-
[WebLogic] Encryption/Decryption (암/복호화)
1. Overview Encryption/Decryption (암/복호화) 2. Encryption WebLogic 8 ~ 12cR2 사용 가능 1 2 3 [weblogic@was base_domain]$ . ./bin/setDomainEnv.sh [weblogic@was base_domain]$ java weblogic.security.Encrypt string {AES256}WSq0iT981CeH2J+qbftpo0NN+IAT9689J+pk/Ecj5mw= string 이라는 plain text는 {AES256}WSq0iT981CeH2J+qbftpo0NN+IAT9689J+pk/Ecj5mw= 으로 암호... Read More
-
[WebLogic] 데이터소스 커넥션 풀 시도 횟수 관련 옵션
1. Overview 데이터소스 커넥션 풀 시도 횟수 관련 옵션 2. Descriptions Connection Reserve Timeout 기본값 10초. Reached maximum data… 와 같이 Pool connection이 모두 사용되는 경우, Connection Reserve Timeout 동안 Free connection pool 찾음. 이후 없으면 503 error. 해당 Connection Reserve Timeout 초 내에 몇번의 요청을 하는 구조인지는 모르겠다. Read More
-
[WebLogic] HttpSession, Cookie, JSESSIONID
1. Overview 테스트와 디버그 로그를 통해 HttpSession, Cookie, JSESSIONID 를 구체적으로 공부한다. 2. Cookie-Name 테스트 2.1 HttpSession과 Cookie, JSESSIONID 클라이언트의 브라우저에서 사용하는 HTTP 통신은 stateless(상태 무지속)방식입니다. stateless는 클라이언트(브라우저)의 요청(request)과 서버의 응답(response) 후에는 소켓을 끊는 단발성 통신 방식입니다. 여기서 세션이나 쿠키 등을 이용하여 서버는 신규 클라이언트와 오래된 클라이언트를 구별할 수 있습니다. (1). HttpSession 웹... Read More
-
[WebLogic] Cluster Address(클러스터 주소), Number Of Servers In Cluster Address(클러스터 주소의 서버 수)
1. Overview Cluster Address(클러스터 주소), Number Of Servers In Cluster Address(클러스터 주소의 서버 수) 2. Descriptions Cluster Address와 Number Of Servers In Cluster Address 항목은 EJB 환경에서만 유효한 옵션입니다. Entity Beans와 EJB Handles에 대하여 Failover 처리시에 Cluster Address에 나열된 매니지드 서버들을 호출하게 됩니다. Number Of Servers In Cluster Address 는 Cluster Address를 설정하지 않고, Dy... Read More
-
[WebLogic] Administration Port, Side-By-Side Deploy
1. Overview Administration Port, Side-By-Side Deploy 기능을 알아보자. 2. Administration Port SSL 을 사용하여 웹로직 콘솔에 접근 하도록 한다. 알려지지 않은 포트로 포워딩 시킴으로써, 보안에 유리하다. (원래 7001포트 -> 7200포트 등.. 사용자 정의에 의함) 매니지드 서버도 Administration Port를 해서 관리해야되는 단점이 있다. 2.1 설정 방법 2.1.1 Admin Server (1). Managed Shutdown (2). console - domain - configuration - ... Read More
-
[WebLogic] Admin Server Hang 일 때, MSI Mode socket time out
1. Overview Admin Server Hang 일 때, MSI Mode socket time out 2. Descriptions managed server가 admin server에 req 하였지만, admin server의 hang 으로 ack 보내지 못할 때. -Dweblogic.http.client.defaultReadTimeout 으로 MSI mode 를 실행하도록 하자. Read More
-
[WebLogic] 12c 버전 네이밍
1. Overview 12c version naming rule. 2. Descriptions 12.2.1.0.160719 12.2 => Major version 12.2이다. 12cR2 12.2.1 => Major 12.2에 Minor 1버전 12.2.1.1 => Major 12.2, Minor 1, patch set 1 12.2.1.0.160719 => Major 12.2, Minor 1, patch set 0, PSU(patch set update) 160719 patch set이 나올 때 기능추가 및 변화가 존재 PSU는 기능추가 및 변화는 없음. P... Read More
-
[WebLogic] 12c max request parameter count 최대값 변경
1. Overview 12c max request parameter count 최대값 변경 2. Descriptions HTTP request의 parameter 최대 개수는 기본값으로 10,000개 입니다. parameter를 10,001개 이상 request에 담아 보내면 아래와 같이 에러 로그가 발생합니다. 1 <Error> <ServletContext> <BEA-000000> <Rejecting request since max request parameter limit exceeded 10000> ... Read More
-
[WebLogic] weblogic.socket.muxer is blocked
1. Overview 스레드 덤프에서 muxer Thread가 blocked 으로 보여지는 현상은 무엇일까? 2. Descriptions 웹로직 스레드 덤프를 떠보면, muxer 중 1개는 waiting on condition , 1개는 blocked 상태에 머무는 것이 확인된다. 스레드 경합을 피하기 위해, blocked, waiting on condition 의 상태를 수시로 갖게 된다. muxer 자체가 매우 빠르게 동작하기 위함이며, 실제로도 많은 작업을 하지 않기 때문에 덤프를 뜰때마다 그렇게 보이는 것으로 이해된다. Java Socket Muxer - polling 방식 ... Read More
-
[WebLogic] UDDI Explorer 보안 취약점
1. Overview WebLogic UDDI Explorer 보안 취약점 제거 방법을 소개한다. 2. UDDI Explorer ? UDDI Explorer는 WebService 를 구현하실 때 편의를 위해 제공하는 라이브러리. 3. UDDI Explorer 제거 방법 UDDI Explorer는 WebService 를 구현하실 때 편의를 위해 제공하는 라이브러리로 따로 API를 가지고 구현해서 사용하지 않으시면 해당 라이브러리를 삭제하셔도 됩니다. 오라클에서도 보안쪽 advisories 로 공지한 부분으로, 10.3 이전버전에서는 패치가 제공되며 이후 버전은 실제 파일을 삭제해야합니다. 삭제하시는... Read More
-
[WebLogic] 금융권 MultiDataSource 이슈 사례
1. Overview Multidatasource 사용 중인 고객사에서 발생한 장애 2. Descriptions 데이터소스 이름과 설정 내용 1 2 ADataSource_1 (MultiDataSource; Failover, DB#1, DB#2) ADataSource_2 (MultiDataSource; Failover, DB#2, DB#1) (1). 고객사 물리 DB는 2대이며, DB#2번 스토리지 장애 발생. (2). DB#2번 장애로 인해, WebLogic ADataSource_1 Multi DataSource force disabled 및 모든 세션이 DB#1번으로 연결되는 ADataSource_2 ... Read More
-
[WebLogic] WLDF
1. Overview SR 3-18108256751 : [건XXX공단] every hour cpu spike 건을 정리 2. 현상 2.1 WLDF WebLogic Diagnostics Framework servers//data/store/diagnostics/WLS_DIAGNOSTICS000000.DAT 파일로 저장. 12cR1 기준으로, 5분마다 위 데이터 수집. 1시간마다 용량 100mb 도달 시, old record 삭제. 2.2 WLDF 파일로 인해 문제 발생 건보에서 1시간마다 cpu spike 발생. 진단파일 손상 되었을 것으로 예상한다는 오라클 답변이지만, 에러 로그가 없는 것에 대해서는... Read More
-
[WebLogic] XAConnection java.sql.SQLException: XA error: XAResource.XAER_RMFAIL start() failed
1. Overview 2019년 02월 고객사 일부 장애 건 정리. 2. 현상 웹로직 서버로그에는 나오지 않으나… 어플리케이션 노헙 로그에서는 아래와 같은게 발견된 적이 있다. 1 XAConnection java.sql.SQLException: XA error: XAResource.XAER_RMFAIL start() failed on resource 3. 해결 오라클 문서에서 가이드 하는 내용은. DB 쪽에 maximum process 확인. DB init.ora의 DISTRIBUTED_LOCKOUT 값 확인. 이중 LOCKOUT은 기본값 60초이며, DB를 insert,delet... Read More
-
[Typora] 블로그 이미지 업로드
1. 개요 blog post 작성 시 이미지 업로드를 위해 Typora 에 PicGo 를 활용했었는데, 이미지가 한 곳에 모두 쌓이다 보니 어느 post에서 생성된 이미지인지 분간이 어렵다. 포스트별 디렉토리를 생성하고, 그 안에 이미지를 업로드 하도록 설정한다. 2. Typora 2.1 이미지의 시작지점 (root) 지정 Format > Image > Use Image Root Path 메뉴 디렉토리는 다음 이미지처럼 최상단을 지정한다. 이렇게 설정하거나, 다음과 같이 YAML Front Matter typora-root-url 를 집어넣는다. 1 2 3 4 5 6 7... Read More