Linux

· devops
리눅스 환경에서 서비스에 사용되는 여러 프로세스들을 모니터링 하기 위해 supervisor를 적용했다적용과정을 공유하겠다.1. supervisor 란?supervisor는 여러 프로세스를 모니터링-관리하며 데몬 형식으로 지속적으로 동작해야 하는 프로세스가 있을 경우 유용하게 사용할 수 있다데몬은 서버(시스템)이 살아있는 동안 항상 실행되어야 하는 백그라운드 프로세스이다. supervisor가 프로세스에 대해 지속적으로 모니터링 하고, 프로세스가 예기치 않게 좋료되어도 재구동하며 지속적으로 동작하도록 돕는 도구이다. 또한 여러 프로세스들을 통합해서 관리할 수 있다는 장점도 있다. 예를 들어, 사용자에게 지속적으로 제공해야 하는 여러개의 프로세스(서비스)가 있는데, 사람이 직접 프로세스가 구동되고 있는지 지..
· devops
리눅스 환경에서 백그라운드로 프로세스를 실행시키기 위해서는 주로 nohub과 &(앰퍼샌드 기호)를 사용한다. nohub과 & 사용법에 대해서 정리하겠다. 1. nohub / & nohub과 & 모두 백그라운드에서 실행하도록 할 때 사용한다. 이 둘의 차이점을 보자. nohub nonhub은 "no hang up" 줄임말로 특정 프로세스를 백그라운드로 실행시킨 후 현재 연결되어 있는 터미널 세션과 연결이 끊어져도 작업이 계속 실행되도록 보장한다. & &는 특정 프로세스를 백그라운드로 실행시킨 후 현재 연결되어 있는 터미널 세션과 연결이 끊어지면 프로세스도 함께 종료된다. 하지만 세션이 끊어져도 프로세스가 종료되지 않을 경우에는 옵션이 default로 적용되어 있기 때문이다. 옵션을 변경하게 되면 터미널과 ..
· devops
1. JAVA 17 설치 sudo apt install openjdk-17-jdk 위 sudo 명령어를 입력해서 JDK 17버전을 설치해보자. 2. 설치 확인 java -version 3. jar 확인 참고로 jar는 java 애플리케이션을 build하면 생성되고, Java 클래스 파일, 리소스 파일 및 메타데이터를 하나의 파일에 압축하여 저장한 파일형태이다. 배포할 때 사용한다. ls 명령어를 사용하여 jar 파일이 있는지 확인했다. 4. 실행 및 결과 java -jar "jar 파일명" 예를 들어 "hello_spring-0.0.1-SNAPSHOT.jar" 파일을 실행할 경우 아래의 명령어 형태로 입력하면 된다. hello_spring-0.0.1-SNAPSHOT.jar 또한 실제 배포를 할 경우에는 ..
· devops
1. cron이란? 특정 시간 조건에 따라 주기적으로 특정 로직을 실행하는 프로그램이다. 애플리케이션에서 특정 로직을 처리해도 되긴 하지만 cron을 사용하면 시스템 레벨에서 동작하기 때문에 안정적이다. 하지만 유지보수가 어렵기 때문에 여러 요인을 고려해서 사용해야 한다. crontab은 cron 설정 정보를 파일로 관리하는 것을 말한다. 2. cron 주기 cron 주기를 설정해 특정 시간마다 특정 로직을 수행할 수 있다. 함께 사용하는 기호 기호와 함께 주기를 설정하면 간편하게 설정할 수 있다. 예시 * * * * *: 매시간, 매분, 매일, 매월, 매요일에 실행 0 2-4 * * *: 매일 2시부터 4시 사이에 실행 */15 * * * *: 매 15분 마다 실행 0 0 * L * *: 매월 마지막 ..
· devops
1. 파일 생성과 vi 편집기 실행 hello_shell.sh를 vi편집기로 열어준다. (hello_shell.sh 파일이 없을 경우 새로 생성) vi hello_shell.sh 2. script 작성 및 저장 !/bin/bash : shell 을 사용하겠다는 의미 echo “hello world”: hello world를 출력 exit 0 입력 후 esc를 누른 뒤 :wq 입력하여 저장 후 종료 3. 실행 권한 확인 및 권한 부여 ls 명령어를 통해 해당 파일의 권한을 확인해보면 실행 권한이 없을 것이다. chmod 755 “hello_shell.sh” 입력하여 실행 권한 부여하면 파일 소유자에게 실행 권한을 부여해준다. 4. 실행 bash 명령어를 사용하여 실행 해주었다. 정상적으로 동작하는 것을 확..
· devops
명령어 정리 cd: 디렉터리 이동 cd [PATH]”: 이동하려는 디렉터리로 이동 cd ~ : 홈 디렉터리로 이동 cd / : 최상위 디렉터리로 이동 cd . : 현재 디렉터리 cd .. : 상위 디렉터리로 이동 cd - : 이전 경로로 이동 ls: 현재 위치의 파일 목록 조회 ls -l **:** 파일의 상세정보 ls -a : 숨김 파일 표시 ls -t : 파일들을 생성시간순(제일 최신 것부터)으로 표시 ls -rt **:** 파일들을 생성시간순(제일 오래된 것부터)으로 표시 ls -f : 파일 표시 시 마지막 유형에 나타내는 파일명을 끝에 표시('/' : 디렉터리, '*' : 실행파일, '@' : 링크 등) *ll : 숨긴 파일과 함께 파일 상세정보 조회(ls -alF) rm: 파일 삭제 rm [fi..
kmindev
'Linux' 태그의 글 목록