클라우드

쿠폰 선착순 발급 이벤트 - 서버 배포

whyHbr 2024. 12. 9. 22:19
728x90
반응형

AWS 의 RDS, Elastic Cache, EC2를 세팅할것이다.

 

 


Elastic cache - 시작하기 - redis 설정

 

configuration - design your own cache

creation mode - Cluster mode

cluster mode - disable

cluster info - name: coupon

 

 

next - next - create 생성.


RDS 

rds - db instance - create dababase

engine option: MySql

Templates - Free tier

Setting - db instance identifier: coupon( 맘대로 설정)

Master password: admin1234

public access - YES

create database


EC2 

Lanch instace

 

name:coupon-api

application and os images: ubuntu

amazon machine image - free tier 암거나

instance type: t2micro (free tier)

key pair: 없이 진행

network settings - 

\

같은 스펙으로 coupon-consumer, redis-test instance 도 만들어준다.


 

로컬 DBMS 툴로 AWS RDS 에 접근해보자

 

RDS - databases - coupon 의 endpoint 를 복사.

 

intellij - database- data source - MySql

localhost: endpoint 


데이터 생성

 

intellij 에서 coupon-prod console 을 실행

create database coupon;
use coupon;

coupon db를 생성, 사용한다.

후, 기존 테이블 (coupon, coupon_issue) 를 생성한다.

 

이렇게 하면  aws 환경에 db를 세팅하는게 끝난다. 


redis-test 서버 띄우기

 

 

Elastic cache reader end point copy,

redis-test connect - EC2 instance connect

 

서버 접속 후,

sudo apt update
sudo apt install redis-tools

 

Elastic Cache - coupon의 primary endpoint 참고해

redis-cli -h coupon.4uqyik.ng.0001.apn2.cache.amazonaws.com -p 6379
//redis 서버를 연결하는 명령어이다.

 

ubuntu@ip-172-31-10-113:~$ redis-cli -h coupon.4uqyik.ng.0001.apn2.cache.amazonaws.com -p 6379                    redis-cli -h coupon.4uqyik.ng.0001.apn2.cache.amazonaws.com -p 6379
coupon.4uqyik.ng.0001.apn2.cache.amazonaws.com:6379> 
//이런 상태가 되면 연결 된 것

 

명령어 사용해 잘 되는지 확인


coupon-consumer, api 서버 띄우기

 

위와 같이 sudo apt update 로 업데이트 해준다.

 

여기선 Java applicaiton을 실행 할 수 있는 환경을 구축해야 한다.

sudo apt install openjdk-17-jre

 

git clone https://github.com[]
//깃클론을 해준다.

cd coupon-version-management/

 

현재 yml 파일은  gitHub 에 올라가있지 않기 때문에

nano coupon-core/src/main/resources/application-core.yml
 //yml 파일 붙여넣기 후, ctrl O -> enter -> ctrl X 
 
 
 ls coupon-core/src/main/resources/
//파일이 저장되었는지 확인한다.

 

빌드를 진행한다.

./gradlew build -x test

//Permission denied 에러가 있다면
chmod +x ./gradlew​

 

coupon-api 도 동일하게 진행해준다.

 

둘 다 build successful 이라면 conumser 에서 applicaiton 을 실행해본다.

cd coupon-consumer/build/libs& java -jar coupon-consumer.jar --spring.profile.actice=prod

 

 api 서버도 띄워준다.

cd coupon-api/build/libs& java -jar coupon-api.jar --spring.profiles.actives=prod
728x90

'클라우드' 카테고리의 다른 글

클라우드 컴퓨팅이란  (0) 2024.11.12