이 페이지에서는 Tomcat상에 설치된 Jenkins를 서버구동시에 자동으로 시작되도록 하는 방법을 설명합니다.
테스된 환경설정은 다음과 같습니다.
- OS : Amazon Linux
- Tomcat : 8
- Java : 8
- CATALINA_HOME 디렉토리 : /local/tomcat
- CATALINA_BASE 디렉토리 : /local/tomcat-jenkins
Tomcat 은 CATALINA_HOME(Tomcat 엔진이 설지된 위치), CATALINA_BASE(어플리케이션 별로 사용될 Tomcat Instance용 디렉토리) 디렉토리를 분리해 설정했습니다.
'/etc/init.d/jenkin.sh' 파일 작성
#!/bin/bash ### BEGIN INIT INFO # Provides: jenkins # Required-Start: $network # Required-Stop: $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start/Stop Jenkins server ### END INIT INFO export TOMCAT_SERVER_NAME="jenkins-master" CUR_DIR="/local/tomcat-jenkins" export JAVA_HOME=/local/jdk export CATALINA_HOME=/local/tomcat export CATALINA_OPTS="-Denv.servername=${TOMCAT_SERVER_NAME}" export CATALINA_BASE="${CUR_DIR}" export CATALINA_TMPDIR="${CUR_DIR}/temp" export CATALINA_OUT="${CUR_DIR}/logs/catalina.out" export CATALINA_PID="/var/run/${TOMCAT_SERVER_NAME}.pid" start() { sh /local/tomcat/bin/startup.sh } stop() { sh /local/tomcat/bin/shutdown.sh } |
*** 만일 서비스 구동시 특정 지정된 사용자를 이용해서 구동해야 하는 경우 다음과 같은 쉘 커맨드 형식을 Start와 Stop 함수에 사용합니다.
다음의 예제는 tomcat서비스를 "jenkins" 사용자로 구동하는 예제입니다.
start() {
su -c "/opt/tomcat/bin/startup.sh" jenkins
}
stop() {
su -c "/opt/tomcat/bin/shutdown.sh" jenkins
}
권한 변경 및 Check config 에 등록 for Auto start on boot up
Shell> chmod 755 jenkins Shell> chkconfig jenkins on |
Service command 를 이용한 Start, Stop, Restart
Shell> service jenkins start Shell> service jenkins stop Shell> service jenkins restart |
Auto start 서비스에 등록된 정보를 확인 하고자한다면
Shell> chkconfig --list jenkins |
'DevOps' 카테고리의 다른 글
Java 의 keystore에 SSL/TLS Server 인증서를 import 하는 방법 (0) | 2019.02.28 |
---|---|
JMeter와 Performance 테스트 (0) | 2018.08.13 |
AMI vs. EC2 vs. Volume vs. Snapshot (0) | 2017.12.18 |
AWS EFS 설정 (0) | 2017.07.28 |
Grace Period /Scaling Cooldowns on AWS AutoScaling & Stress 테스트 (0) | 2017.07.27 |