Criming
코딩으로 업삼기
Criming
전체 방문자
오늘
어제
  • 분류 전체보기 (29)
    • Programming (28)
      • Spring (5)
      • Database (2)
      • JSP (6)
      • Java (10)
      • 탐구 및 해결 (1)
      • 연습문제 (3)
      • 예제 (1)
    • 자격증 (0)
    • 기타 (1)
      • 블로그 운영 (0)
      • 문서 (1)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • try-catch
  • Java SE
  • System.out
  • printf()
  • main()
  • 인스턴스
  • sendRedirect
  • ec2
  • jsp
  • forward
  • jvm
  • Java EE
  • 아스키코드
  • Escape문자
  • jre
  • java
  • json
  • aws
  • param
  • spring
  • print()
  • Tomcat
  • JDK
  • redirect
  • 표현언어
  • Eclipse
  • ASCII
  • println()
  • HttpuURLConnection
  • 자바규칙

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Criming

코딩으로 업삼기

Programming/Spring

[AWS] Amazon EC2 인스턴스를 이용해 파일 업로드(연결)해보기

2022. 11. 2. 14:51

[참고 사이트]
https://6161990src.tistory.com/115

 

[AWS] SSH 키 등록 및 EC2 접속 방법

📍 AWS SSH 키 등록 AWS EC2 서비스 페이지에 접속 후. 네트워크 및 보안 섹션 하단의 키 페어를 선택하면 보이는 화면이다. 키 페어 이름 (ex. yoon) 과 유형, 형식을 사진과 같이 설정한 후 '키페어 생

6161990src.tistory.com


# AWS 준비하기

1. AWS(Amazon Web Services) 홈페이지에서 로그인 후 우측 상단에 [ 내 계정 ] > [ AWS Management Console ] 클릭
*새로운 계정 회원가입시 전화번호 등록이 안되면 모바일로 가입해보기 추천드립니다.

2. 아마존 서버 위치 서울로 변경 후 검색창에 [ EC2 ] 클릭

3. EC2 인스턴스 설정하기
1) [ EC2 대시보드 ] > [ 인스턴스 시작 ]
2) 인스턴스 이름, AMI, 키 페어(새 키페어 생성시 설정한 파일 형식으로 다운된 파일은 키값임으로 주의), 네트워크 등등 설정하기
*네트워크 설정시 보안 그룹 생성을 선택하면 [ 보안 그룹 ] 에서 생성된 것을 확인할 수 있다.
EX) 인스턴스 이름 : 부트서버
AMI : 우븐트(Ubuntu), Ubuntu Server 18.04 LTS (HVM), SSD Volume Type(프리티어 사용가능) 선택
(새 키페어 생성) 키 페어 이름 : bootServer / 키페어 유형 : RSA / 키 파일 형식 : .pem
네트워크 설정 : 방화벽 - 보안 그룹 생성, IP 어디서든(Anywhere) 사용 가능하게 설정, Http와 Https 트래픽 허용 선택
나머지는 기본값으로 설정

새 키페어 생성시 설정한 파일 형식으로 다운된다

4. 생성한 인스턴스 IP 확인하기 : [ EC2 ] > [ 인스턴스 ]
* IPv4 주소는 인스턴스 재시작할 때마다 바뀌므로 주의

5. 생성한 보안그룹 포트변호 변경하기
[ 보안 그룹 ] > [ 생성한 보안 그룹 ID 클릭 ] > [ 인바운드 규칙 편집 ] > 첫번째 보안 그룹 규칙 ID의 포트 범위 '8888'로 변경
(추후 인스턴스 우분트 서버의 톰캣에 연결할 포트 설정과 동일)


# 생성한 인스턴스 서버(Ubuntu) 환경 설정 및 톰캣 연결

1. SSH로 키페어로 우븐트 인스턴스 서버IP 연결하기
▶ ssh -i "bootServer.pem" ubuntu@[ 퍼블릭 IPv4 DNS ]
*키페어 파일에 없다는 에러 발생시, 해당 유저 계정 c드라이브에 생성된 ssh 파일에 키 페어 파일이 넣고 다시 코드 작성하여 연결하기
*시큐어 셸(Secure SHell, SSH)은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜을 가리킨다.

연결하겠는지 재차 물어보면 "Are you sure you want to continue connecting (yes/no/[fingerprint])?"
▶ yes입력


2. 서버 패키지 최신화 업데이트하기
(하단부터는 우분트 서버에서 입력하는 명령문들 입니다.)
▶ sudo apt update


3.JDK 다운로드 및 구성하기(환경변수 설정)
▶ sudo apt install openjdk-8-jdk

▶ sudo vim /etc/profile
해당 코드를 입력하면 시스템과 관련된 디렉토리들이 열린다.
입력(insert) 상태로 바꾸려면 o키를 눌러준면 된다.
제일 하단에 "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/" 를 입력하고 저장하여 나와준다.
(저장) ESC키 후 :wq 입력해주세요.
(저장하지 않고 나오기 ) ESC 키 누른 후 :q!

▶ tail -1 /etc/profile
잘 삽입되었는지 확인하기


4. 톰캣 계정 및 그룹 생성
▶ sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat
톰캣 서버 관리할 계정 및 그룹 생성된다.
(확인)
▶ sudo tail -5 /etc/shadow
▶ sudo tail -5 /etc/group

