로컬에서 개발한 프로젝트를,
git으로 개발서버에 옮겨 테스트하는 것까지 완료하였습니다.
운영서버로 올리기전, 운영서버의 트래픽을 동일하게 받지만-운영서버는 아닌 검증서버에서
최종 테스트를 진행한 후 운영으로 최종 commit할 예정인데요.
개발서버, 운영서버와 달리 검증서버는 git 파이프라인이 만들어져있어서
수작업으로 파일을 리눅스서버로 옮기게 되었습니다.
이전에 비슷한 작업을 진행할 때 Filezila라는 sftp 전송 프로그램으로 파일을 옮겼었는데요
비슷한 프로그램으로 최근에 사용하고있는 WinSCP 프로그램을 활용해서 옮겨보려 했으나..

(이렇게 GUI가 있는 프로그램이라, 마우스로 끌어 간편하게 서버로 옮길 수 있음)
검증서버가 GATEWAY 서버안에 연결되어 있어서, 바로 검증서버로 접근하지 못하고
GATEWAY로 경유해서 최종 검증서버로 파일을 옮겨야 했습니다.
로컬 cmd로 파일전송 -> GATEWAY가 받음 -> GATEWAY에서 검증서버로 파일전송 -> 최종 검증서버 도착
그래서, SCP로 직접 커맨드를 작성하여 전송하는 방법을 정리해보겠습니다.
프로그램은 cmd / XShell 8 Free 버전 사용했습니다.
📎서버 정보
파일을 복사할 서버정보를 준비합니다.
GATEWAY 서버정보 : 11.111.111.11:1111(id/pw)
검증 서버정보 : 222.22.2.222:2222(id1/ pw1, id2 / pw2)
📎폴더 생성
파일을 옮길 수 있도록, 옮겨질 장소에 폴더를 생성합니다.
1. Xshell : 11.111.111.11:1111 접속
게이트웨이에 접속했습니다.

2. 검증서버접속 : 커맨드 conn -> 36번 접속
게이트웨이에서 특정 서버에 접속했습니다. 저는 36번 검증서버(222.22.2.222)에 접속해서
폴더를 생성할 거에요.
3. 계정전환 : 폴더를 생성할 수 있는 권한이있는 계정으로 전환합니다.
su - 마스터계정 , pw : 마스터계정 비밀번호
4. 폴더생성하러 이동 : cd /svc/app/piggybank2/
5. 폴더생성 : mkdir -p /svc/app/piggybank2/piggy2-stat/bin, config, pid
프로세스를 돌리기 위해 필요한 파일들이 들어갈 각각의 폴더들을 생성해줍니다.
📎SCP 커맨드 파일전송
저는 프로젝트파일 1개 piggy2-stat.jar,
설정파일 2개 application-stg.yml, logback-spring-stg.xml
실행파일 1개 run.sh를 복사했습니다. run.sh 같은 경우에는 로컬이아닌 개발서버에서 복사해와서 vi로 수정했어요,
1. 로컬에서 파일전송
- cmd -jar파일 경로이동
scp -P 1111 service1-proc23.jar hura@11.111.111.11:/GATEWAY특정경로
- pw : GATEWAY 계정비밀번호
2. GATEWAY 접속
- Xshell : 11.111.111.11:1111 접속
- 계정전환 : su - 마스터계정 , pw : 마스터계정비밀번호
- cd /GATEWAY특정경로
3. GATEWAY에서 검증서버로 파일이동
- GATEWAY 특정경로 폴더에서, 검증서버에 만들어놓은 신규폴더로 파일이동
scp -P 2222 service1-proc23.jar hura@222.22.2.222:/svc/app/service1/service1-proc23/bin/
4. run.sh 파일
개발서버에서 옮긴 프로세스 실행파일은 아래내용으로 폴더경로, 설정파일명을 수정했어요.
HERE_PATH=/svc/app/service1/service1-proc23 #경로
SERVICE_NAME=service1-proc23
APP_NAME=service1-proc23
## Spring config
SPRING_OPTION="${SPRING_OPTION} -Dspring.config.location=../config/ -Dspring.profiles.active=stg" #config파일 설정
5. 검증서버접속 : 커맨드 conn -> 36번 접속
신규폴더를 생성했던 GATEWAY의 검증서버로 다시 들어갑니다.
6. 파일확인 : cd /svc/app/service1/service1-proc23/bin/
검증서버에 신규폴더에 파일이 잘 이동되었는지 확인합니다.
7. 서비스 재기동 : ./run.sh start -> pid 폴더에 파일생성 확인 -> ./run.sh status
./run.sh 파일에 프로세스 실행, 상태확인 명령어를 작성하여 프로세스가 정상 동작하는것까지 확인했어요.
이제 검증서버에서도 수정한 프로젝트 파일을 올려 테스트 해볼 수 있습니다.
'Coding > Back-end' 카테고리의 다른 글
OOM 분석 | heap dump 파일분석 - VisualVM, Eclipse MAT (0) | 2025.04.01 |
---|---|
VisualVM | 리눅스서버에 올린 프로세스에 붙어 모니터링하기 (1) | 2025.03.20 |
[Jmeter] 요청 전송주기 설정 라이브러리 - Timer 설정 (0) | 2025.03.13 |
[IntelliJ] AWS 프로젝트 Clone 하기 - CLI 명령어 | Console CodeCommit Repository (0) | 2025.03.10 |
[Jmeter] apache jmeter에서 host에 접근하지 못할때 | dev-kafka 오류 | di-kafkameter 오류 | jmeter timeout exception (0) | 2025.03.07 |