일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- nestjs auth
- C++
- nestJS
- @Component
- nestjs typeorm
- 코테
- 해시
- 시스템호출
- 구조체배열
- 가상면접사례로배우는대규모시스템설계기초
- C언어
- AWS
- Spring
- 카카오 알고리즘
- thymeleaf
- 프로그래머스
- 알고리즘
- git
- 카카오 코테
- Nodejs
- 파이썬
- python
- @Autowired
- spring boot
- 코딩테스트
- OpenCV
- TypeORM
- 컴포넌트스캔
- 스프링
- 카카오
- Today
- Total
목록# Tech Studies/AWS (10)
공부 기록장 💻
문제 상황 최근 교내 축제 웹사이트 백엔드 Admin 서버를 Elastic Beanstalk으로, MySQL DB를 RDS로 배포한 후 서비스를 출시한지도 어느덧 약 일주일이라는 시간이 지났다. AWS로부터 점점 RDS 인스턴스 프리티어 만료에 따른 과금 메일이 지속해서 오고 있고 AWS Billing 청구서를 보니 점점 사비로는 감당하기 어려울 정도의 요금이 청구되고 있었다. 결국에 스냅샷을 저장하고 RDS 인스턴스를 삭제하기로 결정하였다. 아래와 같이 삭제를 눌렀는데, 이슈 발생 다음과 같은 이슈가 발생하였다. 삭제 방지 옵션이 활성화되어 있어 곧바로 인스턴스 삭제를 할 수가 없었다. 문제 해결 찾아보니, AWS는 데이터베이스가 예기치 않게 삭제되는 것을 방지하기 위해 인스턴스 구성에 '삭제 방지 활..
보호되어 있는 글입니다.
문제 상황 AWS에서 Elastic Beanstalk 환경을 구성하여 Spring Boot 프로젝트를 배포한 후, 배포된 URL로 접속했을 때 아래와 같이 502 Bad Gateway 오류가 나타나는 문제가 발생했다. HTTP 502 상태 코드 (Bad Gateway)는 CloudFront가 요청한 리소스들을 서빙할 수 없음을 나타내는 에러 코드인데 왜 발생하는 것일까? 원인 파악 아래 스택 오버플로에 명쾌한 답이 나와있었는데, ELB의 로드 밸런서의 nginx 가 기본적으로 포트 5000을 가리키고 있는 것이 원인이었다. https://stackoverflow.com/questions/54612962/502-bad-gateway-elastic-beanstalk-spring-boot 502 bad gat..
보호되어 있는 글입니다.
이전에 AWS RDS Management Console에서 MySQL 인스턴스를 생성해 보았고, 이제 MySQL Workbench 와 연결하여 GUI 환경에서 데이터베이스 내 테이블을 생성하고 쿼리문을 실행해보도록 하는 작업을 수행해보자. delimo 라는 DB 식별자의 RDS 인스턴스의 대시보드는 다음과 같다. MySQL Workbench Connection 이제 MySQL Workbench에서 New Connection 을 생성하자. Connection name에는 DB test 를 입력해주었고, Hostname 입력 창에 RDS 인스턴스의 엔드포인트를 복사하여 붙여넣도록 하자. Username 에는 RDS 인스턴스 생성 시 만들었던 마스터 사용자의 이름을 입력해주면 된다. 인스턴스 생성 시 만들었던..
문제 상황 AWS RDS에서 MySQL 인스턴스를 생성 완료했지만, 명령 프롬포트에서 해당 서버에 접속하려고 하니 아래와 같은 에러가 발생하였다. ERROR 2003 (HY000): Can't connect to MySQL server on 'endpointxxx.ap-northeast-2.rds.amazonaws.com:3306' (10060) 원인 파악 검색해보니 이 글 에서 정확한 원인과 해결 방법을 설명하고 있어, 큰 어려움 없이 해결할 수 있었다. Causes This error states that the inbound/outbound traffic from the AWS instance is not reachable to the current host where the MySQL client..
AWS에서 제공하는 RDS 서비스를 이용해, MySQL 인스턴스를 생성해보자. 데이터베이스 생성 표준 생성 방식으로 데이터베이스를 생성하자. 엔진 옵션 MySQL 엔진을 사용할 것이기 때문에, MySQL을 선택하자. 템플릿 프리티어 제품을 사용하도록 하자. 인스턴스 구성 버스터블 클래스가 자동ㅇ으로 선택되며, db.t3.micro 옵션(자동)을 지정하자. 설정 DB 인스턴스 식별자에 DB 이름을 적어주고, 마스터 사용자의 이름은 간단하게 admin으로 지정했다. 마스터 암호도 제약 조건에 맞게끔 입력해주었다. 추후 웹 애플리케이션 설정 정보 config에 입력해 할 정보들이므로, 위 3가지 정보는 따로 보관해두자. 스토리지 기본 값인 범용 SSD(gp2) 스토리지 유형과 할당된 스토리지 200GB를 지정..
AWS 에서 제공하는 Elastic Beanstalk 서비스를 이용하여 Java의 내부 메모리를 이용하여 데이터베이스를 대체한, 간단한 Java Spring Boot 기반 회원 예제 서비스 애플리케이션을 배포해보자. 이 글은 medium에서 작성된 이 기술 블로그 글 을 참고하였다. 우선 배포하고자 하는 Spring Boot 애플리케이션의 application.properties에서 server.port=5000 을 적어주자. (AWS EB 공식 문서 에 의하면, Elastic Beanstalk은 Apache HTTPD를 역방향 프록시를 사용하여 애플리케이션 포트 80의 Elastic Load Balancing 로드 밸런서에 매핑한다. 기본적으로 Elastic Beanstalk은 요청을 포트 5000의 ..
Elastic Beanstalk 이란? AWS에서 제공하는 서비스는 100여개 이상이 있고, 다양한 서비스는 AWㄴ 인프라 관리 방법의 유연성을 제공하고 있지만, 구체적으로 어떤 서비스를 사용해야 하는지, 해당 서비스를 어떻게 프로비저닝하는지 그 방법을 파악하는 것이 까다로울 수 있다. 여기서 프로비저닝(Provisioning) 이란, 사용자의 요구에 맞게 시스템 자원을 미리 준비하여 필요시 바로 사용할 수 있도록 세팅하는 과정을 말한다. Elastic Beanstalk (EB) 은 Java, .Net, PHP, Node.js, Python, Ruby, Go, Docker을 사용하여 Apache Tomcat, Ngnix, Passenger, IIS와 같은 친숙한 서버에서 개발된 웹 애플리케이션 및 서비스..
프로젝트 배포 실습 전, Windows 컴퓨터에서 AWS EC2 인스턴스 생성을 해보자. 인스턴스 생성 및 구성 정보 설정 인스턴스 시작을 눌러준다. 이제 인스턴스 구성 정보를 설정해보자. 첫 화면은 다음과 같다. 이름 및 태그 추가 태그 추가를 클릭하여 이름과 태그의 키, 값을 다음과 같이 작성해주자. 간단하게 Name, Role의 값들을 입력해주었다. 애플리케이션 및 OS 이미지(Amazone Machine Image) AMI 로는 Windows 를 선택하고, Microsoft Windows Sever 2019 Base (프리티어 사용 가능) 을 선택한다. 인스턴스 유형 인스턴스 유형 으로는 t2.micro (프리티어 사용 가능) 을 선택한다. Key Pair (Login) 새로운 Key pair 을..