▶ wget http://mirror.apache-kr.org/tomcat/tomcat-9/v9.0.68/bin/apache-tomcat-9.0.68.tar.gz
톰캣 파일 다운로드 한다.

▶ sudo tar -xf /home/ubuntu/apache-tomcat-9.0.68.tar.gz -C /opt/tomcat
▶ cd /opt/tomcat
▶ sudo mv apache-tomcat-9.0.68/ tomcat-9
톰캣 파일 압축 해제 후 디렉토리 명 변경


5. 톰캣 bin 폴더 내 sh 확장자 같은 파일 실행권한 부여
▶ sudo sh -c 'chmod +x /opt/tomcat/tomcat-9/bin/*.sh'


6. 톰캣 서비스 포트 변경
▶ sudo vim tomcat-9/conf/server.xml
해당 코드를 입력하면 시스템과 관련된 디렉토리들이 열린다.
입력(insert) 상태로 바꾸려면 o키를 눌러준면 된다.
해당 코드만 원하는 포트 넘버로 변경 <Connector port="8888" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
(저장) ESC키 후 :wq 입력해주세요.
(저장하지 않고 나오기 ) ESC 키 누른 후 :q!


7. 톰캣 서비스 등록 파일 구성(아래 코드블럭에 있는 코드 전체 복사하여 디렉토리 열리면 입력하여 저장)
▶ sudo vim /etc/systemd/system/tomcat.service

[Unit]
Description=Tomcat 9 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"

Environment="CATALINA_BASE=/opt/tomcat/tomcat-9"
Environment="CATALINA_HOME=/opt/tomcat/tomcat-9"
Environment="CATALINA_PID=/opt/tomcat/tomcat-9/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/tomcat-9/bin/startup.sh
ExecStop=/opt/tomcat/tomcat-9/bin/shutdown.sh

[Install]
WantedBy=multi-user.target


8. 톰캣 서비스 등록 및 서비스 시작
▶ sudo systemctl daemon-reload
▶ sudo systemctl status tomcat
Active: inactive (dead) <-- 톰캣 서비스 종료 상태

▶ sudo systemctl start tomcat
▶ sudo systemctl status tomcat
Active: active (running) <-- 톰캣 서비스 실행 중 상태

9. 톰캣 시작 후 웹브라우저로 접근 확인하기
웹브라우저 url : http://[ 퍼블릭 IPv4 DNS ]:[ 우분투 톰캣 설정 포트넘버]
예시) http://ec2-13-209-22-234.ap-northeast-2.compute.amazonaws.com:8888/


# 파일 인스턴스 서버에 업로드하기

1. 우븐트 서버에 업로드할 프로젝트 패키징하기
> 원하는 프로젝트 우클릭하여 [ Run As ] > [ Maven build ] 클릭하여 패키징
> 패키징된 파일(war)는 해당 프로젝트 파일 경로에 target파일 안에 생성됨.


2. 우분트 서버 'webapps' 파일 생성하기
(경로 변경)
▶ cd /opt/tomcat/tomcat-9

▶ sudo mkdir webapps

3. webapp 파일 권한주기
(경로 변경)
▶ cd /opt/tomcat/tomcat-9
▶ ubuntu@ip-172.31.46.131:/opt/tomcat/tomcat-9$ sudo chmod 777 webapps
(확인하기)
▶ ubuntu@ip-172.31.46.131:/opt/tomcat/tomcat-9$ sudo ls -al webapps/

3. Window 명령 프롬프트(CMD)에 업로드하기
▶ scp -i [pem파일경로] [업로드할 파일 이름] [ec2-user계정명]@[ec2 instance의 public DNS]:~/[경로]

예시)
scp -i bootServer.pem C:\Javas\boot_workspace\boot\target\boot.war ubuntu@ec2-13-209-98-174.ap-northeast-2.compute.amazonaws.com:/opt/tomcat/tomcat-9/webapps


4. 업로드한 웹브라우저로 접근 확인하기
웹브라우저 url : http://[ 퍼블릭 IPv4 DNS ]:[ 우분투 톰캣 설정 포트넘버]/업르드한 파일명
*경로 잘 확인후 URL 작성하여 확인하기
예시) http://ec2-13-209-22-234.ap-northeast-2.compute.amazonaws.com:8888/boot/

'Programming > Spring' 카테고리의 다른 글

[Spring] 카카오 Login API 사용하기  (0) 2022.10.26
[Spring] 로그인 메일 인증번호 발송하기  (0) 2022.10.25
[Spring] 스프링을 시작하며...(2) Spring Legacy Project 세팅하기  (0) 2022.10.24
[Spring] 스프링을 시작하며...(1) 스프링 개발환경 세팅하기  (0) 2022.10.19
    'Programming/Spring' 카테고리의 다른 글
    • [Spring] 카카오 Login API 사용하기
    • [Spring] 로그인 메일 인증번호 발송하기
    • [Spring] 스프링을 시작하며...(2) Spring Legacy Project 세팅하기
    • [Spring] 스프링을 시작하며...(1) 스프링 개발환경 세팅하기
    Criming
    Criming

    티스토리툴바