728x90
반응형

AWS/실습 기록 15

AWS ElastiCache Redis 생성 및 Python 연동 방법 알아보기(feat. Pycharm)

1. ElastiCache Redis 란? ElastiCache는 클라우드에서 인메모리 데이터 스토어 또는 캐시를 손쉽게 배포, 운영 및 확장할 수 있게 해주는 웹 서비스이다. ElastiCache는 클러스터 엔진으로 Memcached와 Redis를 지원한다. Redis는 인메모리 DB이다. RDBMS가 파일에 데이터를 저장하는 것에 비해 인메모리 DB는 메모리에 데이터를 저장하기 때문에 RDBMS에 비해 속도가 빠르다. RDBMS의 부하를 덜어주기 위해 Redis를 많이 사용한다. Redis는 String, Hash, List, Set, Sorted Set 등 다양한 데이터 형식을 제공하는 키-값(Key-Value) 데이터 저장소라고 할 수 있다. 2. Memcached와 Redis 비교 Memcach..

AWS/실습 기록 2021.09.24

AWS RDS를 사용해 MySQL과 Python 연동 (feat. Pycharm)

먼저 아래 게시물을 참고해 AWS RDS 데이터베이스를 생성한다. https://daeunnniii.tistory.com/152 AWS RDS 데이터베이스 생성과 설정 방법 RDS란? RDS는 AWS에서 관계형 데이터베이스를 더욱 쉽게 설정, 운영 및 확장할 수 있도록 지원하는 웹 서비스이다. 직접 운영하기 까다로운 RDBMS를 관리해준다. 비용은 조금 들 수 있지만 서비스 운 daeunnniii.tistory.com 1. Pycharm에서 RDS 데이터베이스 접속 먼저 오른쪽 Database 버튼을 눌러 다음과 같이 MySQL을 선택 RDS에서 생성한 데이터베이스를 클릭하면 엔드포인트를 확인할 수 있다. 그 부분을 복사해서 Pycharm의 Host 부분에 입력해준다. Name은 원하는대로 이름을 입력하..

AWS/실습 기록 2021.09.24

AWS RDS 데이터베이스 생성과 설정 방법

RDS란? RDS는 AWS에서 관계형 데이터베이스를 더욱 쉽게 설정, 운영 및 확장할 수 있도록 지원하는 웹 서비스이다. 직접 운영하기 까다로운 RDBMS를 관리해준다. 비용은 조금 들 수 있지만 서비스 운영 시 개발에만 집중하게 해준다는 장점이 있다. RDS 더 알아보기: https://docs.aws.amazon.com/rds/?id=docs_gateway RDS 생성하기 먼저 RDS 서비스에 들어간다. "데이터베이스 생성"을 클릭한다. 먼저 데이터베이스 생성 방식을 선택한다. 표준생성은 사용자가 구성을 직접 설정해 보는 방법이고, 손쉬운 생성은 권장하는 구성을 사용하는 방법이다. 아래 엔진 옵션은 Amazon Aurora를 사용하면 좋겠지만, 프리티어 적용이 안되므로 MySQL을 선택하였다. 그다음..

AWS/실습 기록 2021.09.23

ElasticBeanstalk를 활용하여 서버 구성 자동화하기

이전 게시물에서 ELB와 Auto Scaling 설정 방법을 살펴보았다. 하지만, 이렇게 따로 관리하면 설정 값도 많고, 매우 까다로운 것을 느꼈을 것이다. 그래서 AWS에서는 통합해서 관리할수 있는 서비스인 ElasticBeanstalk를 제공하고 있다! 구글의 앱 엔진 서비스와 비슷하게 환경에는 신경 쓸 필요없이 간단한 옵션만 조절하고, 애플리케이션만 배포하면 되는 형태이다. ElasticBeanstalk라는 이름이 길어서 보통 EB라고 부른다. ElasticBeanstalk 생성하기 "Create Application"을 클릭한다. 애플리케이션 이름을 입력하고, 태그는 생략해도 된다. 테스트용이므로 태그는 넘어갈 것이다. 플랫폼은 구축하려는 언어로 Java, Go, PHP 등을 선택할 수 있다. 현..

AWS/실습 기록 2021.09.18

AWS 로드밸런서(ELB) 및 Auto Scaling 설정 방법 알아보기

로드밸런서(ELB)란? 앞에서 탄력적 IP를 활용하여 고정된 IP 주소를 각 EC2 인스턴스에 부여하는 방법을 알아보았다. 하지만 이러한 방법은 문제점이 있다. 하나의 인스턴스에 하나의 도메인만 연결할 수 있다는 것이다. 그런데 서버에 많은 사람들이 몰려 많은 트래픽이 발생한다면 서버의 사양을 올리는 스케일업, 서버의 개수를 늘리는 스케일아웃을 고려해야한다. 만약 스케일아웃을 한다면 서버가 늘어날 때마다 도메인이 새로 필요하게 된다. 로드밸런서(ELB)는 서비스 중에 EC2의 성능이 부족한 경우 한 곳의 엔드포인트로 들어오는 트래픽을 각 인스턴스에 분산시켜준다. ELB의 특징은 다음과 같다. 💡 트래픽 분산 💡 자동 확장 💡 인스턴스의 상태를 자동 감지해서 오류가 있는 시스템은 배제 💡 사용자 세션을 특..

AWS/실습 기록 2021.09.17

