일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- credentials
- Scheduling
- dynamic task mapping
- celery
- SecretsManager
- mysql
- Concept
- pipeline
- DAG
- S3
- Git
- dagrun
- ci/cd
- Operator
- git book
- sqs
- authoring
- AWS
- XCOM
- Task
- testing
- boto3
- airflow
- lambda
- RDS
- executor
- kinesis
- github actions
- Data Firehose
- TaskFlow
- Today
- Total
목록AWS (7)
CS

Amazon Kinesis는 스트리밍 데이터 플랫폼입니다. 스트리밍 데이터를 수집, 처리, 분석할 수 있습니다. 그중 Data Firehose(이하 Firehose)는 Kinesis Data Streams에 비해 간단하게 데이터를 전송할 수 있는 서비스입니다. 데이터 생산자(Kinesis Data Streams나 Direct PUT)에서 데이터를 수집하여, Lambda를 사용해 변형한 후, S3 등의 AWS 저장소에 전송할 수 있습니다. 생성이나 유지는 무료지만 데이터를 통하게 만들면 비용이 청구됩니다. Firehose 문서입니다. Firehose 생성하기 콘솔에서 Kinesis의 Data Firehose에 들어가 '전송 스트림 생성' 버튼을 통해 Firehose를 생성할 수 있습니다. '소스'는 데이터..
Boto3(AWS SDK for Python)로 AWS 서비스에 접속할 때 Credentials(자격 증명)가 필요합니다. 자격 증명은 Access Key(액세스 키)와 Secret Access Key(비밀 액세스 키)를 말합니다. 쉽게 말하면 ID와 비밀번호라 할 수 있습니다. (임시 자격 증명을 할 때는 Session Token을 씁니다.) AWS 콘솔에서 서비스를 쓸 때는 이 키들이 딱히 필요 없지만, 프로그래밍 방식으로 AWS 서비스를 사용할 때는 필수적입니다. 콘솔은 애초에 로그인을 하는 과정이 있기 때문입니다. (프로그래밍 방식은 Boto3처럼 코드를 통해 서비스를 사용하는 것을 말합니다.) 다만 액세스 키는 한번 설정하면 기본적으로 변경이 거의 없기 때문에, 보안적으로 좋지 않은 것을 유의해..

AWS SQS는 AWS 메시지 큐 서비스 중 하나입니다. 메시지 큐는 보통 아키텍처의 규모가 어느 정도 큰 경우 사용하는 서비스로, 이를 사용하면 큐 방식으로 어떤 서비스에서 다른 서비스로 정보(메시지)를 보낼 수 있습니다. 일단 비동기 장점이 있고, 서비스끼리 직접 통신할 경우 연결 과정 자체도 번거롭고 해당 서비스를 변경하기가 어려워지기 때문입니다. 또한 모든 메시지를 메시지 큐에 모은 후, 서비들이 자기가 원하는 정보만 가져가도록 만들 수 있기 때문에(이를 '구독'이라 함) 구성하기가 편한 점도 있습니다. 참고로 메시지 큐처럼 애플리케이션 간 통신에 사용되는 소프트웨어를 미들웨어라고 부릅니다. Simple Queue Service라는 이름처럼, 다른 메시지 큐 서비스보다 간단한 듯합니다. 콘솔상에서..
(python3 기준입니다.) AWS Lambda에 사용할 코드를 작성할 때 웬만하면 라이브러리를 사용할 것입니다. 그런데 Lambda에서 모든 라이브러리를 지원하지는 않습니다. 따라서 미지원 라이브러리를 사용하는 함수는 실패하게 됩니다. Lambda 함수에 라이브러리를 패키징할 수도 있는 것 같지만, Lambda에서는 따로 '계층(Layer)'이라는 것을 제공하고 있습니다. 계층은 라이브러리 같은 종속 항목을 따로 저장해 둘 수 있는 기능입니다. 자주 쓰는 라이브러리로 계층을 만들어 놓으면 다른 Lambda에도 재사용할 수 있어 편한 것 같습니다. 사용 방법 콘솔에서 계층이 필요한 Lambda 함수의 코드 탭 ▷ 계층 ▷ [Add a Layer] 버튼을 클릭하여 계층을 선택하면 됩니다. 아키텍처는 보통..

Serverless는 서버리스 함수(AWS에서는 Lambda)를 인프라 구성 없이 배포할 수 있도록 하는 프레임워크입니다. 학습자 입장에서 Serverless를 써보면서 알게 된 점을 정리하고 공유하는 의미에서 글을 써보겠습니다. 설명 사용 방법 기타 1. 설명 Serverless는 터미널에서 사용할 수 있는 프레임워크입니다. Lambda를 쓸 때 코드 템플릿을 정하거나 파일을 패키징하는 등 구성할 게 많은데, Serverless를 쓰면 yml 파일을 사용하여 설정을 한 공간에서 할 수 있고, AWS CloudFormation을 통하여 인프라를 자동으로 만들어 줍니다(CloudFormation은 코드형 인프라 서비스로 인프라를 코드로 작성할 수 있도록 합니다.). 특히 기본 인프라를 만들어 주는 점 덕분..
학습자 입장에서 사용하면서 알게 된 점을 정리하고, 혹시 필요한 사람들에게 도움이 되길 바라면서 글을 써보겠습니다. 설명 사용 방법 모니터링 기타 1. 설명 Lambda(설명서)는 AWS를 사용하면 자주 다루게 되는 서비스입니다. 보통 서버리스 함수라고 하는데 말 그대로 서버(컴퓨터) 없이 사용할 수 있는 함수입니다. 이름처럼 Lambda 1개가 하나의 함수로 기능하는 꼴입니다. 여타 서버리스 서비스처럼 사용할 때만 비용이 부과되어 비용 효율적입니다. 주로 트리거 기능을 사용하여 AWS상 서비스에서 독자적 코드가 필요한 부분(데이터 변환 등)에 사용되는 등 중간 다리 역할을 맡는 것 같습니다. 2. 사용 방법 생성할 때 특별히 신경 쓸 건 없습니다. 서버리스고 사용자가 직접 코드를 작성하는 걸 상정하기 ..

데이터베이스 접속 등 작업을 하다 보면, 비밀번호 같이 보안상 코드에 직접 쓰지 않는 게 좋은 값들이 있습니다. 이런 값들을 저장하고 필요할 때 불러올 수 있게 하는 서비스는 여러가지 있지만, AWS상이라면 AWS에서 제공하는 서비스인 Secrets Manager를 사용하는 게 편할 것 같습니다. AWS Secrets Manager 문서입니다. 보안 암호 생성하기 boto3를 사용한 암호 사용 IAM 권한 설정 1. 보안 암호 생성하기 보안 암호는 AWS 콘솔에서 쉽게 생성할 수 있습니다. 기본적으로 유료이고 한 달의 무료 사용 기간이 있습니다. 콘솔에서 보안 암호를 생성하는 장면입니다. RDS 접속용 암호를 생성하도록 해보겠습니다. '자격 증명' (credential) 칸에 사용자 이름 (usernam..