[Spring] 5주차 - AWS EC2(서버) / RDS(데이터베이스)

smjan27·2021년 11월 8일
0

Spring Boot

목록 보기
9/9

스프링 부트와 AWS로 혼자 구현하는 웹 서비스 - 06, 07장

[6장] AWS 서버 환경을 만들어보자 - AWS EC2

  • AWS EC2(Elastic Compute Cloud)란: AWS(Amazon Web Services)에서 제공하는 성능, 용량 등을 유동적으로 사용할 수 있는 서버

  • AWS EC2 인스턴스 생성, 탄력적 IP 생성 및 연결
    image
    🚨 Amazon Linux 1 AMI 지원이 종료되어 Amazon Linux 2 AMI로 인스턴스 생성

  • 윈도우에서 EC2 접속
    image

  • 아마존 리눅스 2 서버 설정

    • Java 8 설치
      image
    • 타임존 변경: 한국 시간으로
    • Hostname 변경: 현재 접속한 서버의 별명 등록
      image
      🚨 Amazon Linux 2 AMI이므로 교재의 1 버전과 명령어와 달랐습니다. 참조
      sudo hostnamectl set-hostname freelec-springboot2-webservice
    • /etc/hosts에 변경한 hostname 등록

[7장] AWS에 데이터베이스 환경을 만들어보자 - AWS RDS

  • RDS(Relational Database Service): AWS에서 지원하는 클라우드 기반 관계형 데이터베이스

    • 운영 작업 자동화 -> 개발에 집중 가능
    • 조정 가능한 용량 지원 -> 예상치 못한 양의 데이터가 쌓여도 비용만 내면 정상적으로 서비스 가능
  • RDS 인스턴스 생성

    • MariaDB: MySQL 기반의 오픈소스 데이터베이스
      • 장점: 저렴한 가격, 성능이 높은 Amazon Aurora로의 교체 용이
      • Amazon Aurora: AWS에서 MySQL과 PostgreSQL을 클라우드 기반에 맞게 재구성한 데이터베이스
  • RDS 운영 환경에 맞는 파라미터 설정

    • utf8과 utf8mb4의 차이: utf8mb4는 이모지 저장 가능
  • RDS의 보안그룹 인바운드에 EC2에서 사용된 보안 그룹 추가 = RDS, 내 PC, EC2 간 연동 작업

    • Intellij에서 오류 발생하여 워크벤치에서 연결
      image
    • RDS 파라미터 그룹 변경
      image
    • 타임존 확인
      image
    • 한글 데이터 등록 확인
      image
  • EC2에서 RDS에서 접근 확인

    • putty로 ssh 접속, mysql 설치, RDS 접속
      image
      => 데이터베이스 확인 완료!

느낀 점

  • 과금을 막고자 기존에 있던 AWS Educate을 활용하려 했으나.. 2년 전에 만들어서 크레딧이 만료되었다. 하지만 책에 나온 대로 AWS 계정을 만들어서 덜 헤맸다. 꼭 독자적으로 시도하면 잘 안되어서..💧
  • 세부적인 설정 창이 책과 달라서 헷갈렸다. 그리고 인텔리제이와 db 연동도 실패했는데, 같은 팀원 분께서 mysql 워크벤치를 활용하시는 것을 보고 무사히 마칠 수 있었다. 혼자 했을 때보다 덜 헤매도 되어서 너무 고맙고, 다음 주는 블로그 작성 담당으로서 꼭 일찍 해서 미리 트러블 슈팅을 겪고(?) 도움을 먼저 주고 싶다.
  • 서버운영및보안 수업을 통해 리눅스 명령어를 배워서 제일 뿌듯했던 시간이었다.
profile
No Stress🎈 Be Happy✨

1개의 댓글

comment-user-thumbnail
2021년 11월 24일
답글 달기