AWS 62

[AWS] Amazon Managed Workflows for Apache Airflow 란

MWAA란? Amazon Managed Workflows for Apache Airflow란 Apache Airflow에 대한 AWS 관리형 오케스트레이션 서비스로 MWAA라고 칭해진다. MWAA는 관리형 서비스이기 때문에 확장성, 가용성 등 인프라 관리에 대한 고민 없이 Airflow를 사용할 수 있다. 즉, 요구 리소스에 맞춰 워크플로우 용량을 확장하므로 AWS 클라우드 환경에서 데이터 파이프라인을 대규모를 설정하고 운영하는데 적합하다. 이 글에서는 Apache Airflow에 대한 기본 지식은 있다고 가정하고 작성했다. 장점 MWAA를 사용하면 다음과 같은 장점을 가질 수 있다. - 자동 Airflow 설정 : MWAA를 사용하면 환경 생성 시 필요한 Airflow 버전을 선택하여 환경을 설정할 수..

AWS 2024.04.17

[AWS] Mountpoint for S3 - 구성 설정

개요 2024.03.22 - [AWS] Mountpoint for S3 - S3를 파일 시스템처럼 사용하기에서 AWS S3가 제공하는 Mountpoint for S3 기능을 살펴보았다. 다만 Mountpoint for S3는 mount-s3를 수행한 사용자가 버킷에 대해 작업할 수 있도록 기본적인 권한을 설정한다. 때문에 이전 글에서 EC2에 root 사용자로 버킷을 마운트 했을 때, 일반 사용자는 버킷에 접근할 수가 없었다. 이번 글에서는 Mountpoint for S3 사용 시 고려해볼 수 있는 권한, mount path 지정 등의 구성 설정에 대해 적어둔다. 파일/디렉터리 권한 설정 Mountpoint for S3는 기본적으로 mount-s3 명령을 수행한 사용자가 마운트 한 버킷의 파일을 읽고 쓸..

AWS 2024.03.25

[AWS] Mountpoint for S3 - S3를 파일 시스템처럼 사용하기

개요 AWS S3는 파일 스토리지가 아니라 객체 스토리지다. S3 버킷과 버킷에 저장된 객체를 다룰 때는 주로 API를 사용한다. 하지만 S3를 파일 시스템처럼 사용하고 싶어 하는 사용자가 많았는지(기존에는 서드파티인 s3fs를 이용해 mount하는 방법을 사용한 것으로 보인다.) 2023년에 AWS에서 Mountpoint for S3라는 기능을 출시했다. 이번 글에서는 Mountpoint for S3 기능을 살펴본다. Mountpoint for Amazon S3 Mountpoint for S3는 S3 버킷을 로컬 파일 시스템에 마운트 하는 오픈 소스 파일 클라이언트다. 파일 읽기, 열기 등과 같은 파일 시스템 작업을 자동으로 S3 API 호출로 변환하여 애플리케이션이 파일 인터페이스를 통해 S3를 다룰..

AWS 2024.03.22

[AWS] cli - AWS 제공 EC2 인스턴스 타입 목록 조회 - 2

개요 2024.01.26 - [AWS] cli - AWS 제공 EC2 인스턴스 타입 목록 조회 - 1에 이어 AWS cli로 AWS가 제공하는 EC2 인스턴스 타입 목록을 조회하는 방법을 정리한다. ec2 describe-instance-type ec2 describe-instance-type 명령어는 제공되는 인스턴스 타입의 세부 정보를 반환한다. aws ec2 describe-instance-types 옵션 없이 사용하면 현재 리전에서 제공되는 모든 인스턴스 타입에 대한 세부 정보가 나열된다. 따라서 인스턴스 타입만 나열할 때는 --query 옵션을 이용한 출력 필터링이 필요하다. aws ec2 describe-instance-types \ --query InstanceTypes[].InstanceT..

AWS 2024.01.29

[AWS] cli - AWS 제공 EC2 인스턴스 타입 목록 조회 - 1

개요 AWS에서 제공하고 있는 EC2 인스턴스 타입의 목록이 필요하다. AWS cli나 Linux 명령어 등을 통해 목록을 얻는 방법에 대해 정리해 둔다. 이 글에서는 여러 방법 중 ec2 describe-instance-type-offerings 명령어 대해 정리한다. ec2 describe-instance-type-offerings ec2 describe-instance-type-offerings 명령어는 제공되는 모든 인스턴스 타입의 목록을 반환한다. region 또는 az를 지정하여 특정 위치에서 제공되는 인스턴트 타입의 목록을 확인할 수 있는데, 만약 목록을 확인할 위치 정보를 지정하지 않으면 현재 region을 목록을 확인할 위치로 취급한다. 현재 리전에서 제공하는 인스턴스 유형 목록 확인 옵..

AWS 2024.01.26

[AWS] profile IAM 정보 확인

