개발을 위해 외부에 Back-end 환경구성을 해보았다
기본적으로 EC2에 Tomcat, MariaDB, SSL인증서, Redis, RabbitMQ로 구성하고
도메인은 duck dns 가입 및 무료 도메인 신청하여 사용
1. AWS EC2 서버 구성
- 인스턴스 유형 : Ubuntu 22.04.1 LTS, t2.large, 200G
- 고정IP : AWS에서 고정IP 추가
- SSH 접속시 ID/Password로 할수있게 설정
sudo vi /etc/ssh/sshd_config
> PasswordAuthentication yes 주석풀기
sudo systemctl restart sshd
- locale : Asia/Seoul /LANG=ko_KR.UTF-8
- Installed Program :
- Apache Tomcat/9.0.58
- OpenJdk8/1.8.0_342-8u342-b07-0ubuntu1~22.04-b07
- MariaDB/10.6.7-MariaDB-2ubuntu1.1
- Let's Encrypt/ SSL인증서
- Redis/6.0.16
- RabbitMQ/3.9.13
2. Nginx 구성
- 기본접속 : https://xxxxxx.duckdns.org (443)
- http 접속시 https 전환 (80->443 리다이렉트)
- 443(80) 접속시 tomcat9 server(port:8080) proxy pass
- client_max_body_size 100M 설정
3. Tomcat 구성
- 기본접속 : http://AWS고정아이피:8080
- 어플리케이션 매니저 접속 : http://AWS고정아이피:8080/manager/html (어드민아이디/비밀번호설정)
- war파일 배포, 어플리케션 경로배치, 시스템진단, 서버정보, 접속세션확인
- Spring : Spring/5.3.8 Release(Spring Boot 2.3.8.RELEASE)
- logback, mybatis, gson, lombok, swagger
4. MariaDB 구성
- 내부/외부접속 : IP: AWS고정아이피, Port:3306, user:외부접속 아이디/패스워드 설정
- 테스트용 데이타베이스 : 데이타베이스생성 > 테이블임시생성
- max_connections : 300
- character set : utf8mb4
- system_time_zone : KST
5. Redis 구성
- 내부/외부접속 : host: AWS고정아이피, port: 6379
- 메모리설정 : maxmemory 1g, maxmemory-policy allkeys-lru(메모리를 초과할 시 가장 오래된 데이터를 지워서 메모리를 확보)
6. RabbitMQ 구성
- AMQP 를 사용한 메시지 전달 : host: AWS고정아이피, port: 5672
- 외부어드민접속: http://AWS고정아이피:15672
- 기본접속 : http://AWS고정아이피:8080
- 어플리케이션 매니저 접속 : http://AWS고정아이피:8080/manager/html
- war파일 배포, 어플리케션 경로배치, 시스템진단, 서버정보, 접속세션확인
- Spring : Spring/5.3.8 Release(Spring Boot 2.3.8.RELEASE)
- logback, mybatis, gson, lombok, swagger
7. 개발접속 테스트화면예시
swagger 페이지에서 서버 호출 테스트
테스트결과
AWS WEB/WAS 환경을 간단하게 구성해보았다.
무료 micro ec2 할경우 서버용량부족으로 예기치 않는 오류가 많이 발생하므로 비용이 조금 들더라도 성능이 나오는 EC2를 사용하는것을 추천한다.
'관심분야 > 클라우드' 카테고리의 다른 글
#10 TTS 정보 조회 및 MP3 듣기, 다운로드 - AWS 음성지원 서비스를 활용한 신문 읽어주는 프로젝트 (0) | 2019.11.23 |
---|---|
#9 번외편 : DynamoDB 조회 - AWS 음성지원 서비스를 활용한 신문 읽어주는 프로젝트 (0) | 2019.11.23 |
#8 Client to Lambda - AWS 음성지원 서비스를 활용한 신문 읽어주는 프로젝트 (0) | 2019.11.23 |
#7 Lambda를 활용한 Polly 호출 - AWS 음성지원 서비스를 활용한 신문 읽어주는 프로젝트 (0) | 2019.11.23 |
#6 Lambda Function 작성 - AWS 음성지원 서비스를 활용한 신문 읽어주는 프로젝트 (0) | 2019.11.23 |