AWS EC2 탄력적 IP 사용하기 (EC2 IP주소 고정하기)

EC2 인스턴스를 계속 켜놓으면 요금이 부과되므로 인스턴스를 중지해놓았다가 다시 시작하는 경우가 종종 있다. 그런데 재부팅하면 퍼블릭 IP 주소가 계속 변경되는 것을 확인할 수 있다. 이때 탄력적 IP를 활용하면 IP주소를 고정시킬 수 있다. 탄력적 IP 주소 할당 버튼을 클릭하여 아래와 같이 설정하고 "할당"을 클릭한다. 탄력적 IP 주소가 잘 할당되었다. 이제 할당된 IPv4 주소를 클릭한다. 탄력적 IP 주소 연결로 들어간다. 이제 탄력적 IP 주소를 연결할 인스턴스를 선택해준다. 설정 완료 후 "연결" 버튼을 클릭하면 해당 EC2 인스턴스에 고정 IP 주소가 부여된다. 이제 인스턴스를 중지했다가 다시 시작해도 IP 주소가 바뀌지 않는다.

AWS/실습 기록 2021.09.17

AWS CloudFront과 S3 연동 방법 알아보기

CloudFront란? AWS CloudFront는 정적, 동적 컨텐츠를 빠르게 응답하기 위한 캐시 기능을 제공하는 CDN 서비스이다. 캐싱을 지원하기 때문에 S3에 저장된 컨텐츠를 직접 접근하지 않아도 되므로 S3의 비용이 감소하며, 더 빠른 응답을 지원하므로 꼭 함께 적용해주는 것이 좋다. 이전에 S3 버킷을 생성하여 HTML 파일을 올리고, 정적 호스팅 기능을 사용하여 웹 페이지를 배포해보았다. 그런데 만약 S3를 사용해서 www.example.com 도메인으로 글로벌 서비스를 해야하는 상황이라고 해보자. S3 버킷은 생성할 때 리전이 정해져있다. 서울 리전에 있는 버킷을 호스팅 기능을 이용해서 미국에 서비스 한다고 하면 사이트가 매우 늦게 뜰 것이다. 그러면 서비스하는 나라의 가까운 리전마다 똑같..

AWS/실습 기록 2021.09.17

Boto3를 활용한 AWS S3 파이썬 연동 및 S3 정적호스팅 기능을 활용해 외부에 공개하기(feat. S3 비용 계산)

Boto3을 활용한 Python과 AWS 연동 먼저 터미널에 'pip install boto3'을 입력하여 boto3이라는 패키지를 설치한다. boto3은 aws와 연동하기 위해 사용하는 라이브러리이다. 간단하게 아래 웹페이지에서 파일 업로드 및 저장을 클릭할 경우, AWS S3에 파일이 자동으로 저장되도록 구현할 것이다. 아래는 boto3을 활용하여 파이썬과 AWS S3를 연동하는 코드이다. Flask를 사용하였고, Bucket="{버킷이름}"에서 {버킷이름} 대신 S3와 연동할 버킷 이름을 넣어주면 된다. import boto3 #aws와 연동하기 위해 사용하는 라이브러리 from flask import Flask, render_template, request, jsonify app = Flask(_..

AWS/실습 기록 2021.09.17

IAM을 이용하여 AWS SDK 활용한 S3 파일 업로드하기

IAM이란? IAM은 Identity and Access Management의 약자로, AWS의 리소스에 대한 개별적으로 접근제어와 권한을 가지도록 계정 또는 그룹을 생성, 관리하는 서비스이다. 어떤 IAM 계정은 EC2 서비스만 접근할 수 있도록 권한을 부여하고, 다른 IAM 계정은 S3 서비스만 접근할 수 있도록 권한을 나눌 수 있다. IAM 계정이 없다면 AWS 계정 자체가 모든 서비스에 대한 권한이 있기 때문에 보안상 취약하다. 따라서 IAM 계정을 생성해서 각 IAM 계정에 필요한 권한만 갖도록 설정할 수 있다. 또한 IAM 계정은 access key를 개별적으로 관리할 수 있기 때문에 보안성이 높아진다. 1. IAM 사용자 생성 사용자 추가 먼저 IAM으로 들어간다. 그리고 "사용자"로 들어가..

AWS/실습 기록 2021.09.16

AWS를 사용하는 기업 사례 알아보기 - 넷플릭스

1. 클라우드란 무엇인가? AWS는? 클라우드는 기존의 서버 컴퓨팅 시장을 빠르게 대체하는 산업이다. 클라우드의 성장으로 인해 인프라 아키텍트의 수요가 늘고있고, IT 어떤 분야 보다 임금 또한 가파르게 상승하고 있다. 이전에는 직접 데이터센터나 기계실을 보유하여 온프레미스 환경에서 가동시키던 서버들을 클라우드 상의 가상 인스턴스로 옮기고, 데이터베이스나 네트워크와 같은 클라우스 서비스를 이용하는 형태로 변경되고 있다. 클라우드는 우리가 만든 서비스를 돌아갈 수 있게 해주는 곳이다. 흔히들 웹사이트를 돌리기 위해 필요한 도메인, 서버, 데이터베이스 등등을 제공해 준다. 개발자들 사이에서는 인프라라고 얘기한다. AWS는 수많은 클라우드 서비스 중에 제일 잘나가는 서비스라고 할 수 있다! 2. AWS를 사용..

AWS/실습 기록 2021.09.16
728x90
반응형