개요 AWS EC2 등에서 aws cli로 aws를 다루기 위해서는 자격증명이 필요하다. 보통 자격증명은 ACCESS_KEY나 IAM Role 등으로 설정하게 되는데 각 구성 방법 간 우선순위에 따라 의도하지 않은 자격증명을 사용하고 있을 수 있다. 예로 들어 EC2에 IAM role을 적용해 두었는데 서버 내에서 설정 파일 등으로 default 프로파일을 따로 설정해 두었다면, 설정 파일로 지정한 자격증명을 사용하게 된다. 이 글에서는 사용하는 자격증명에 대한 정보를 확인하는 방법을 적어둔다. sts get-caller-identity AWS STS(Security Token Service)는 AWS 리소스에 대한 접근을 제어하는 임시 보안 자격 증명을 생성하여 사용자에 제공할 수 있는 서비스이다. s..

AWS 2023.12.08

[aws cli] NLB - 인스턴스 등록/해제

개요 2022.12.19 - [aws cli] Classic LB - 인스턴스 등록/해제에서 aws cli로 CLB에 인스턴스를 등록하고 삭제해 봤는데, 이번 글에서는 NLB를 대상으로 인스턴스를 등록하고 해제하는 명령어를 적어둔다. 참고로 aws cli로 NLB나 ALB를 다룰 때는 elbv2 명령어를 사용한다. LB 정보 확인 참고 : 2021.11.20 - [aws cli] 로드밸런서 정보 확인 describe-load-balancers 명령으로 LB의 현재 정보를 확인할 수 있다. 확인할 로드밸런서 ARN이나 이름을 지정하지 않으면 모든 로드밸런서 정보를 확인한다. aws elbv2 describe-load-balancers # --names : 로드밸런서 이름 # 예시 aws elbv2 desc..

AWS 2023.10.06

[AWS] RDS - 엔드포인트 변경

개요 서비스 운영 중인 RDS 인스턴스를 교체해야 하는 작업이 있어 이슈가 될 만한 부분을 확인하던 중, 인스턴스 교체 작업 중에 신규 RDS의 엔드포인트를 기존과 동일하게 변경할 수 있다는 것을 알게 되었다. 즉, RDS 엔드포인트를 기존에 사용하던 것과 동일하게 유지할 수 있어 서비스 단에서 변경할 필요가 없다. RDS의 엔드포인트 변경 방법을 적어둔다. RDS 엔드포인트 RDS DB 인스턴스에 접속할 때 필요한 정보가 포함되어 있는 요소로, 간단히 말해 클라이언트나 사용자가 RDS DB에 접속하기 위한 주소라고 이해할 수 있다. RDS는 다중 AZ 배포 등의 옵션을 사용하면 하나의 RDS 인스턴스가 master/stanby로 구성되어 내부적으로 쓰기가 가능한 서버가 변경될 수 있다. RDS 엔드포인..

AWS 2023.10.03

[AWS] RDS MySQL - binlog 기반 인스턴스 간 복제

개요 RDS 백업 등을 위한 복제 방법은 여러 가지가 존재하는데, 이 글에서는 RDS 인스턴스 설정 변경 및 교체가 필요해 binlog 기반으로 서로 다른 RDS 간 복제 설정을 해보려고 한다. 진행 방식은 크게 다음과 같다. 1. 원본 인스턴스 binlog 사용 여부 확인 및 보존 기간 설정 2. 읽기 전용 복제본에서 복제 시작점 확인 3. 복제 인스턴스에서 원본 인스턴스 복제 설정 및 시작 binlog 기반 복제를 사용하면 교차 계정/교차 리전 간 복제, on-prem과 AWS 간 복제, mysql과 aurora 간의 복제 등등을 수행할 수 있다. 원본 인스턴스 설정 복제할 원본 인스턴스가 binlog를 사용하고 있는지 확인하고, 외부 인스턴스가 binlog를 사용할 수 있도록 관련 설정을 변경한다...

AWS 2023.09.29

[AWS] RDS - You are not using binary logging

개요 바이너리 로그에는 테이블 생성 작업이나 테이블 데이터 변경과 같은 데이터베이스 변경을 설명하는 이벤트가 포함된다. RDS 복제 등의 작업을 하고자 바이너리 로그를 확인하려고 했더니, 다음과 같이 수행되지 않았다. 바이너리 로그 파일 확인 SHOW BINARY LOGS; -- 또는 SHOW MASTER LOGS; 실행 결과 어떻게 하면 binlog를 활성화할 수 있을까? 확인해 본다. 해결 찾아보니 AWS RDS는 biglog 활성화 방식을 자동 백업의 활성화 여부로 제한하고 있는 것 같다. 공식 문서에 따르면 자동 백업 기능은 MySQL에 대해 바이너리 로깅을 설정할지 아니면 해제할지를 결정한다고 한다. 백업 기능을 활성화해 보고 정말 binlog이 확인되는지 살펴본다. 백업 기능 활성화 1. 작업..

AWS 2023.09.28