Cloud 5

Amazon S3 파티셔닝으로 성능 최적화하기

S3는 대학생 때 처음 개발을 공부하던 때부터 클라우드 분야에서 일하고 있는 현재까지도 항상 편리하게 사용해온 AWS 서비스이다. 사실상 거의 무한에 가까운 양의 데이터를 저장할 수 있고, 가용성도 일레븐 나인(99.999999999%)을 제공하기 때문에 많은 회사들에서도 대량의 데이터를 저장할 때 많이 사용하는 것으로 보인다. 스타트업에서 일할 때 대량의 데이터를 읽어오면서 버킷 내 파일 개수가 늘어날 수록 성능이 점점 느려지는 것 같다는 느낌적인 느낌을 받곤 했는데, 최근 파티셔닝(Partitioning) 이라는 개념을 접하게 되면서 S3 성능을 개선하는 방법에 대해 공부하고 포스팅을 쓰게 되었다. 이 포스팅에서는 S3 파티셔닝을 이용해 어떻게 성능을 올릴 수 있을지에 대해 짧게 정리해볼 예정이다. ..

Cloud 2024.02.04

AWS Lambda Layers 기능으로 python 라이브러리 import 하기

aws lambda로 개발할 때 selenium, openpyxl 과 같은 python 라이브러리들을 import 해주려고 하는데, No module named ... 오류가 떴다. AWS 환경이 아니라 평소 내 컴퓨터에서 개발할 때에는 터미널을 열고 pip install 명령어를 이용해서 라이브러리를 설치해주면 되지만, lambda에는 터미널이 없다. 이런 경우 라이브러리를 어떻게 lambda 환경에 미리 설치해줄 수 있을까? AWS Lambda의 Layers 는 2018 AWS Re:Invent에서 발표된 기능이다. 위와 같은 상황에서 외부 패키지를 미리 설치해서 세팅해주기 위해 사용된다. Lambda Layers를 이용해 서버리스에서 외부 패키지를 활용하는 방법과 개념에 대해 알아보자. Lambda..

Cloud 2022.12.02

AWS API와 Step Functions로 빠르게 비즈니스 기능 개발하기

* 2022 AWS Community Day Seoul 발표(Step Functions로 30분 만에 서버리스 서비스 개발하기)에서 진행한 실습의 Full 가이드입니다. 계속 업데이트 됩니다. 들어가며, AWS가 제공하는 서비스들을 이용해서 애플리케이션을 개발하기가 점점 쉬워지고 있다. 는 AWS에서 서버리스 애플리케이션을 개발할 때, 로직들 간 관계를 정의하고 연결하는 데에 편리한 오케스트레이션 서비스이다. 이를 이용하면 여러 기능의 Lambda들을 원하는 순서로 연결하는 것뿐 아니라 SDK(Software Development Kit)로 제공되는 다양한 AWS의 서비스 API들을 간편히 연결해서 하나의 애플리케이션을 만들 수 있다. 이 서비스를 이용하면 AWS의 다양한 서비스를 통합하기가 쉬워서 개인..

Cloud 2022.10.28

AWS IAM과 친해지기

AWS Builders 온라인 시리즈를 듣고 정리한 내용입니다. Youtube IAM은 AWS 사용자라면 끊임없이 사용하게 되는 아주 중요한 요소이다. AWS 리소스를 사용하기 위한 모든 요청은 Identity and Access Management, 즉 IAM을 통해 이루어진다. 따라서 IAM은 가장 기본적이면서도 핵심적인 도구이며, 사용자의 보안을 위해 꼭 알아야 하는 요소이다. IAM 이란? Identity and Access Management 으로, AWS 전체의 권한 통제 시스템이다. 💡 Root Account vs IAM 어떤 걸로 로그인 해야 할까? 루트 어카운트는 거의 모든 권한을 가지고 있기 때문에 AWS 작업을 이 계정으로 하는 것은 보안에 좋지 않다. 루트 어카운트보단 IAM 유저를..

Cloud 2022.04.26

putty로 AWS EC2 인스턴스 연결하기

0단계: 로컬 컴퓨터에 PuTTY 설치 1단계: 키 페어 생성 EC2 > 네트워크 및 보안 > 키 페어 창에 들어가 "키 페어 생성" 버튼을 누릅니다. --> 자동으로 .ppk 파일이 생성됩니다. 2단계: 인스턴스 만들기 EC2 > 인스턴스 창에서 '인스턴스 시작' 클릭 단계 1: AMI 선택 - Ubuntu Server 18.04 선택 이후 단계는 계속 '다음'을 눌러 넘어가다가, 단계 6: 보안그룹 구성 에서 아래와 같이 규칙 추가 HTTP (80) HTTPS (443) (추가) DB 연결이 있다면 '사용자 지정 TCP' 선택 후 '포트 범위'에 DB의 포트 번호 입력 (MySql의 경우 3306) '검토 및 시작' - '시작' 을 눌러 넘어간 뒤 -> '키 페어 선택' 창이 뜨면 '기존 키 페어 선..

Cloud 2021.02.20