Cộng đồng Hỏi & Đáp của Inflearn
aws에서 msyql,nginx,certbot다 설치하기
Viết
·
41
·
Đã chỉnh sửa
0
선생님!
ec2하나에 nginx,certbot으로 https가능하게 하고 mysql까지 설치하는 방식이 초보자에게 가장 단순하고 고치기 쉬운 구조라고 들었습니다. 저는 현재 마이크 기능, 채팅기능,websocket이 포함되어있는 학부 졸업 프로젝트(리액트+스프링)를 진행중입니다. (음성통화기능, redis가 추가될 예정입니다.) aws를 처음 배우는 상황이며 간편하게 aws연동을 끝내고 싶은 상황에서 앞서 언급된 방식이 적절할까요?
Câu trả lời 2
0
안녕하세요 ! 질문 너무 잘해주셨어요 !
질문해 주신 내용에 대해 답변드려볼게요 ~
말씀하신 대로 EC2 하나에 Nginx, Certbot, MySQL을 모두 설치하는 방식은 초보자 입장에서 가장 단순하고 이해하기 쉬운 구조가 맞아요 ! 특히 학부 졸업 프로젝트처럼 빠르게 배포하고 완성하는 게 목표인 상황에서는 충분히 좋은 선택이라고 생각해요 !
다만 몇 가지 고려하시면 좋을 점들이 있어요!
우선 WebSocket, 마이크 기능, 채팅 기능이 포함되어 있다고 하셨는데, 이런 실시간 통신 기능들은 서버 리소스를 꽤 많이 사용하는 편이에요 !
그래서 EC2 인스턴스의 성능(CPU, 메모리)을 넉넉하게 선택하시는 게 좋을 것 같아요! 프리티어의 t2.micro는 테스트용으로는 괜찮지만, 실제 여러 명이 동시에 사용하는 상황에서는 버거울 수 있어요 ~
그리고 음성통화 기능과 Redis가 추가될 예정이라고 하셨는데, 하나의 EC2에 모든 걸 올리면 관리는 편하지만 나중에 특정 기능에 문제가 생겼을 때 전체 서비스에 영향을 줄 수 있다는 점도 참고하시면 좋아요 ! 하지만 졸업 프로젝트 목적이라면 이 정도 리스크는 충분히 감수할 만하다고 생각해요 ! MySQL도 같은 EC2에 설치하시는 건 괜찮은데, 데이터베이스는 정기적으로 백업을 해두시는 게 안전해요 :)
결론적으로 AWS를 처음 배우시는 상황에서 빠르게 졸업 프로젝트를 완성하는 게 목표라면 말씀하신 방식으로 진행하셔도 충분해요 !
나중에 실제 서비스를 운영하거나 더 큰 규모의 프로젝트를 하실 때는 RDS(데이터베이스 분리), Load Balancer, Auto Scaling 같은 걸 고려하시면 되구요 !
추가로 궁금하신 점 있으시면 언제든 편하게 질문 남겨주세요~~
-1
안녕하세요, 인프런 AI 인턴입니다. peter님.
AWS에서 RDS를 사용하지 않고 MySQL을 직접 설치하는 방식은 기존에 많이 시도된 방법으로, 구글 검색이나 AI 도구(예: ChatGPT, Gemini)의 안내를 받으면 충분히 가능하다고 볼 수 있습니다. 아래에 peter님의 질문에 대한 답변과 조언을 드립니다.
AWS에서 MySQL 직접 설치하기
장점:
- 비용 절감: AWS RDS를 사용하지 않을 경우 RDS의 관리 비용이 발생하지 않으므로 비용을 절감할 수 있습니다.
- 더 많은 제어 가능: 직접 MySQL을 설치하면 데이터베이스의 설정과 최적화에 대한 더 많은 제어 권한을 가지게 됩니다.
- 비용 절감: AWS RDS를 사용하지 않을 경우 RDS의 관리 비용이 발생하지 않으므로 비용을 절감할 수 있습니다.
단점:
- 관리 부담: 백업, 복구, 보안 패치와 같은 유지보수 작업은 수동으로 처리해야 하며, 이는 추가적인 관리 부담을 느끼게 할 수 있습니다.
- 높은 초기 설정 시간: 처음 설치하고 설정하는 데 시간이 더 소요될 수 있습니다.
- 관리 부담: 백업, 복구, 보안 패치와 같은 유지보수 작업은 수동으로 처리해야 하며, 이는 추가적인 관리 부담을 느끼게 할 수 있습니다.
프로젝트 구성 제안
- EC2에 Nginx, Certbot 및 MySQL 설치:
- 계획대로 하나의 EC2 인스턴스에 Nginx, Certbot, MySQL을 설치하는 것은 가능합니다. 하지만, 서버 리소스가 제한적일 수 있으니, 적절한 인스턴스 크기를 선택하고 자원을 감시하면서 진행하는 것이 좋습니다.
- 계획대로 하나의 EC2 인스턴스에 Nginx, Certbot, MySQL을 설치하는 것은 가능합니다. 하지만, 서버 리소스가 제한적일 수 있으니, 적절한 인스턴스 크기를 선택하고 자원을 감시하면서 진행하는 것이 좋습니다.
- Redis 설정:
- Redis는 캐시나 휘발성 데이터 저장용으로 적합하므로, EC2 내에 Docker 컨테이너로 구동하는 것을 제안드립니다.
- Redis는 캐시나 휘발성 데이터 저장용으로 적합하므로, EC2 내에 Docker 컨테이너로 구동하는 것을 제안드립니다.
RDS의 비사용에 대한 고려
- 프로젝트의 성격상 당장 실 사용자들이 사용하는 환경이 아니며, 비용 절감을 우선시 한다면 RDS의 자동화 이점(백업, 성능 모니터링 등)을 포기하고 직접 관리하는 방법도 나쁘지 않습니다.
추가 고려사항
- 보안: 인스턴스에서 직접 관리하는 경우, 보안 패치와 방화벽 설정 등을 철저히 관리해야 합니다.
- 별도의 테스트 환경 구축: 개발과 실서비스 운영 환경을 구분하여 테스트하는 것이 더 바람직할 수 있습니다.
유사 질문 사례에서 더 많은 정보를 참고하실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.




