[AWS Cloud 이론] Storage (2) S3
S3(Simple Storage Service) Amazon Simple Storage Service(S3)는 Amazon Web Services(AWS)에서 제공하는 확장 가능한 객체 스토리지 서비스입니다. 개발자와 기업에게 웹에서 언제 어디서나 원하는 양의 데이터를 저장하고 검색할 수 있는 안전하고 내구성이 뛰어나며 가용성이 높은 스토리지 인프라를 제공합니다. 주요 기능 확장성 S3는 몇 기가바이트에서 수 테라바이트 또는 페타바이트의 데이터에 이르기까지 모든 규모의 데이터 스토리지 요구 사항을 처리하도록 설계되었습니다. 내구성 및 가용성 S3는 여러 데이터 센터에 데이터의 여러 복사본을 자동으로 저장하여 높은 내구성을 제공합니다. 또한 고가용성을 제공하여 항상 데이터에 액세스하고 검색할 수 있도록 보..
2023.05.25
AWS
no image
[AWS Cloud 이론] Storage (1) EFS
EFS(Elastic File System) AWS EFS(Elastic File System)는 Amazon Web Services(AWS)에서 제공하는 확장 가능하고 완전하게 관리되는 파일 스토리지 서비스입니다. Amazon EC2(Elastic Compute Cloud) 인스턴스 및 기타 AWS 서비스와 함께 사용할 수 있는 공유 파일 스토리지를 제공합니다. 주요 기능 확장성 EFS는 사실상 무제한의 저장 용량을 제공하여 임의의 수의 파일과 디렉터리를 저장하고 검색할 수 있습니다. 파일을 추가하거나 제거할 때 자동으로 확장되므로 수동 개입 없이도 필요한 용량을 확보할 수 있습니다. 공유 파일 스토리지 EFS를 사용하면 여러 EC2 인스턴스가 동시에 동일한 파일 시스템에 액세스하고 공유할 수 있습니다..
2023.05.24
AWS
no image
[AWS Cloud 이론] Database RDS 구성
목차 RDS(Relational Database Service) RDS 생성 시 구성 요소 RDS 쿼리 편집기 RDS 스냅샷 RDS 자동 백업 RDS 예약 인스턴스 RDS 프록시 RDS(Relational Database Service) Amazon RDS(Relational Database Service, 관계형 데이터베이스 서비스)는 AWS에서 제공하는 관리형 데이터베이스 서비스입니다. 이 서비스는 클라우드에서 관계형 데이터베이스를 설정, 운영 및 확장하는 프로세스를 간소화합니다. RDS는 Amazon Aurora, MySQL, PostgreSQL, Oracle, Microsoft SQL Server와 같이 널리 사용되는 데이터베이스 엔진을 지원하므로 애플리케이션 요구 사항에 가장 적합한 데이터베이스..
2023.05.23
AWS
[AWS Cloud 이론] IAM(Identity and Access Management) 구성
목차 IAM(Identity and Access Management) IAM 보고서 액세스 IAM 액세스 분석기 자격 증명 보고서 조직 활동 SCP(Service Control Policies) IAM(Identity and Access Management) Amazon IAM(Identity and Access Management)은 Amazon Web Services 리소스에 대한 액세스를 안전하게 제어하는 데 도움이 되는 웹 서비스입니다. 이를 통해 사용자, 액세스 키와 같은 보안 자격 증명, 사용자 및 애플리케이션이 액세스할 수 있는 AWS 리소스를 제어하는 권한을 관리할 수 있습니다. 주요 개념 User(사용자) IAM 사용자는 AWS와 상호 작용하는 데 사용하는 사람 또는 애플리케이션을 나타내..
2023.05.21
AWS
[AWS Cloud 이론] EC2의 구성요소(3. 로드 밸런싱과 Auto Scaling)
목차 인스턴스와 AMI EC2(Amazon Elastic Compute Cloud) 인스턴스 AMI(Amazon Machine Images) EBS와 네트워크 및 보안 EBS(Elastic Block Store) 네트워크 및 보안 로드 밸런싱과 Auto Scaling 로드 밸런싱 Auto Scaling 로드 밸런싱 AWS(Amazon Web Services)에서 로드 밸런서는 네트워크 트래픽과 워크로드를 여러 서버 또는 서버 클러스터에 균일하게 분산하는 서비스입니다. 로드 밸런서는 애플리케이션의 용량과 안정성을 높이는 데 사용됩니다. AWS는 다음 세 가지 유형의 로드 밸런서를 제공합니다. 애플리케이션 로드 밸런서(ALB) 요청 수준에서 작동하며 HTTP/HTTPS 트래픽을 라우팅하는 데 사용됩니다. 동..
2023.05.21
AWS
no image
[AWS Cloud 이론] EC2의 구성요소 (2. EBS와 네트워크 및 보안)
목차 인스턴스와 AMI EC2(Amazon Elastic Compute Cloud) 인스턴스 AMI(Amazon Machine Images) EBS와 네트워크 및 보안 EBS(Elastic Block Store) 네트워크 및 보안 로드 밸런싱과 Auto Scaling 로드 밸런싱 Auto Scaling EBS(Elatic Block Store) EBS(Amazon Elastic Block Store)는 Amazon Elastic Compute Cloud(EC2) 인스턴스와 함께 사용하도록 설계된 고성능 블록 스토리지 서비스입니다. 영구 저장소를 제공하므로 인스턴스가 중지되거나 종료되어도 데이터가 손실되지 않습니다. 주로 데이터베이스, 파일 시스템 또는 원시 블록 수준 스토리지에 대한 액세스가 필요한 애플..
2023.05.21
AWS

[AWS Cloud 이론] Storage (2) S3

이지IT
|2023. 5. 25. 18:25
반응형
 

S3(Simple Storage Service)

Amazon Simple Storage Service(S3)는 Amazon Web Services(AWS)에서 제공하는 확장 가능한 객체 스토리지 서비스입니다. 개발자와 기업에게 웹에서 언제 어디서나 원하는 양의 데이터를 저장하고 검색할 수 있는 안전하고 내구성이 뛰어나며 가용성이 높은 스토리지 인프라를 제공합니다.

주요 기능

 

  1. 확장성
    S3는 몇 기가바이트에서 수 테라바이트 또는 페타바이트의 데이터에 이르기까지 모든 규모의 데이터 스토리지 요구 사항을 처리하도록 설계되었습니다.

  2. 내구성 및 가용성
    S3는 여러 데이터 센터에 데이터의 여러 복사본을 자동으로 저장하여 높은 내구성을 제공합니다. 또한 고가용성을 제공하여 항상 데이터에 액세스하고 검색할 수 있도록 보장합니다.

  3. 보안
    S3는 데이터를 보호하기 위한 다양한 보안 기능을 제공합니다. 서버 측 암호화를 제공하여 미사용 데이터를 암호화합니다. 또한, AWS ID 및 액세스 관리(IAM) 정책과 버킷 정책을 사용하여 S3 버킷 및 오브젝트에 대한 액세스를 관리할 수 있습니다.

  4. 수명 주기 관리
    S3에서는 수명 주기 정책을 정의하여 미리 정의된 규칙에 따라 데이터를 서로 다른 스토리지 클래스 간에 자동으로 전환할 수 있습니다(예: 스탠다드에서 글래시어로의 전환). 이를 통해 스토리지 비용과 성능을 최적화할 수 있습니다.

  5. 버전 관리
    S3는 버전 관리를 지원하므로 한 개체의 여러 버전을 동일한 버킷에 보관할 수 있습니다. 이는 변경 사항을 추적하고, 실수로 삭제된 파일을 복구하거나, 기록 데이터를 유지하는 데 유용할 수 있습니다.

  6. 데이터 전송
    S3는 대용량 오브젝트를 위한 멀티파트 업로드, 빠른 업로드 및 다운로드를 위한 전송 가속화, AWS Transfer Family 및 AWS DataSync와 같은 다른 AWS 서비스와의 직접 통합 등 효율적인 데이터 전송을 위한 옵션을 제공합니다.

  7. 데이터 관리
    S3는 메타데이터 태그, 오브젝트 수준 로깅, 이벤트 알림, 감사 및 규정 준수를 위한 AWS CloudTrail과의 통합 등 데이터를 구성하고 관리할 수 있는 기능을 제공합니다.

  8. AWS 서비스와의 통합
    S3는 다른 AWS 서비스와 원활하게 통합되므로 확장 가능하고 분산된 애플리케이션을 쉽게 구축할 수 있습니다. 예를 들어, S3를 AWS 분석 서비스의 데이터 소스로 사용하거나, 정적 웹사이트를 호스팅하거나, 서버리스 컴퓨팅을 위해 AWS Lambda와 통합할 수 있습니다.

  9. 비용 효율적
    S3는 저장된 데이터의 양, 데이터 전송, 사용된 옵션 기능에 따라 비용 효율적인 가격 모델을 제공합니다. 데이터 액세스 패턴과 요구 사항에 따라 비용을 최적화할 수 있도록 다양한 스토리지 클래스(스탠다드, 인텔리전트-티어링, 글래시어 등)를 제공합니다.

전반적으로 AWS S3는 기업과 개발자에게 데이터에 대한 유연한 스토리지 옵션과 강력한 관리 및 통합 기능을 제공하는 매우 안정적이고 확장 가능하며 안전한 오브젝트 스토리지 서비스입니다.

 

목차로 이동

 

액세스 포인트

Amazon S3 액세스 포인트는 데이터에 대한 액세스를 보호하고 확장할 수 있는 간단한 방법을 제공합니다. 액세스 포인트는 IAM 역할을 생성하거나 S3의 기본 인프라를 직접 사용하지 않고도 S3 버킷에 저장된 개체에 대한 공개 또는 비공개 액세스를 활성화하려는 경우에 유용합니다.

S3 액세스 포인트는 기본적으로 하나 이상의 물리적 S3 버킷을 가리키는 가상 위치입니다. 이를 통해 사용자는 일반적으로 S3에서 사용하는 것과 동일한 API 및 사용자 인터페이스 도구를 사용하여 파일 업로드, 다운로드, 삭제 및 쿼리와 같은 작업을 수행할 수 있습니다. 액세스 포인트는 클라이언트와 실제 버킷 스토리지 사이에서 프록시 역할을 하므로 클라이언트는 S3 버킷 자체와 직접 상호 작용하지 않습니다. 이러한 추상화는 버킷 내의 각 특정 개체 또는 디렉터리와 관련된 정책을 통해 명시적으로 허용된 항목으로만 액세스를 제한함으로써 추가적인 보안 이점을 제공합니다.

S3 액세스 포인트를 만들 때 공개 또는 비공개 중 하나를 선택할 수 있습니다. 공개 액세스 포인트는 기본 버킷의 모든 개체를 노출하여 누구나 인터넷 어디에서나 읽거나 쓸 수 있는 반면, 비공개 액세스 포인트는 모든 작업을 허용하기 전에 인증이 필요합니다. 또한 버킷 내부의 개별 키/개체 또는 디렉터리를 설정한 경우 디렉터리를 기반으로 세분화된 액세스 제어를 구성할 수도 있습니다.

또한 버전 관리, 수명 주기 규칙, 지역 간 복제, 서버 측 암호화, 기타 고급 기능을 지원하며, 일반 S3 버킷과 마찬가지로 S3 액세스 포인트를 통해 액세스하는 개체에 대해서도 사용할 수 있습니다. 그러나 일부 기능은 액세스 포인트에 의해 도입된 추가 계층으로 인해 클라이언트 작동 방식을 변경해야 할 수 있습니다.

요약하면, AWS S3 액세스 포인트는 외부 사용자에게 S3 콘텐츠에 대한 제어된 액세스 권한을 부여할 수 있는 편리한 방법을 제공하여 적절한 보안 관행을 준수하면서 협업 또는 공유 기능을 강화할 수 있게 해줍니다.

 

종류와 특징

 

  1. S3 액세스 포인트
    개별 개체, 폴더 또는 전체 S3 버킷 콘텐츠를 특정 사용자 또는 팀과 안전하게 공유할 수 있는 방법을 제공합니다. 액세스 제어 설정은 권한이 있는 사람만 액세스할 수 있도록 제한하여 규제 의무를 준수하고 민감한 정보가 우발적으로 노출되는 것을 방지합니다. S3 액세스 포인트를 사용하여 사용자가 수행할 수 있는 작업을 지정하거나, 시간 제한을 설정하거나, 마음대로 액세스를 취소하는 등 세분화된 제어를 구성할 수 있습니다. 또한 미리 정의된 액세스 정책을 적용하거나 필요에 맞는 사용자 지정 정책을 만들 수 있습니다.

  2. 객체 람다 액세스 포인트
    람다 함수를 지정된 오브젝트 접두사 경로에 연결하여 서버리스 컴퓨팅 기능을 S3 리소스에 직접 통합할 수 있습니다. 이러한 폴더에 새 콘텐츠가 들어올 때마다 해당 람다 실행이 자동으로 수행되어 파일 형식 변환, 이미지 크기 조정, 메타데이터 추출 또는 머신 러닝 모델 학습과 같은 작업을 수행합니다. 명시적인 API 호출 없이 모든 작업이 백그라운드에서 이루어지므로 기존 워크플로를 수정하거나 추가 개발 프로세스를 도입할 필요가 없습니다. 그 결과 애플리케이션 동작을 업데이트할 때 반복 작업이 빨라지고 DevOps의 노력이 줄어듭니다.

  3. 다중 지역 액세스 포인트
    이를 활용하여 여러 지역에 흩어져 있는 분산된 S3 리소스를 통합하여 서로 다른 지역 간에 빠르고 안정적인 데이터 전송을 보장합니다. 이 기능은 액세스 제어 및 버전 관리 의미를 유지하면서 지역 간 협업을 간소화합니다. 별도의 R&D, 스테이징, 프로덕션 또는 분석 환경 간에 효율적인 데이터 공유를 지원하는 동시에 대역폭 사용량을 최소화하고 거리 기반 통신 장벽으로 인한 지연 시간을 줄일 수 있습니다. 이 솔루션의 일부로 다양한 네트워크 시나리오에서 성능을 최적화하는 Amazon S3 전송 가속화 및 서명 버전 4 서명에 대한 지원도 받을 수 있습니다.

목차로 이동

 

배치 작업

배치 작업은 S3 버킷에 저장된 대량의 오브젝트를 처리할 수 있는 간단하고 확장 가능한 방법을 제공합니다. 이를 통해 고객은 반복적인 데이터 수명 주기 작업을 자동화하고 대규모로 데이터를 관리할 수 있습니다. S3 배치 작업에서 가능한 업무들은 다음과 같습니다.

  1. 개체 복사
    연결된 ET태그의 보존을 포함해 동일하거나 다른 S3 버킷 내에서 개체를 복제합니다.

  2. 개체 이동
    동일한 계정에 속해 있는지 여부에 관계없이 한 S3 버킷에서 다른 S3 버킷으로 개체를 이동합니다.

  3. 개체 삭제
    필터를 통해 정의된 패턴 규칙에 따라 개체를 영구적으로 삭제합니다. 이렇게 하면 중요한 데이터가 의도치 않게 삭제되는 것을 방지할 수 있습니다.

  4. 개체 태그 설정
    선택한 개체에 태그를 추가하거나 바꾸어 검색, 추적, 정리를 더 쉽게 할 수 있습니다.

  5. 개체 필터링
    특정 기준을 충족하는 개체를 식별하고 일치하는 항목에 따라 후속 변환 또는 출력을 수행합니다. 다섯 가지 필터링 모드를 사용할 수 있습니다: 같음, 시작 조건, 작음, 큼, 같음 및 연산자(조건의 조합).

  6. 개체 메타데이터 병합
    여러 개체의 메타데이터 요소를 단일 엔티티로 통합하여 잠재적인 불일치를 해결하거나 속성 집합을 확장할 수 있습니다.

  7. 매니페스트 파일 작성
    지정된 기준을 충족하는 개체의 목록을 일반 텍스트 문서 또는 CSV 스프레드시트로 패키징하여 생성합니다. 사용 사례에 따라 ListBucket(v2), CommonPrefixList, ListObjects(v2) 목록 중에서 선택할 수 있습니다.

  8. 인벤토리 정책
    각각의 태그 할당과 함께 개체 요약을 자세히 설명하는 JSON 형식의 S3 인벤토리 보고서를 자동으로 생성하거나 업데이트하세요. 이 프로세스는 외부 시스템이나 도구에서 쉽게 사용할 수 있는 일별, 주별 또는 월별 아카이브를 생성합니다.

S3 배치 작업은 AWS CLI(명령줄 인터페이스), AWS SDK 또는 Amazon S3 API를 사용해 이러한 작업을 프로그래밍 방식으로 실행합니다. 기본 제공 병렬화를 활용하고 워크로드를 여러 처리 장치에 분산하여 효율성을 개선하고 처리 시간을 단축합니다.

 

목차로 이동

반응형

[AWS Cloud 이론] Storage (1) EFS

이지IT
|2023. 5. 24. 10:31
반응형
 

EFS(Elastic File System)

AWS EFS(Elastic File System)는 Amazon Web Services(AWS)에서 제공하는 확장 가능하고 완전하게 관리되는 파일 스토리지 서비스입니다. Amazon EC2(Elastic Compute Cloud) 인스턴스 및 기타 AWS 서비스와 함께 사용할 수 있는 공유 파일 스토리지를 제공합니다.

주요 기능

 

  1. 확장성
    EFS는 사실상 무제한의 저장 용량을 제공하여 임의의 수의 파일과 디렉터리를 저장하고 검색할 수 있습니다. 파일을 추가하거나 제거할 때 자동으로 확장되므로 수동 개입 없이도 필요한 용량을 확보할 수 있습니다.

  2. 공유 파일 스토리지
    EFS를 사용하면 여러 EC2 인스턴스가 동시에 동일한 파일 시스템에 액세스하고 공유할 수 있습니다. 따라서 여러 인스턴스 간에 협업과 데이터 공유가 가능하므로 콘텐츠 관리, 웹 서비스, 빅 데이터 분석과 같은 사용 사례에 적합합니다.

  3. POSIX 호환 파일 시스템
    EFS는 POSIX(휴대용 운영 체제 인터페이스) 표준과 호환되도록 설계되었으므로 기존 파일 시스템 시맨틱을 기대하는 애플리케이션 및 도구와 함께 사용할 수 있습니다. 따라서 코드를 변경하지 않고도 기존 애플리케이션을 EFS로 쉽게 마이그레이션할 수 있습니다.

  4. 성능
    EFS는 파일 작업을 위한 저지연 성능과 높은 처리량을 제공합니다. 소규모 파일 작업부터 대규모 데이터 집약적 애플리케이션에 이르기까지 광범위한 워크로드를 처리하도록 설계되었습니다.

  5. 탄력성
    EFS는 파일 시스템이 성장함에 따라 처리량을 자동으로 확장하므로 수동 조정 없이도 원하는 수준의 성능을 달성할 수 있습니다. 따라서 유연성과 적응성이 필요한 동적 워크로드에 적합합니다.

  6. 지역 및 AZ 간 가용성
    EFS 파일 시스템은 AWS 리전 내의 여러 가용 영역에서 액세스할 수 있으므로 높은 가용성과 내구성을 제공합니다. 따라서 가용 영역이 사용할 수 없게 되더라도 데이터를 복제하고 액세스할 수 있습니다.

  7. 보안 및 액세스 제어
    EFS는 AWS IAM(Identity and Access Management)과 통합되어 파일 시스템 및 파일에 대한 액세스를 제어합니다. IAM 역할과 정책을 사용하여 세분화된 권한을 정의하여 사용자 역할과 그룹에 따라 액세스를 제한할 수 있습니다.

  8. 백업 및 복원
    EFS는 AWS 백업을 통해 기본 제공 백업 및 복원 기능을 제공합니다. 파일 시스템의 예약 백업을 생성하고 필요할 때 쉽게 복원할 수 있어 우발적인 데이터 손실을 방지할 수 있습니다.

  9. 비용 효율적
    EFS는 사용한 스토리지와 처리량에 대해서만 비용을 지불하는 종량제 요금 모델을 제공합니다. 선불 비용이나 최소 약정이 없으므로 다양한 워크로드에 비용 효율적으로 사용할 수 있습니다.

  10. 다른 AWS 서비스와의 통합
    EFS는 Amazon ECS(Elastic Container Service), AWS Lambda, Amazon EKS(Elastic Kubernetes Service)와 같은 다양한 AWS 서비스와 원활하게 통합됩니다. 따라서 컨테이너화된 애플리케이션과 서버리스 기능을 위한 공유 스토리지로 EFS를 사용할 수 있습니다.

AWS EFS는 콘텐츠 관리, 웹 서비스, 데이터 공유, 애플리케이션 스토리지 등 다양한 사용 사례에 사용할 수 있는 다용도 확장형 파일 스토리지 솔루션입니다. 유연성, 성능, 사용 편의성 덕분에 AWS 클라우드에서 파일 기반 워크로드를 관리하는 데 널리 사용됩니다.

 

목차로 이동

 

EFS Access Point

AWS EFS 액세스 포인트는 파일 시스템에 대한 세분화된 액세스 제어를 제공할 수 있는 Amazon EFS(Elastic File System)의 기능입니다. 액세스 포인트는 클라이언트가 EFS 파일 시스템 내의 특정 디렉터리에 액세스할 수 있는 고유한 진입점 역할을 하므로 보다 세분화된 수준에서 액세스를 관리할 수 있습니다. 

주요 특징

 

  1. 디렉터리 수준 액세스 제어
    EFS 액세스 포인트를 사용하면 파일 시스템 내의 디렉터리 수준에서 권한을 설정할 수 있습니다. 즉, 요구 사항에 따라 여러 디렉터리에 서로 다른 수준의 액세스 권한을 부여할 수 있습니다.

  2. 격리 및 보안
    각 액세스 포인트에는 고유한 보안 구성과 네트워크 파일 시스템(NFS) 내보내기 옵션이 있습니다. 이를 통해 데이터를 격리 및 분리하여 파일 시스템 내의 여러 디렉터리에 대해 서로 다른 보안 정책과 액세스 제어를 적용할 수 있습니다.

  3. 간소화된 클라이언트 구성
    액세스 포인트를 사용하면 클라이언트에 고유한 액세스 포인트 식별자를 제공하여 클라이언트 구성을 간소화할 수 있습니다. 그러면 클라이언트는 전체 파일 시스템 경로를 지정할 필요 없이 액세스 포인트를 직접 마운트할 수 있습니다.

  4. POSIX 권한
    액세스 포인트는 POSIX 권한을 지원하므로 표준 UNIX 스타일 권한을 사용하여 디렉터리 및 파일에 대한 액세스를 제어할 수 있습니다. 읽기, 쓰기 및 실행 권한을 포함하여 소유자, 그룹 및 기타 사용자에 대한 권한을 설정할 수 있습니다.

  5. IAM 및 AWS 조직과 통합
    액세스 포인트는 AWS IAM(신원 및 액세스 관리)과 통합되므로 IAM 정책을 사용하여 EFS 파일 시스템에 대한 액세스를 관리할 수 있습니다. 또한 AWS 조직을 사용하여 여러 계정에 걸쳐 액세스 제어 정책을 관리하고 적용할 수 있습니다.

  6. POSIX 사용자 및 그룹 ID로 세분화된 액세스
    액세스 포인트를 사용하면 POSIX 사용자 및 그룹 ID를 사용하여 액세스를 제어할 수 있습니다. 이를 통해 액세스 포인트 내에서 특정 사용자 및 그룹 권한을 매핑하고 적용하여 보다 세분화된 액세스 제어를 제공할 수 있습니다.

  7. 보안 및 규정 준수 개선
    액세스 포인트를 사용하면 특정 디렉터리에 대한 액세스를 제한하고, 최소 권한 액세스를 구현하고, 파일 시스템 전체에 일관된 액세스 제어를 적용하여 보안 및 규정 준수를 강화할 수 있습니다.

  8. 간소화된 데이터 관리
    액세스 포인트는 EFS 파일 시스템 내에서 데이터를 구성하고 관리하는 데 사용할 수 있습니다. 서로 다른 애플리케이션, 팀 또는 프로젝트를 나타내는 여러 액세스 포인트를 생성하여 특정 데이터 세트에 대한 액세스를 더 쉽게 관리하고 제어할 수 있습니다.

  9. 기존 애플리케이션과의 호환성
    액세스 포인트는 표준 NFS 프로토콜을 사용하는 기존 애플리케이션과 호환되므로 코드를 변경하지 않고도 기존 워크플로우에 원활하게 통합할 수 있습니다.

EFS 액세스 포인트는 디렉터리 수준에서 EFS 파일 시스템에 대한 액세스를 유연하고 안전하게 관리할 수 있는 방법을 제공합니다. 향상된 보안, 간소화된 클라이언트 구성, 데이터 액세스에 대한 더 나은 제어를 제공하므로 AWS에서 파일 기반 워크로드를 관리하기 위한 강력한 기능입니다.

 

목차로 이동

 

EFS 사용 시 염두해야할 것들

AWS EFS(Elastic File System)를 사용할 때, 최적의 성능, 비용 효율성 및 데이터 무결성을 보장하기 위해 염두에 두어야 할 몇 가지 고려 사항에 대해 이야기 해보도록 하겠습니다.

  1. 네트워크 지연 시간
    EFS 성능은 네트워크 지연 시간의 영향을 받으므로, 지연 시간을 최소화하려면 EFS 파일 시스템과 관련 리소스(예: EC2 인스턴스)를 동일한 AWS 리전에 배포하는 것이 중요합니다.

  2. 처리량 모드
    EFS는 두 가지 처리량 모드를 제공합니다.
    • 버스팅 모드: 파일 시스템 크기에 따라 처리량을 자동으로 확장하므로 대부분의 워크로드에 적합합니다.
    • 프로비저닝 모드: 예측 가능한 고처리량 워크로드에 권장되지만 수동 구성이 필요하고 추가 비용이 발생합니다.

  3. 파일 시스템 버스팅
    버스팅 처리량 모드에서 EFS는 버스트 크레딧을 사용하여 기준선보다 높은 처리량을 제공합니다. 지속적인 성능을 보장하려면 버스트 크레딧을 모니터링하고 관리하는 것이 중요합니다. 버스트 크레딧을 소진하면 크레딧이 보충될 때까지 성능이 제한될 수 있습니다.

  4. 초당 파일 작업 수(IOPS)
    EFS는 많은 수의 파일 작업을 처리하도록 설계되었지만, I/O 워크로드가 매우 많으면 성능 제한이 발생할 수 있습니다. 애플리케이션에 매우 높은 IOPS가 필요한 경우 워크로드를 최적화하거나 여러 EFS 파일 시스템에 분산하는 것을 고려하세요.

  5. 암호화
    EFS는 AWS 키 관리 서비스(KMS)를 사용하여 미사용 시 암호화를 지원합니다. 암호화를 활성화하면 데이터의 기밀성과 무결성이 보장됩니다. 하지만 암호화로 인해 추가적인 오버헤드가 발생할 수 있으므로 성능에 미치는 영향을 고려하여 적절한 KMS 키 구성을 선택해야 합니다.

  6. 수명 주기 관리
    수명 주기 정책을 구현하여 스토리지 클래스 간에 파일을 자동으로 전환하세요. 이렇게 하면 액세스 빈도가 낮은 데이터를 EFS IA(자주 액세스하지 않는 데이터)와 같은 더 저렴한 스토리지 계층으로 이동하여 비용을 최적화할 수 있습니다.

  7. 모니터링 및 알람
    CloudWatch 알람을 설정하여 EFS 파일 시스템의 성능, 버스트 크레딧 사용률 및 기타 지표를 모니터링하세요. 이를 통해 잠재적인 문제를 사전에 식별하고 최적의 성능을 유지하기 위해 필요한 조치를 취할 수 있습니다.

  8. 동시 파일 수정
    EFS는 세분화된 파일 잠금 메커니즘을 제공하지 않으므로 여러 클라이언트가 동일한 파일을 동시에 수정하면 충돌이 발생할 수 있습니다. 데이터 손상을 방지하기 위해 애플리케이션이 동시 액세스를 적절하게 처리하는지 확인하세요.

  9. 권한 및 보안
    권한 및 보안 그룹을 적절히 구성하여 EFS 파일 시스템에 대한 액세스를 제어하세요. EFS 액세스 포인트 및 IAM 정책을 활용하여 세분화된 액세스 제어를 구현하고 특정 디렉터리 또는 클라이언트에 대한 액세스를 제한하세요.

  10. 백업 및 복구
    EFS는 가용성과 내구성이 뛰어나도록 설계되었지만 백업 및 복구 전략을 구현하는 것이 여전히 중요합니다. AWS 백업과 같은 도구를 사용하여 중요한 데이터를 정기적으로 백업하고, 복원 프로세스를 테스트하여 데이터 무결성을 보장하세요.

이러한 점을 고려하면 성능을 효과적으로 최적화하고, 비용을 관리하고, 데이터 보안을 보장하고, AWS EFS 파일 시스템의 안정성을 유지할 수 있습니다.

 

목차로 이동

 

EFS 생성하기

EFS 생성은 굉장히 간단합니다. 다음 순서를 따라가 봅시다.

"파일 시스템 생성" 버튼을 클릭합니다.
이름과 EFS를 이용할 VPC를 선택해줍니다. 그 후 "생성" 버튼을 클릭하면 완성됩니다.

이 EFS를 사용하는 방법에 대해서는 아직 진행이 안되서 학습이 진행되면 바로 포스팅하도록 하겠습니다.

 

목차로 이동

반응형
반응형

목차

RDS(Relational Database Service)

Amazon RDS(Relational Database Service, 관계형 데이터베이스 서비스)는 AWS에서 제공하는 관리형 데이터베이스 서비스입니다. 이 서비스는 클라우드에서 관계형 데이터베이스를 설정, 운영 및 확장하는 프로세스를 간소화합니다. RDS는 Amazon Aurora, MySQL, PostgreSQL, Oracle, Microsoft SQL Server와 같이 널리 사용되는 데이터베이스 엔진을 지원하므로 애플리케이션 요구 사항에 가장 적합한 데이터베이스를 선택할 수 있습니다.

 

주요 특징

  1. 관리형 서비스
    RDS는 데이터베이스 설정, 패치, 백업, 자동화된 소프트웨어 업데이트와 같은 관리 작업을 처리하므로 애플리케이션 개발에만 집중할 수 있습니다.

  2. 고가용성
    RDS는 데이터베이스를 다른 가용성 영역에 있는 대기 인스턴스에 복제하는 Multi-AZ 배포와 같은 기본 제공 고가용성 옵션을 제공합니다. 장애가 발생하면 RDS가 자동으로 대기 인스턴스로 페일오버하여 다운타임을 최소화합니다.

  3. 확장성
    RDS를 사용하면 애플리케이션의 필요에 따라 데이터베이스 리소스를 쉽게 확장 또는 축소할 수 있습니다. 다운타임 없이 컴퓨팅 및 스토리지 용량을 늘릴 수 있습니다.

  4. 자동화된 백업
    RDS는 데이터베이스의 자동 백업을 제공하므로 특정 시점으로 쉽게 복원할 수 있습니다. 또한 자동 스냅샷 및 트랜잭션 로그 백업과 같은 추가 기능을 활성화하여 데이터 보호 기능을 강화할 수 있습니다.

  5. 보안
    RDS는 데이터베이스에 대한 세분화된 액세스 제어를 위해 AWS ID 및 액세스 관리(IAM)와 통합됩니다. 또한 AWS 키 관리 서비스(KMS)를 사용한 미사용 암호화와 SSL을 사용한 전송 중 암호화를 지원합니다.

  6. 모니터링 및 메트릭
    RDS는 Amazon CloudWatch를 통해 모니터링 및 메트릭을 제공하여 데이터베이스 성능을 추적하고, 알람을 설정하고, 리소스 사용률에 대한 인사이트를 얻을 수 있도록 합니다.

  7. 읽기 복제본
    RDS를 사용하면 데이터베이스의 읽기 복제본을 생성하여 읽기 트래픽을 오프로드하고 확장성을 개선할 수 있습니다. 읽기 복제본은 읽기 작업이 많은 워크로드를 확장하거나 지리적 중복성을 위해 사용할 수 있습니다.

  8. 다중 지역 가용성
    RDS는 재해 복구 및 여러 지리적 위치에서 지연 시간이 짧은 액세스를 위해 여러 AWS 리전에 걸쳐 데이터베이스를 복제할 수 있는 기능을 제공합니다.

  9. 호환성
    RDS는 널리 사용되는 데이터베이스 엔진을 지원하여 기존 애플리케이션 및 도구와의 호환성을 보장합니다. 일관된 관리 환경을 유지하면서 각 엔진에 특화된 기능을 제공합니다.

    전반적으로 Amazon RDS는 관계형 데이터베이스를 관리하고 확장하는 프로세스를 간소화하여 데이터베이스 관리 작업 대신 애플리케이션 로직에 집중할 수 있도록 해줍니다.

 

목차로 이동

 

 

RDS 생성 시 구성 요소

RDS 인스턴스를 만들 때 지정할 수 있는 몇 가지 구성 요소 및 구성 옵션이 있습니다. 각 구성 요소에 대해 알아보겠습니다.

  1. 엔진 옵션
    이 옵션에서는 사용하려는 데이터베이스 엔진(예: Amazon Aurora, MySQL, PostgreSQL, Oracle 또는 Microsoft SQL Server)을 선택할 수 있습니다. 각 엔진에는 고유한 기능 및 호환성 세트가 있습니다.



  2. 템플릿
    AWS는 일반적인 데이터베이스 사용 사례에 대해 사전 구성된 템플릿을 제공합니다. 이러한 템플릿에는 데이터베이스 인스턴스 크기, 스토리지 유형 및 백업 보존과 같은 사전 정의된 설정이 포함되어 있습니다.



  3. 설정
    이 섹션에서는 인스턴스 식별자, 마스터 사용자 이름, 비밀번호 등 RDS 인스턴스에 대한 일반 설정을 구성할 수 있습니다. 데이터베이스 포트를 지정하고 삭제 보호를 사용하거나 사용하지 않도록 설정할 수도 있습니다.



  4. DB 인스턴스 클래스
    여기에서 RDS 인스턴스의 컴퓨팅 및 메모리 용량을 선택할 수 있습니다. 사용 가능한 옵션은 선택한 데이터베이스 엔진과 AWS 리전에 따라 다릅니다.



  5. 스토리지
    여기에서 스토리지 유형(SSD 또는 마그네틱), 할당된 스토리지 용량, 스토리지 자동 확장 사용 여부 등 RDS 인스턴스에 대한 스토리지 옵션을 구성할 수 있습니다.



  6. 가용성 및 내구성
    이 섹션에서는 RDS 인스턴스에 대한 고가용성 옵션을 구성할 수 있습니다. 단일 AZ(단일 가용 영역) 또는 다중 AZ(여러 가용 영역) 배포 중에서 선택하여 복원력을 강화할 수 있습니다.



  7. 연결
    이 섹션에서는 RDS 인스턴스가 배포될 VPC(가상 사설 클라우드) 및 서브넷을 지정할 수 있습니다. 또한 공용 접근성을 구성하고 보안 그룹을 할당하여 인바운드 및 아웃바운드 트래픽을 제어할 수 있습니다.



  8. 데이터베이스 옵션
    선택한 데이터베이스 엔진에 따라 해당 엔진과 관련된 추가 옵션이 여기에 표시될 수 있습니다. 예를 들어 MySQL의 경우 문자 집합, 데이터 정렬 및 복제 설정과 같은 매개변수를 구성할 수 있습니다.



  9. 백업
    이 섹션에서는 백업 보존 기간, 기본 설정 백업 창, 자동 백업 사용 여부 등 RDS 인스턴스에 대한 백업 설정을 지정할 수 있습니다.



  10. 유지 관리
    이 섹션에서는 AWS가 소프트웨어 패치 및 업데이트와 같은 유지 관리 활동을 수행할 수 있는 RDS 인스턴스의 기본 유지 관리 기간을 구성할 수 있습니다.



  11. 모니터링
    이 섹션에서는 RDS 인스턴스에 대한 고급 모니터링을 사용하거나 사용하지 않도록 설정할 수 있습니다. 향상된 모니터링은 데이터베이스 성능 및 리소스 사용률에 대한 추가 인사이트를 제공합니다.



  12. 로그 내보내기
    감사 및 문제 해결을 위해 데이터베이스 로그를 Amazon CloudWatch Logs 또는 Amazon S3와 같은 서비스로 내보내도록 구성할 수 있습니다.



  13. 태그
    태그는 조직적인 목적을 위해 RDS 인스턴스에 할당할 수 있는 키-값 쌍입니다. 리소스를 관리하고 분류하는 데 도움이 될 수 있습니다.


요구 사항에 따라 이러한 구성 요소를 구성한 후에는 RDS 인스턴스 만들기를 계속할 수 있습니다. 인스턴스를 시작하기 전에 구성을 검토하고 유효성을 검사하여 원하는 설정과 일치하는지 확인하는 것을 잊지 마세요.

 

목차로 이동

 

 

RDS 쿼리 편집기

RDS 쿼리 편집기는 AWS에서 제공하는 웹 기반 도구로, Amazon RDS 데이터베이스에 대해 SQL 쿼리를 대화형으로 실행할 수 있습니다. 이 도구는 추가적인 클라이언트 도구나 구성 없이도 AWS 관리 콘솔에서 직접 데이터베이스에 액세스할 수 있는 편리하고 안전한 방법을 제공합니다.

주요 특징

  1. 브라우저 기반 SQL 편집기
    쿼리 편집기는 SQL 쿼리를 작성, 실행 및 분석할 수 있는 브라우저 기반 인터페이스를 제공합니다. 구문 강조 표시, 자동 완성, 오류 검사 등의 친숙한 SQL 편집기 환경을 제공하여 쿼리 작성에 도움을 줍니다.

  2. 연결 관리
    쿼리 편집기를 사용하면 AWS 관리 콘솔에서 직접 RDS 데이터베이스 인스턴스에 연결할 수 있습니다. 원하는 데이터베이스 인스턴스를 선택하고, 인증 자격 증명을 제공하고, 데이터베이스에 대한 보안 연결을 설정할 수 있습니다.

  3. 다중 데이터베이스 지원
    쿼리 에디터를 사용하여 MySQL, PostgreSQL, Oracle, Microsoft SQL Server, Amazon Aurora 등 RDS에서 지원하는 다양한 데이터베이스 엔진과 상호 작용할 수 있습니다. 인터페이스는 선택한 데이터베이스 엔진에 따라 조정되어 엔진별 기능 및 구문을 제공합니다.

  4. 쿼리 실행 및 결과
    연결되면 편집기에서 바로 SQL 쿼리를 실행할 수 있습니다. 쿼리 에디터는 쿼리를 데이터베이스 엔진으로 전송하고 결과를 표 형식으로 표시합니다. 쿼리 결과를 보고 탐색하고, 열을 정렬하고, 필터를 적용할 수 있습니다.

  5. 쿼리 기록
    쿼리 편집기는 실행된 쿼리의 기록을 유지하므로 이전 쿼리에 쉽게 액세스하고 다시 실행할 수 있습니다. 이 기능은 과거 쿼리를 검토하거나 문제를 해결하거나 자주 실행되는 문을 재사용하는 데 유용합니다.

  6. 데이터 시각화
    쿼리 편집기는 쿼리 결과를 시각화하기 위한 기본적인 차트 기능을 제공합니다. 쿼리 출력에서 바로 간단한 막대형, 꺾은선형, 원형 차트를 만들어 데이터를 분석하고 인사이트를 얻을 수 있습니다.

  7. 쿼리 실행 옵션
    쿼리 에디터는 쿼리 실행 시간 제한 및 최대 결과 행 제한 설정과 같은 쿼리 실행 동작을 제어하는 옵션을 제공합니다. 이러한 옵션은 성능에 영향을 줄 수 있는 장기간 실행되는 쿼리 또는 과도한 결과 집합을 방지하는 데 도움이 됩니다.

  8. 쿼리 매개변수
    쿼리 편집기 내에서 변수를 사용하여 SQL 쿼리를 매개변수화할 수 있습니다. 이를 통해 다양한 매개변수 값으로 쿼리를 재사용할 수 있으므로 쿼리의 유연성과 효율성이 향상됩니다.

  9. 내보내기 및 가져오기
    쿼리 편집기를 사용하면 쿼리 결과를 CSV 또는 JSON 형식으로 내보낼 수 있어 쿼리 출력을 쉽게 저장하거나 공유할 수 있습니다. 또한 로컬 파일에서 SQL 스크립트를 에디터로 가져와 실행할 수도 있습니다.

전반적으로 RDS 쿼리 편집기는 AWS 관리 콘솔 내에서 편리한 웹 기반 인터페이스를 제공함으로써 RDS 데이터베이스에 대해 SQL 쿼리를 실행하는 프로세스를 간소화합니다. 생산성을 향상시키고, 추가 SQL 클라이언트가 필요하지 않으며, 클라우드에서 데이터베이스와 상호 작용할 수 있는 안전한 방법을 제공합니다.

 

목차로 이동

 

 

RDS 스냅샷

RDS 스냅샷은 특정 시점의 Amazon RDS 데이터베이스 인스턴스의 백업입니다. 데이터베이스의 데이터 및 구성 설정을 캡처하여 해당 스냅샷에서 데이터베이스를 복원하거나 새 데이터베이스를 만들 수 있습니다.

주요 특징

 

  1. 데이터 백업
    RDS 스냅샷은 데이터베이스를 백업하는 안정적이고 효율적인 방법을 제공합니다. 데이터, 테이블, 인덱스 및 구성을 포함하여 데이터베이스의 전체 콘텐츠를 캡처합니다.

  2. 특정 시점 복구
    RDS 스냅샷을 사용하면 데이터베이스를 특정 시점으로 복원할 수 있습니다. 이 기능은 실수로 데이터를 삭제하거나 데이터베이스가 손상되거나 기타 예기치 않은 문제가 발생한 경우 복구하는 데 유용합니다. 원하는 스냅샷을 선택하여 데이터베이스를 특정 시점의 상태로 복원할 수 있습니다.

  3. 빠르고 안정적
    RDS 스냅샷은 Amazon S3를 스토리지로 활용하므로 백업 데이터의 내구성과 고가용성을 보장합니다. 스냅샷은 비동기식으로 생성되므로 백업 프로세스가 진행되는 동안에도 데이터베이스를 계속 사용할 수 있습니다.

  4. 자동화된 백업
    RDS는 데이터베이스 인스턴스에 대해 자동 백업을 사용하도록 설정할 수 있는 옵션을 제공합니다. 자동 백업을 사용하면 RDS가 정의된 백업 창에 따라 데이터베이스의 정기적인 스냅샷을 만듭니다. 따라서 수동으로 스냅샷을 관리할 필요가 없으며 최신 백업의 가용성을 보장할 수 있습니다.

  5. 수동 스냅샷
    자동 백업 외에도 언제든지 수동 스냅샷을 만들 수 있습니다. 수동 스냅샷을 사용하면 백업 프로세스를 더 세밀하게 제어할 수 있으므로 중요한 변경을 수행하거나 유지 관리 활동을 수행하기 전에 특정 데이터베이스 상태를 캡처할 수 있습니다.

  6. 스냅샷 공유
    RDS 스냅샷은 다른 AWS 계정과 공유하거나 공개적으로 액세스할 수 있습니다. 이 기능은 개발팀, 파트너 또는 기타 이해관계자와 데이터베이스 스냅샷을 공유하려는 시나리오에 유용합니다.

  7. 스냅샷 복사
    여러 AWS 리전 간에 RDS 스냅샷을 복사할 수 있습니다. 이렇게 하면 스냅샷을 쉽게 복사하여 원하는 리전에서 복원함으로써 다른 리전에서 데이터베이스 복제본을 생성하거나 재해 복구를 수행할 수 있습니다.

  8. 비용 효율적
    RDS 스냅샷은 증분 방식이므로 마지막 스냅샷 이후의 변경 사항만 캡처됩니다. 따라서 스냅샷 간의 차이 데이터만 저장하여 스토리지 비용을 절감할 수 있습니다.

  9. 보존 기간
    RDS를 사용하면 자동화된 백업에 대한 보존 기간을 정의할 수 있습니다. RDS가 자동화된 백업을 보존할 기간을 지정하여 백업 보존 정책을 제어할 수 있습니다.

RDS 스냅샷은 Amazon RDS에만 해당되며 RDS 환경 외부의 다른 데이터베이스 엔진이나 서비스에서 직접 사용할 수 없다는 점에 유의해야합니다.


전반적으로 RDS 스냅샷은 Amazon RDS 데이터베이스를 백업하고 특정 시점에 복구할 수 있는 편리하고 효율적인 방법을 제공합니다. 데이터 보호, 유연성, 사용 편의성을 제공하여 데이터베이스 인스턴스의 가용성과 무결성을 보장합니다.

 

목차로 이동

 

 

RDS 자동 백업

RDS 자동 백업은 데이터베이스 인스턴스를 백업하는 프로세스를 자동화하는 Amazon RDS에서 제공하는 기능입니다. 

주요 기능

 

  1. 예약 백업
    자동 백업을 사용 설정하면 RDS는 정의된 백업 기간에 따라 데이터베이스를 정기적으로 백업합니다. 백업 창은 백업이 예약되는 사용자가 정의한 시간 범위입니다. 애플리케이션의 워크로드 패턴 및 리소스 가용성에 따라 백업 기간의 시작 시간을 지정할 수 있습니다.

  2. 매일 전체 백업
    RDS는 백업 기간 동안 매일 데이터베이스 인스턴스의 전체 백업을 수행합니다. 전체 백업은 데이터, 로그 및 구성을 포함한 전체 데이터베이스를 캡처합니다.

  3. 증분 백업
    초기 전체 백업 후 RDS는 마지막 백업 이후 데이터베이스에 변경된 사항만 캡처하여 증분 백업을 수행합니다. 이 증분 백업 방식은 스토리지 및 백업 기간을 최적화하는 데 도움이 됩니다.

  4. 보존 기간
    RDS를 사용하면 자동화된 백업에 대한 보존 기간을 정의할 수 있습니다. 보존 기간에 따라 RDS가 자동화된 백업을 보관하는 기간이 결정됩니다. 1일에서 35일 사이의 값을 선택할 수 있습니다. 보존 기간에 도달하면 새 백업을 위한 공간을 확보하기 위해 가장 오래된 자동 백업이 삭제됩니다.

  5. 특정 시점 복구
    자동 백업을 사용하면 특정 시점 복구가 가능합니다. 즉, 보존 기간 내의 특정 시점으로 데이터베이스를 복원할 수 있습니다. RDS는 트랜잭션 로그를 자동으로 추적하고 이를 사용하여 특정 타임스탬프에 원하는 상태로 데이터베이스를 복원합니다.

  6. 데이터 내구성
    RDS 자동 백업은 Amazon S3에 저장되므로 내구성과 중복성이 보장됩니다. Amazon S3는 백업 데이터에 높은 내구성을 제공하여 데이터 손실의 위험을 줄여줍니다.

  7. 백업 암호화
    RDS를 사용하면 AWS 키 관리 서비스(KMS)를 사용하여 자동화된 백업을 암호화할 수 있습니다. 백업을 암호화하면 저장된 민감한 데이터에 대한 추가적인 보안 계층을 제공합니다.

  8. 백업 스토리지
    RDS 자동 백업에 사용되는 스토리지는 데이터베이스 스토리지와는 별개입니다. RDS는 자동으로 백업 스토리지를 관리하며, 보존 기간 내에 있는 백업 스토리지에 대해서는 요금이 청구되지 않습니다. 그러나 보존 기간을 초과하는 백업 스토리지에는 일반 Amazon S3 요금이 청구됩니다.

  9. 백업 복원
    자동 백업에서 복원하는 것은 간단한 과정입니다. RDS 관리 콘솔, API 또는 명령줄 인터페이스를 사용하여 보존 기간 내의 어느 시점으로든 데이터베이스 인스턴스를 쉽게 복원할 수 있습니다.

RDS 자동 백업을 사용하도록 설정하면 데이터베이스를 정기적으로 백업하고 특정 시점으로 쉽게 복원할 수 있습니다. 이렇게 하면 실수로 인한 삭제, 소프트웨어 오류 또는 기타 예기치 못한 문제로부터 데이터를 보호할 수 있습니다. 또한 백업 일정과 보존을 자동화하여 백업 관리 프로세스를 간소화합니다.

 

목차로 이동

 

 

RDS 예약 인스턴스

RDS 예약 인스턴스(RI)는 Amazon RDS에서 제공하는 구매 옵션으로, 온디맨드 요금에 비해 할인된 시간당 요금을 지불하고 지정된 기간 동안 데이터베이스 인스턴스를 예약할 수 있습니다. RDS 예약 인스턴스는 비용 절감 및 용량 예약 혜택을 제공합니다.

 

주요 특징

 

  1. 비용 절감
    RDS 예약 인스턴스는 온디맨드 인스턴스를 사용하는 것에 비해 상당한 비용 절감 효과를 제공합니다. 절감 효과는 RI 유형, 기간 및 인스턴스 구성에 따라 30%에서 70%까지 다양합니다.

  2. 인스턴스 유연성
    RDS 예약 인스턴스는 동일한 인스턴스 제품군 내에서 인스턴스 크기 유연성을 제공하므로 데이터베이스 인스턴스 크기를 워크로드 요구 사항에 맞게 조정할 수 있습니다. 이러한 유연성은 적절한 성능을 보장하면서 비용을 최적화하는 데 도움이 됩니다.

  3. 가용 영역 예약
    RDS 예약 인스턴스를 구매할 때 예약이 적용되는 특정 가용성 영역을 선택합니다. 이렇게 하면 해당 특정 영역에서 RI 용량이 예약되어 피크 시간대에도 인스턴스 가용성을 제공합니다.

  4. 기간 옵션
    RDS 예약 인스턴스는 1년 또는 3년 약정으로 구매할 수 있습니다. 약정 기간이 길수록 잠재적인 비용 절감 효과가 커집니다. 하지만 장기 예약은 더 많은 선불 결제가 필요합니다.

  5. 결제 옵션
    AWS는 RDS 예약 인스턴스에 대해 다양한 결제 옵션을 제공합니다. 선불 비용 전액을 지불하거나, 월별 할부로 일부만 지불하거나, 월별 요금이 더 높은 선불 결제 옵션을 선택할 수 있습니다.

  6. 인스턴스 사용률
    RDS 예약 인스턴스를 사용하면 인스턴스의 실제 사용량에 관계없이 청구 혜택이 적용됩니다. 즉, 인스턴스가 활발하게 사용 중인지 유휴 상태인지에 관계없이 예약된 용량에 대해 비용을 지불합니다.

  7. 수정 및 교환
    동일한 인스턴스 제품군 내에 있는 한, 인스턴스 크기 또는 가용 영역 변경과 같은 RDS 예약 인스턴스를 유연하게 수정할 수 있습니다. 또한 RI 유형을 교환할 수도 있으므로 변화하는 워크로드 요구 사항에 적응할 수 있습니다.

RDS 예약 인스턴스는 특정 데이터베이스 인스턴스 제품군(예: MySQL용 Amazon RDS, PostgreSQL 또는 Oracle)에 한정된다는 점에 유의해야 합니다. RI 혜택은 선택한 제품군 및 가용성 영역 내의 모든 적격 인스턴스에 적용됩니다.

RDS 예약 인스턴스를 전략적으로 사용하면 데이터베이스 호스팅 비용을 효과적으로 낮추는 동시에 AWS RDS 데이터베이스에 대한 안정적이고 예측 가능한 인프라를 보장할 수 있습니다.

목차로 이동

 

RDS 프록시

AWS RDS 프록시는 Amazon Web Services(AWS)에서 제공하는 완전 관리형 데이터베이스 프록시 서비스입니다. 이를 통해 Amazon RDS(관계형 데이터베이스 서비스) 데이터베이스에 대한 연결을 쉽고 안전하게 관리할 수 있습니다. RDS 프록시는 애플리케이션과 데이터베이스 사이의 중개자 역할을 하며 연결 풀링, 로드 밸런싱, 장애 조치 기능을 제공합니다.

AWS RDS 프록시 사용의 주요 이점은 다음과 같습니다:

  1. 연결 풀링
    RDS 프록시는 데이터베이스 연결을 풀링하고 재사용하여 연결 오버헤드를 줄이는 데 도움이 됩니다. 따라서 애플리케이션의 확장성과 성능이 향상됩니다.

  2. 확장성
    RDS 프록시는 애플리케이션의 수요에 따라 연결 수를 자동으로 확장하므로 데이터베이스 성능에 영향을 주지 않고 많은 수의 동시 연결을 처리할 수 있습니다.

  3. 고가용성
    장애 발생 시 트래픽을 정상 데이터베이스 인스턴스로 자동 리디렉션하여 기본 제공 장애 조치 기능을 제공합니다. 따라서 데이터베이스 인스턴스 장애 또는 유지 관리 활동 중에도 애플리케이션을 계속 사용할 수 있습니다.

  4. 보안
    RDS 프록시는 인증 및 권한 부여를 위해 AWS IAM(Identity and Access Management)과 통합됩니다. 애플리케이션에 프록시에 액세스할 수 있는 특정 권한을 부여하여 보안 제어를 강화할 수 있습니다.

  5. 쿼리 캐싱
    RDS 프록시는 쿼리 캐싱을 지원하므로 자주 실행되는 쿼리와 그 결과를 캐싱하여 읽기 작업량이 많은 워크로드의 성능을 개선할 수 있습니다.

  6. 모니터링 및 로깅
    AWS는 RDS 프록시에 대한 상세한 모니터링 및 로깅 기능을 제공하여 성능을 모니터링하고, 연결 사용량을 추적하고, 문제를 진단할 수 있도록 합니다.


AWS RDS 프록시를 사용하려면 프록시 엔드포인트를 생성하고 데이터베이스에 직접 연결하는 대신 프록시에 연결하도록 애플리케이션을 구성해야 합니다. 프록시 엔드포인트는 데이터베이스 연결을 위한 가상 엔드포인트 역할을 합니다.

전반적으로 AWS RDS 프록시는 데이터베이스 연결 관리를 간소화하고, 확장성과 성능을 개선하며, Amazon RDS 데이터베이스의 가용성과 보안을 강화합니다.

반응형
반응형

목차

IAM(Identity and Access Management)

 

Amazon IAM(Identity and Access Management)은 Amazon Web Services 리소스에 대한 액세스를 안전하게 제어하는 데 도움이 되는 웹 서비스입니다. 이를 통해 사용자, 액세스 키와 같은 보안 자격 증명, 사용자 및 애플리케이션이 액세스할 수 있는 AWS 리소스를 제어하는 권한을 관리할 수 있습니다.

주요 개념

 

  1. User(사용자)
    IAM 사용자는 AWS와 상호 작용하는 데 사용하는 사람 또는 애플리케이션을 나타내기 위해 AWS에서 생성하는 엔티티입니다. AWS의 사용자는 이름, AWS 관리 콘솔에 로그인하기 위한 비밀번호, API 또는 CLI와 함께 사용할 수 있는 최대 2개의 액세스 키로 구성됩니다.

  2. Groups(그룹)
    IAM 그룹은 IAM 사용자의 모음입니다. 그룹을 사용하여 사용자 컬렉션에 대한 권한을 지정할 수 있으며, 이를 통해 해당 사용자에 대한 권한을 더 쉽게 관리할 수 있습니다.

  3. Roles(역할)
    IAM 역할은 AWS에서 수행할 수 있는 작업과 수행할 수 없는 작업을 결정하는 권한 정책이 있는 AWS ID라는 점에서 사용자와 매우 유사합니다. 그러나 역할에는 표준 장기 자격 증명(비밀번호 또는 액세스 키)이 연결되어 있지 않습니다. 대신, 역할을 맡으면 역할 세션에 대한 임시 보안 자격 증명을 제공합니다.

  4. Policies(정책)
    정책은 ID 또는 리소스와 연결될 때 해당 권한을 정의하는 AWS의 객체입니다. AWS는 주 엔터티(사용자 또는 역할)가 요청을 할 때 이러한 정책을 평가합니다.

  5. Security Credentials(보안 자격 증명)
    AWS에 프로그래밍 방식으로 요청하려면 AWS 보안 자격 증명을 사용해야 합니다. AWS는 보안 자격 증명을 사용하여 요청을 인증하고 권한을 부여합니다.

안전하고 효율적인 환경을 유지하려면 IAM 모범 사례를 따르는 것이 중요합니다. 이러한 모범 사례에는 최소 권한 액세스, 정기적으로 사용하지 않는 자격 증명 교체 및 제거, 그룹을 사용하여 권한 할당, MFA(다단계 인증) 활성화, 강력한 비밀번호 정책 설정 등이 있습니다.

 

다음은 IAM에서 사용자, 그룹, 규칙을 생성하는 방법에 대해 다루고 있는 포스팅입니다. 참고해보셔도 좋을 것 같습니다.

 

[AWS Cloud] User 및 Group생성하기(IAM)

목차 Group 생성 User 생성 사용자 액세스 키 생성 S3 Browser Group 생성 User 생성 사용자 액세스 키 생성 S3 Browser 위 액세스 키를 생성하는 이유는 보안의 이유도 있지만 이 브라우저를 사용하기 위함

easyitwanner.tistory.com

 

[AWS Cloud] 자신만의 규칙 생성하기 (IAM)

이번 포스팅은 간단하게 역할(룰)을 부여하는 것만 다루어서 목차는 따로 없습니다. 이러한 방식으로 간단하게 대표적인 기능을 정리한 후 각 구성요소에 대해서 설명하는 시간을 갖도록 하겠

easyitwanner.tistory.com

 

목차로 이동

 

IAM 보고서 액세스

 

IAM 보고서 액세스는 외부 엔티티와 공유되는 Amazon S3 버킷 또는 IAM 역할과 같은 조직 및 계정의 리소스를 식별하는 데 도움이 되는 서비스인 AWS의 IAM 액세스 분석기의 일부입니다. 여기에는 AWS 계정 또는 AWS 조직 외부에서 액세스하는 모든 리소스가 포함될 수 있습니다.

IAM 액세스 보고서는 계정의 사용자, 역할 및 서비스에 부여된 액세스를 검토하려는 경우에 특별히 생성됩니다. 이러한 보고서는 특정 리소스에 액세스한 사용자, 시기 및 수행한 작업을 이해하는 데 도움이 됩니다.

생성할 수 있는 액세스 보고서에는 두 가지 유형이 있습니다:

  • IAM 정책 보고서: 리소스에 액세스할 수 있는 AWS 계정의 엔티티(사용자, 역할 및 서비스) 및 해당 엔티티에 부여된 권한에 대한 정보를 제공합니다.

  • 마지막으로 액세스한 정보 보고서: AWS 계정의 엔티티가 리소스에 마지막으로 액세스한 시간을 보여줍니다. 이를 통해 사용하지 않는 권한을 식별하여 해당 권한을 취소할 수 있으므로 최소 권한 원칙을 준수할 수 있습니다.

  • 이러한 보고서를 생성하려면 AWS 관리 콘솔, AWS CLI 또는 AWS SDK에서 IAM 액세스 분석기를 사용할 수 있습니다. 그런 다음 추가 분석을 위해 보고서를 JSON 형식으로 사용할 수 있습니다.

IAM 모범 사례의 일부로, 이러한 보고서를 정기적으로 검토하고 필요에 따라 정책을 조정하여 AWS 리소스의 보안을 유지하는 것이 좋습니다.

 

목차로 이동

 

IAM 액세스 분석기

 

IAM 액세스 분석기는 AWS 계정에 연결된 IAM 정책을 분석하고 외부 엔티티에 액세스 권한을 부여하는 모든 정책을 감지하여 AWS 리소스의 보안을 개선하는 데 도움이 되는 AWS 서비스입니다. 간단히 말해, 외부 엔티티와 공유되는 조직 내 리소스를 식별하는 데 도움이 됩니다.

Access Analyzer는 수학적 논리 및 추론의 한 형태인 자동화된 추론을 사용하여 정책에서 허용하는 모든 가능한 액세스 경로를 결정함으로써 포괄적이고 정확한 결과를 제공합니다.

주요 기능

 

  1. 공유 리소스 탐지
    액세스 분석기는 계정 외부의 엔티티와 공유되는 Amazon S3 버킷, IAM 역할, AWS 키 관리 서비스(KMS) 키, AWS 람다 함수, Amazon Simple Queue Service(SQS) 대기열과 같은 리소스를 탐지할 수 있습니다.

  2. IAM 정책 분석
    엔터티(사용자, 역할 또는 서비스)가 액세스할 수 있는 리소스 및 작업에 대한 자세한 보고서를 제공하여 정책 권한을 검증하는 데 도움을 줍니다. 

  3. 정책 유효성 검사
    리소스 정책의 공개 및 계정 간 접근성을 검증하고, 의도한 것보다 더 광범위한 액세스를 허용할 수 있는 정책 요소를 식별하고, 액세스를 제한하기 위한 변경을 권장할 수 있습니다. 

  4. 시간 경과에 따른 액세스 분석
    IAM 액세스 분석기는 정책이 변경될 때 지속적으로 권한을 모니터링하고 분석하여 위험을 증가시킬 수 있는 의도하지 않은 변경을 방지할 수 있도록 도와줍니다.

Access Analyzer 결과는 AWS 계정에서 직접 생성되며, AWS 관리 콘솔, AWS CLI 또는 API를 통해 이러한 결과를 볼 수 있습니다. 이러한 결과를 정기적으로 검토하고 필요한 조치를 취하면 AWS 리소스의 보안을 유지하는 데 도움이 될 수 있습니다.

 

아카이브 규칙

 

AWS IAM 액세스 분석기의 보관 규칙은 규칙을 생성할 때 정의한 기준을 충족하는 새로운 발견을 자동으로 보관하는 데 사용됩니다. 이 규칙은 액세스 분석기에서 보고한 보안 결과를 관리하고 우선순위를 지정하는 데 도움이 됩니다.

액세스 분석기가 검색 결과를 생성할 때 검색 결과와 일치하는 기존 아카이브 규칙이 있는지 확인합니다. 일치하는 항목이 발견되면 액세스 분석기는 자동으로 해당 항목을 아카이브합니다. 즉, 해당 검색 결과는 검색 결과 목록에서 계속 사용할 수 있지만 보관된 것으로 표시되며 활성 검색 결과의 총 수에 포함되지 않습니다.

아카이브 규칙은 다음과 같은 경우에 유용할 수 있습니다.

  • 예상된 결과이며 조치가 필요하지 않은 결과가 있는 경우.
  • 보안 분석과 가장 관련성이 높은 결과에 집중하려는 경우.
  • 각 아카이브 규칙에는 이름과 하나 이상의 필터 기준이 포함됩니다. 필터 기준은 규칙과 일치하기 위해 검색 결과가 충족해야 하는 조건을 지정합니다. 필터에는 계정 ID, 리소스 유형, 리소스 지역 및 액세스 유형에 대한 조건이 포함될 수 있습니다.

검토하고 해결해야 할 검색 결과가 자동으로 보관되지 않도록 보관 규칙을 신중하게 구성하는 것이 중요합니다.

아카이브 규칙 기능을 포함한 IAM 액세스 분석기는 AWS 환경의 보안을 강화하는 데 도움이 될 수 있지만, 이는 종합적인 보안 전략의 일부일 뿐이라는 점에 유의하시기 바랍니다. 항상 보안 설정과 관행을 정기적으로 검토하고 다른 AWS 보안 도구와 기능도 활용하는 것이 좋습니다.

 

분석기

 

분석기는 계정에서 설정한 리소스로서 AWS 리소스 정책을 검사합니다. 리소스의 공개 및 교차 계정 액세스에 대한 포괄적인 가시성을 제공합니다.

작동 방식은 다음과 같습니다.

  1. 지역 및 계정 범위
    분석기를 만들 때 분석 영역을 선택할 수 있습니다. 분석기는 전체 AWS 계정 내에서 또는 특정 AWS 리전 내에서 리소스 정책을 분석하도록 설정할 수 있습니다. 범위가 설정되면 분석기는 해당 범위 내에서 지원되는 리소스의 정책을 검토합니다.

  2. 결과
    분석기는 리소스 정책을 지속적으로 모니터링하여 "결과"를 보고합니다. 분석기가 계정 외부 또는 조직 내의 다른 계정에서 AWS 조직에서 액세스할 수 있는 리소스를 식별할 때 결과가 생성됩니다.

  3. 결과 보관 및 해결
    예상된 결과이며 조치가 필요하지 않은 경우 IAM Access Analyzer 결과를 보관할 수 있습니다. 발견의 원인이 된 조건이 해결되면 발견은 자동으로 해결됩니다.

  4. 정책 확인
    또한 분석기는 정책 확인 기능을 제공하여 정책 구문의 유효성을 검사하고 리소스 정책을 배포하기 전에 평가할 수 있습니다. 이를 통해 의도하지 않은 공개 또는 교차 계정 액세스를 방지할 수 있습니다.

AM 액세스 분석기는 AWS 환경의 보안을 유지하고 개선하기 위한 강력한 도구이지만, 다른 보안 도구와 마찬가지로 보안 설정 및 관행을 정기적으로 검토하고 업데이트하는 것을 포함하는 광범위한 보안 전략의 일부로 사용해야 합니다.

 

목차로 이동

 

자격 증명 보고서

 

AWS의 자격 증명 보고서는 AWS 계정의 보안 상태를 감사하고 개선하는 데 도움이 되는 보안 기능입니다. 특히 계정에 어떤 IAM 사용자와 역할이 있는지, 어떤 권한이 있는지 파악하는 데 유용합니다.

자격 증명 보고서에 포함된 내용은 다음과 같습니다.

  1. IAM 사용자 정보
    계정의 각 사용자에 대해 자격 증명 보고서에는 사용자가 생성된 날짜, 비밀번호를 마지막으로 사용한 날짜, AWS 관리 콘솔에 마지막으로 액세스한 날짜, 액세스 키(있는 경우)를 마지막으로 사용한 날짜와 같은 세부 정보가 나열됩니다.

  2. MFA 상태
    다단계 인증(MFA)은 AWS 계정에 추가적인 보호 계층을 추가합니다. 자격 증명 보고서에는 각 사용자에 대해 이 기능이 활성화되어 있는지 여부가 표시됩니다.

  3. 주요 정보 액세스
    이 보고서에는 각 사용자의 액세스 키에 대한 정보도 포함되어 있습니다. 키가 마지막으로 사용된 시기와 키가 사용된 AWS 서비스가 표시됩니다.

  4. 비밀번호 정책 준수
    자격 증명 보고서는 IAM 사용자가 계정 비밀번호 정책을 준수하는지 확인하는 데 도움이 될 수 있습니다. 예를 들어, 최소 글자 수, 대문자 하나 이상 또는 90일마다 교체해야 하는 비밀번호를 사용하도록 설정되어 있는지 확인할 수 있습니다.

자격증명 보고서는 IAM 콘솔에서 CSV 파일로 다운로드할 수 있으며, 몇 시간마다 업데이트됩니다. 최신 보고서가 필요한 경우 수동으로 생성할 수 있습니다. 이러한 보고서를 정기적으로 사용하여 IAM 사용자의 액세스 및 보안 구성을 검토하고 관리하면 AWS 리소스를 안전하게 유지하는 데 큰 도움이 될 수 있습니다.

 

목차로 이동

 

조직 활동

 

AWS ID 및 액세스 관리(IAM)의 "조직 활동"은 통합 청구 및 계정 중앙 집중식 제어를 위해 IAM과 통합되는 AWS 조직 서비스를 의미합니다.

AWS 조직을 사용하면 여러 AWS 계정을 사용자가 생성하고 중앙에서 관리하는 조직으로 통합할 수 있습니다. 이 서비스는 통합 청구를 통해 조직의 모든 AWS 계정에 대해 단일 결제 방법을 설정할 수 있도록 하여 청구를 간소화합니다.

IAM의 경우, AWS Organizations를 사용하면 모든 계정에 대한 액세스, 규정 준수 및 보안을 중앙에서 제어할 수 있습니다. 이를 통해 계정이 회사 전체의 액세스 제어 정책을 준수하도록 할 수 있습니다.

예를 들어, AWS Organizations를 사용하면 다음과 같이 할 수 있습니다.

  1. 여러 AWS 계정의 정책을 중앙에서 관리할 수 있습니다
    SCP(서비스 제어 정책)를 사용하여 계정에 대한 세분화된 권한을 설정할 수 있습니다.

  2. AWS 계정 생성 및 관리 자동화
    새 계정을 쉽게 생성하고 기존 계정을 대규모로 관리할 수 있습니다.

  3. 청구서 통합
    모든 AWS 계정에 대해 하나의 청구서를 받을 수 있습니다.

  4. AWS 서비스에 대한 액세스 제어
    모든 계정이 조직 내에서 유지되고 보안 및 규정 준수 요구 사항을 충족하는지 확인할 수 있습니다.

  5. 구성원 계정을 설정하고 관리하세요
    기존 계정을 조직에 참여하도록 초대하고 조직 내에서 새 계정을 생성할 수 있습니다.

AWS 조직은 AWS 계정을 관리하고 구성하는 방법을 제공하지만, 각 개별 계정 내의 사용자, 역할 및 권한을 관리하는 데는 여전히 IAM 서비스를 사용한다는 점에 유의하세요.

 

목차로 이동

 

SCP(Service Control Policies)


SCP(서비스 제어 정책)는 AWS 조직에서 조직 계정의 권한을 관리하기 위해 사용할 수 있는 정책의 한 유형입니다. SCP는 조직의 모든 계정에 대해 사용 가능한 최대 권한을 중앙에서 제어하여 계정이 조직의 액세스 제어 지침 내에서 유지되도록 도와줍니다.

SCP는 조직을 만드는 데 사용하는 계정인 마스터 계정에서 만들어지고 적용됩니다. SCP는 AWS 서비스 API(예: EC2, S3, DynamoDB 등)의 사용을 화이트리스트 또는 블랙리스트에 추가하는 데 사용됩니다.

IAM 정책은 계정 내의 각 엔티티(사용자 또는 역할)가 허용하거나 거부하는 작업을 결정하는 반면, SCP는 계정에서 특정 AWS 서비스 작업을 수행할 수 있는지 여부를 제어합니다.

다음은 SCP에 대한 몇 가지 중요한 사항입니다:

  1. 기본적으로 거부
    기본적으로 "FullAWSAccess"라는 이름의 SCP는 조직의 모든 계정에 걸쳐 모든 서비스 및 작업에 대한 액세스를 허용합니다. 이 기본 정책을 제거하면 모든 AWS 서비스 작업이 암시적으로 거부됩니다.

  2. 평가 로직
    SCP는 명시적 거부, 암시적 거부, 명시적 허용을 사용합니다. 허용 규칙이 없는 것은 암시적 거부에 해당합니다. 명시적 거부는 항상 모든 허용보다 우선합니다.

  3. 화이트리스트와 블랙리스트
    SCP를 사용하여 서비스 작업을 화이트리스트 또는 블랙리스트에 추가할 수 있습니다. 화이트리스트를 사용하면 허용되는 서비스 및 작업을 지정할 수 있고, 블랙리스트를 사용하면 허용되지 않는 서비스 및 작업을 지정할 수 있습니다.

  4. 계층 구조
    SCP는 루트, OU(조직 구성 단위) 또는 개별 계정 수준에서 첨부할 수 있습니다. 루트에 첨부된 SCP는 모든 OU 및 계정에 적용됩니다. OU 수준에서 SCP를 첨부하면 루트 수준에서 첨부된 모든 SCP를 무시합니다.


SCP는 사용자 또는 역할에 권한을 부여하는 독립형 정책이 아니라 사용자의 권한을 효과적으로 결정하기 위해 IAM 권한 정책과 함께 사용된다는 점을 기억해야 합니다.

 

목차로 이동

반응형
반응형

목차

  1. 인스턴스와 AMI
    • EC2(Amazon Elastic Compute Cloud)
    • 인스턴스
    • AMI(Amazon Machine Images)
  2. EBS와 네트워크 및 보안
    • EBS(Elastic Block Store)
    • 네트워크 및 보안
  3. 로드 밸런싱과 Auto Scaling

로드 밸런싱

AWS(Amazon Web Services)에서 로드 밸런서는 네트워크 트래픽과 워크로드를 여러 서버 또는 서버 클러스터에 균일하게 분산하는 서비스입니다. 로드 밸런서는 애플리케이션의 용량과 안정성을 높이는 데 사용됩니다.

AWS는 다음 세 가지 유형의 로드 밸런서를 제공합니다.

  1. 애플리케이션 로드 밸런서(ALB)
    요청 수준에서 작동하며 HTTP/HTTPS 트래픽을 라우팅하는 데 사용됩니다. 동일한 인스턴스의 다른 포트로 트래픽을 라우팅할 수 있습니다. 경로 기반 라우팅, 호스트 기반 라우팅, HTTP 헤더 기반 라우팅을 지원합니다.

  2. 네트워크 로드 밸런서(NLB)
    연결 수준에서 작동하며 TCP/IP 및 UDP 트래픽을 라우팅합니다. 초당 수백만 건의 요청을 처리할 수 있습니다. 네트워크 부하 분산 장치는 주로 짧은 지연 시간, 높은 처리량 및 전송 계층 트래픽이 필요할 때 사용됩니다.

  3. 클래식 로드 밸런서(CLB)
    AWS에서 제공하는 이전 유형의 로드 밸런서입니다. 전송 수준 또는 애플리케이션 수준에서 라우팅합니다. 이제 레거시로 간주되며 AWS는 새 애플리케이션에 ALB 또는 NLB를 사용할 것을 권장합니다.
  • AWS의 로드 밸런서는 다음과 같은 기능을 제공합니다.
    • 상태 확인
      로드 밸런서가 트래픽을 라우팅하는 인스턴스의 상태를 확인하도록 로드 밸런서를 구성할 수 있습니다. 인스턴스가 상태 확인에 실패하면 로드 밸런서는 상태 확인을 다시 통과할 때까지 해당 인스턴스에 대한 트래픽 라우팅을 중지합니다.

    • SSL 종료
      이렇게 하면 EC2 인스턴스에서 로드 밸런서로 SSL 트래픽을 암호화하고 해독하는 CPU 집약적인 작업이 오프로드됩니다.

    • 스티키 세션
      이를 통해 로드 밸런서가 사용자 세션을 특정 인스턴스에 바인딩할 수 있습니다.

    • 자동 확장 기능과의 통합
      로드 밸런서는 AWS 자동 확장과 통합됩니다. 인스턴스가 정상적이거나 비정상적이면 로드 밸런서에서 자동으로 추가되거나 제거됩니다.


로드 밸런서를 사용하려면 먼저 로드 밸런서를 생성하고 특정 IP 주소에서 들어오는 연결을 수신 대기하도록 구성합니다. 그런 다음 해당 연결을 라우팅할 위치를 지정합니다.

 

대상 그룹(Target group)

Amazon Elastic Load Balancing의 컨텍스트에서 대상 그룹은 하나 이상의 등록된 대상으로 요청을 라우팅하는 데 사용됩니다. 이러한 대상은 애플리케이션 아키텍처와 사용되는 로드 밸런서 유형(애플리케이션 로드 밸런서, 네트워크 로드 밸런서 또는 게이트웨이 로드 밸런서)에 따라 EC2 인스턴스, 컨테이너, IP 주소 또는 람다 함수가 될 수 있습니다.

대상 그룹을 만들 때 프로토콜(HTTP, HTTPS, TCP 또는 TLS), 포트 번호 및 대상 유형을 지정합니다. 각 측면에 대해 조금 더 자세히 설명합니다:

  • 프로토콜 및 포트
    이는 애플리케이션의 특성과 처리하는 트래픽 유형에 따라 다릅니다. HTTP/HTTPS는 웹 애플리케이션에 사용되며, TCP/TLS는 비 HTTP(S) 트래픽에 더 많이 사용됩니다.

  • 대상 유형
    인스턴스(EC2), IP 주소 또는 람다 함수가 될 수 있습니다. 인스턴스는 EC2 인스턴스를 타깃으로 사용합니다. IP 주소는 로드 밸런서를 호스팅하는 VPC 외부의 타깃을 허용합니다. 람다 함수를 사용하면 서버리스 애플리케이션을 실행할 수 있습니다.


타겟 그룹을 설정한 후 타겟 그룹에 타겟을 등록하면 로드 밸런서가 등록된 타겟으로 트래픽을 전송합니다.

애플리케이션에 대해 둘 이상의 대상 그룹을 가질 수 있으며, 이를 통해 요청을 다른 서비스로 라우팅하거나 인스턴스에서 다른 포트를 사용할 수 있습니다.

대상 그룹과 관련된 또 다른 중요한 개념은 상태 확인입니다. 상태 확인은 등록된 대상의 가용성을 모니터링하는 데 사용됩니다. 로드 밸런서는 등록된 각 대상에 주기적으로 요청을 보내 상태를 테스트합니다. 응답에 대상의 상태가 좋지 않다고 표시되면 로드 밸런서는 상태 검사를 다시 통과할 때까지 해당 대상에 대한 요청 라우팅을 중지합니다. 상태 검사에 대한 매개변수(예: 핑 대상 및 검사 간격)는 대상 그룹 수준에서 구성됩니다.

 

다음 페이지에는 로드 밸런서를 생성하는 과정을 정리했습니다.

 

[AWS Cloud] Load Barlancer 생성하기

목차 로드 밸런서의 역할 타겟 그룹 생성하기 어플리케이션 로드 밸런서 생성하기 시작하기에 앞서 해당 과정을 진행하려면 VPC에서 Subnet을 생성하고, 도메인 인증서가 있어야 합니다. 해당 내

easyitwanner.tistory.com

 

목차로 이동

 

Auto Scaling

Amazon EC2 Auto Scaling은 Amazon EC2 인스턴스를 자동으로 시작하거나 종료하여 애플리케이션의 부하를 처리하는 데 사용할 수 있는 정확한 수의 Amazon EC2 인스턴스를 확보할 수 있도록 설계된 완전 관리형 서비스입니다. 이 서비스는 애플리케이션 가용성을 유지하는 데 사용되며 정의한 조건에 따라 EC2 인스턴스를 자동으로 추가하거나 제거할 수 있습니다.

자동 확장은 안정적인 수요 패턴을 가진 애플리케이션과 시간별, 일별 또는 주별 사용량 변동이 있는 애플리케이션에 유용합니다. 수요 변화에 따라 애플리케이션을 자동으로 확장하여 성능을 유지하면서 비용을 최소화할 수 있습니다.

주요 구성과 개념

  1. 시작 구성
    시작 구성은 자동 스케일링 그룹이 EC2 인스턴스를 시작하는 데 사용하는 템플릿입니다. 시작 구성을 만들 때는 인스턴스에 대한 AMI(Amazon 머신 이미지)의 ID, 인스턴스 유형, 키 쌍, 보안 그룹 및 블록 디바이스 매핑과 같은 인스턴스 정보를 지정합니다.

  2. 자동 확장 그룹
    자동 확장 그룹에는 자동 확장 및 관리 목적으로 논리적 그룹으로 취급되는 Amazon EC2 인스턴스 모음이 포함되어 있습니다.

  3. 스케일링 계획
    자동 스케일링 그룹을 스케일링하는 방법을 결정합니다. 특정 조건이 충족되면 자동 확장은 일회성 작업을 수행하거나 수요에 따라 달라지는 지속적인 작업을 수행하여 자동 확장 그룹에 있는 인스턴스 수를 조정할 수 있습니다.

  4. 스케일링 정책
    스케일링 정책은 자동 스케일링이 애플리케이션의 수요 변화에 대응하는 방법을 알려주는 일련의 지침입니다. 고정된 인스턴스 수에 따라, 일정에 따라 또는 Amazon CloudWatch 알람에 응답하여 스케일링하도록 선택할 수 있습니다.

  5. 상태 확인
    자동 확장은 자동 확장 그룹의 인스턴스에 대해 주기적으로 상태 확인을 수행합니다. 인스턴스가 상태 검사에 실패하면 자동 확장은 해당 인스턴스를 종료하고 새 인스턴스로 교체합니다.

Amazon EC2 자동 확장을 활용하면 애플리케이션이 고가용성을 유지하고 실제로 필요한 리소스만 사용하도록 보장하여 비용을 최적화할 수 있습니다.

 

 

다음은 Auto Scaling을 생성하는 법을 정리한 포스팅입니다.

 

 

[AWS Cloud] Auto Scaling 생성하기

목차 들어가며 Auto Scaling 작동모습 들어가며 Auto Scaling을 생성하기 위해서는 템플릿이 필요합니다. 템플릿을 생성하는 방법은 아래 포스팅에 작성해 놓았으니 확인하면 좋을 듯 합니다. [AWS Cloud]

easyitwanner.tistory.com

 

목차로 이동

 

반응형
반응형

목차

  1. 인스턴스와 AMI
    •  EC2(Amazon Elastic Compute Cloud)
    • 인스턴스
    •  AMI(Amazon Machine Images)
  2. EBS와 네트워크 및 보안
  3. 로드 밸런싱과 Auto Scaling
    • 로드 밸런싱
    • Auto Scaling

EBS(Elatic Block Store)

 

EBS(Amazon Elastic Block Store)는 Amazon Elastic Compute Cloud(EC2) 인스턴스와 함께 사용하도록 설계된 고성능 블록 스토리지 서비스입니다. 영구 저장소를 제공하므로 인스턴스가 중지되거나 종료되어도 데이터가 손실되지 않습니다. 주로 데이터베이스, 파일 시스템 또는 원시 블록 수준 스토리지에 대한 액세스가 필요한 애플리케이션에 사용됩니다.

 

EBS의 주요 특징

 

  1. 내구성 및 가용성
    EBS 볼륨은 가용성과 안정성이 뛰어나도록 설계되었습니다. EBS 볼륨 데이터는 AWS 가용성 영역의 여러 서버에 복제되어 단일 구성 요소의 장애로 인한 데이터 손실을 방지합니다.

  2. 크기 및 성능
    EBS 볼륨은 1기가바이트에서 16테라바이트 크기까지 프로비저닝할 수 있습니다. EBS는 성능 특성과 가격이 다른 여러 볼륨 유형을 제공하므로 스토리지 성능과 비용을 애플리케이션의 요구 사항에 맞게 조정할 수 있습니다.

  3. 데이터 수명주기 관리
    Amazon EBS는 백업 목적으로 S3에 대한 특정 시점 스냅샷을 지원합니다. 이러한 스냅샷은 증분 방식이므로 마지막 스냅샷 이후의 변경 사항만 캡처하므로 백업 시간과 비용을 절감할 수 있습니다.

  4. 암호화
    암호화된 EBS 볼륨을 생성하여 미사용 데이터에 대한 보안 및 규정 준수 요건을 충족할 수 있습니다. 암호화 및 암호 해독은 투명하게 처리되며 EBS 볼륨 성능에 영향을 미치지 않습니다.

  5. 탄력성
    필요에 따라 볼륨 크기를 늘리거나, 볼륨 유형을 수정하거나, EBS 볼륨의 성능을 조정할 수 있습니다.


EBS 볼륨은 데이터베이스, 파일 시스템 또는 원시 블록 수준 스토리지에 대한 액세스가 필요한 애플리케이션과 성능 및 비용에 대한 미세 조정이 필요한 애플리케이션에 특히 적합합니다.

 

EBS 스냅샷

 

Elastic Block Store(EBS) 스냅샷은 데이터의 특정 시점 복사본으로, 재해 복구, 마이그레이션, 규정 준수 및 백업 규정 준수 개선에 사용할 수 있는 일종의 백업입니다.

EBS 스냅샷은 스냅샷 명령이 실행되는 시점에 EBS 볼륨의 데이터 상태를 캡처하므로 증분 백업을 제공하므로 가장 최근 스냅샷 이후에 변경된 장치의 블록만 저장됩니다.

EBS 스냅샷의 작동 방식은 다음과 같습니다.

  1. 만들기
    언제든지 EBS 볼륨의 스냅샷을 생성할 수 있습니다. 스냅샷이 생성되는 동안에도 볼륨을 계속 사용할 수 있지만, 스냅샷을 생성하는 동안에는 성능이 약간 저하될 수 있습니다. 스냅샷을 만드는 데 걸리는 시간은 볼륨의 크기와 워크로드의 특성에 따라 다릅니다.

  2. 스토리지
    EBS 스냅샷은 내구성을 위해 설계된 Amazon S3에 저장됩니다. EBS 스냅샷은 S3에 저장되지만 S3 콘솔에는 표시되지 않습니다. AWS 관리 콘솔의 EBS 섹션, AWS CLI 또는 AWS SDK를 통해 관리할 수 있습니다.

  3. 복원
    스냅샷을 사용하여 생성 시 완전히 초기화되어 즉시 사용할 수 있는 새 EBS 볼륨을 생성할 수 있습니다. 또한 AWS 리전 간에 스냅샷을 복사할 수 있으므로 지리적 확장, 데이터 센터 마이그레이션 및 재해 복구를 위해 리전 간에 쉽게 확장할 수 있습니다.

  4. 비용
    스냅샷에 사용된 스토리지 양에 따라 요금이 청구됩니다. 스냅샷은 증분 방식으로 사용되므로 스냅샷을 삭제해도 요금이 항상 줄어드는 것은 아닙니다. 예를 들어, 스냅샷 체인의 중간에서 스냅샷을 삭제해도 데이터는 다음 스냅샷으로 전송되며 이에 대한 요금이 계속 청구됩니다.

  5. 암호화
    암호화된 볼륨의 스냅샷은 자동으로 암호화됩니다. 암호화된 스냅샷에서 생성된 볼륨도 자동으로 암호화됩니다.

데이터를 보호하고 재해 복구를 활성화하려면 EBS 스냅샷을 정기적으로 생성하는 것을 잊지 마세요. 아마존 데이터 라이프사이클 매니저 정책을 사용하여 EBS 스냅샷 생성을 자동화할 수 있습니다.

 

 

목차로 이동

 

네트워크 및 보안

 

EC2의 네트워크 보안은 네트워크 트래픽을 제어하고 가상 네트워크에서 인스턴스를 격리하는 기능의 조합을 통해 구현됩니다.

1. 보안 그룹(Security Group)

Amazon EC2의 보안 그룹은 네트워크 보안의 기본 요소입니다. 보안 그룹은 기본적으로 인스턴스가 인바운드 및 아웃바운드 트래픽을 제어하기 위한 가상 방화벽 역할을 합니다.

  • 보안 그룹의 구성은 다음과 같습니다.

    1. 기본 보안 그룹(Default Security Group)
      새 Amazon VPC를 만들면 기본 보안 그룹이 자동으로 생성됩니다. 인스턴스를 시작할 때 다른 보안 그룹을 지정하지 않으면 인스턴스가 자동으로 기본 보안 그룹에 연결됩니다.

    2. 규칙(Rules)
      각 보안 그룹에는 언제든지 수정할 수 있는 규칙 집합이 포함되어 있습니다. 규칙은 특정 유형의 인바운드 또는 아웃바운드 트래픽을 허용하거나 거부할 수 있습니다. 예를 들어 모든 IP 주소에서 HTTP 트래픽(포트 80)을 허용하는 인바운드 규칙과 홈 IP 주소에서 SSH 트래픽(포트 22)만 허용하는 다른 규칙이 있을 수 있습니다.



    3. 상태 저장 검사(Stateful Inspection)
      보안 그룹은 스테이트풀입니다. 즉, 인스턴스에서 요청을 보내면 인바운드 보안 그룹 규칙에 관계없이 해당 요청에 대한 응답 트래픽이 자동으로 유입되도록 허용됩니다.

    4. 탄력성(Elasticity)
      보안 그룹은 탄력적이기 때문에 언제든지 보안 그룹의 규칙을 쉽게 수정할 수 있습니다. 새 규칙은 보안 그룹과 연결된 모든 인스턴스에 자동으로 적용됩니다.

    5. 하나 이상의 인스턴스(One or More Instances)
      여러 인스턴스를 단일 보안 그룹에 연결할 수 있으며, 여러 보안 그룹을 단일 인스턴스에 연결할 수 있습니다.

    6. 권한(Permissions)
      기본적으로 보안 그룹은 모든 아웃바운드 트래픽(즉, 인스턴스에서 인터넷으로)을 허용하고 모든 인바운드 트래픽(즉, 인터넷에서 인스턴스로)을 거부합니다. 이러한 기본 규칙을 수정하여 특정 요구 사항을 충족할 수 있습니다.

    7. 각 VPC마다 다름(Different for Each VPC)
      보안 그룹은 각 VPC에 고유합니다. 따라서 각 보안 그룹 규칙은 동일한 VPC의 보안 그룹만 참조할 수 있습니다.

VPC에서 인스턴스를 시작한 후에는 해당 인스턴스의 보안 그룹을 변경할 수 있다는 점을 기억하세요. 변경 사항은 인스턴스에 자동으로 적용됩니다.

 

 

탄력적 IP(EIP)

Elastic IP 주소(EIP)는 Amazon EC2의 동적 클라우드 컴퓨팅을 위해 설계된 정적, 공용 IPv4 주소입니다. 그러나 기존의 정적 IP 주소와 달리, Elastic IP 주소를 사용하면 공용 IP 주소를 계정의 모든 인스턴스에 프로그래밍 방식으로 다시 매핑하여 인스턴스 또는 가용성 영역 장애를 마스킹할 수 있습니다. 

  • EIP의 특징은 다음과 같습니다.

    1. 정적 IP 주소
      Elastic IP 주소는 동적 클라우드 컴퓨팅을 위해 설계된 정적 IPv4 주소입니다.

    2. 인터넷에서 연결할 수 있습니다
      인스턴스에 공용 IP 주소가 없는 경우, Elastic IP 주소를 인스턴스와 연결하여 인터넷과의 통신을 활성화할 수 있습니다.

    3. 리매핑 가능
      인스턴스 장애 발생 시 AWS 계정의 다른 인스턴스에 Elastic IP 주소를 신속하게 다시 매핑하여 애플리케이션의 가용성을 보장할 수 있습니다.

    4. 인스턴스 중지/종료해도 자동으로 연결이 해제되지 않습니다
      EC2 인스턴스와 연결된 기본 공용 IP 주소와 달리, 인스턴스를 중지하거나 종료할 때 EIP는 연결이 해제되지 않습니다. 명시적으로 선택한 경우에만 연결이 해제됩니다.

    5. 관련 비용
      실행 중인 인스턴스와 연결되어 있는 동안에는 EIP에 대한 비용이 없지만, 실행 중인 인스턴스와 연결되어 있지 않거나 중지된 인스턴스 또는 연결되지 않은 네트워크 인터페이스와 연결되어 있는 경우 AWS는 소액의 시간당 요금을 부과합니다.

Elastic IP 주소를 인스턴스 또는 기본 네트워크 인터페이스에 연결하면 인스턴스의 현재 공용 IP 주소가 Amazon의 공용 IP 주소 풀에 공개되며 재사용할 수 없다는 점에 유의하세요.

AWS 계정에 Elastic IP를 할당하려면 Amazon EC2 콘솔, 명령줄 인터페이스(CLI) 또는 Amazon EC2 API를 사용할 수 있습니다. Elastic IP 주소를 할당하고 나면 모든 인스턴스 또는 네트워크 인터페이스와 연결할 수 있습니다.

 

 

배치 그룹(Placement groups)

배치 그룹은 단일 가용성 영역 내에서 인스턴스를 논리적으로 그룹화하는 것입니다. 배치 그룹을 사용하면 애플리케이션이 HPC 애플리케이션에서 흔히 볼 수 있는 긴밀하게 결합된 노드 간 통신에 필요한 전체 구간 대역폭과 저지연 네트워크 성능을 확보할 수 있습니다. 

AWS는 다음 세 가지 유형의 배치 그룹을 제공합니다.

  1. 클러스터
    가용 영역 내에서 인스턴스를 서로 가깝게 묶습니다. 이 전략을 통해 워크로드는 일반적으로 HPC 애플리케이션에서 볼 수 있는 긴밀하게 결합된 노드 간 통신에 필요한 저지연 네트워크 성능을 달성할 수 있습니다.

  2. 스프레드
    기본 하드웨어에 인스턴스를 분산합니다(가용성 영역당 그룹당 최대 7개 인스턴스). 서로 분리된 상태로 유지해야 하는 중요 인스턴스 수가 적은 애플리케이션에 권장됩니다.

  3. 파티션
    가용성 영역 내의 여러 파티션에 인스턴스를 분산합니다. 각 파티션에는 자체 랙 세트가 있습니다. 각 랙에는 자체 네트워크와 전원이 있습니다. 이 방법은 Hadoop, Cassandra, Kafka와 같은 대규모 분산 및 복제 워크로드에 권장됩니다.


배치 그룹에 여러 인스턴스 유형을 시작할 수 있지만, 배치 그룹 전체에서 동일한 인스턴스 유형을 사용하는 것이 좋습니다. 인스턴스 유형에 따라 인스턴스의 네트워크 성능과 지연 시간이 달라질 수 있기 때문입니다.

또한 배치 그룹의 성능 이점을 최대한 활용하려면 네트워킹 기능이 향상되고 동일한 가용 영역에 있는 인스턴스 사용을 고려해야 합니다.

마지막으로, 배치 그룹을 만들거나 사용하는 데는 비용이 들지 않는다는 점을 명심하세요. 그러나 구성에 따라 데이터 전송 및 Amazon EC2 인스턴스 사용과 관련된 비용이 발생할 수 있습니다.

 

키 페어(key pair)

Amazon EC2는 공개 키 암호화를 사용하여 로그인 정보를 암호화하고 해독합니다. 공개 키 암호화는 공개 키를 사용하여 비밀번호와 같은 데이터를 암호화한 다음 수신자가 개인 키를 사용하여 데이터를 해독하는 방식입니다.

키 쌍은 이 공개 키 암호화의 일부이며, AWS는 인증 정보를 처리하는 안전하고 편리한 방법으로 키 쌍을 사용합니다. 특히 키 쌍은 EC2 인스턴스에 안전하게 연결하는 데 사용됩니다.

  • 키 쌍은 개인 키와 공개 키로 구성됩니다.

    1. 개인 키
      개인 키는 키 쌍에서 안전하게 보관하고 다른 사람과 절대 공유하지 않는 부분입니다. 공개 키로 암호화된 정보를 해독하는 데 사용됩니다. AWS는 새 키 쌍을 생성할 때 .pem 파일을 제공합니다. 이 .pem 파일에는 개인 키가 포함되어 있습니다.

    2. 공개 키
      공개 키는 AWS가 보관하는 키 쌍의 일부입니다. EC2 인스턴스를 시작할 때 사용하려는 키 쌍의 이름을 지정합니다. 그러면 AWS가 공개 키로 인스턴스를 구성합니다. 공개 키는 SSH 사용자 이름 및 비밀번호와 같은 데이터를 암호화하는 데 사용되며, 해당 개인 키로만 암호를 해독할 수 있습니다.

인스턴스에 로그인하려면 로그인 정보를 해독하는 데 사용하는 개인 키가 있어야 합니다. 인스턴스 저장소 지원 인스턴스의 개인 키를 분실하면 인스턴스에 액세스할 수 없으므로 해당 인스턴스를 종료하고 다른 인스턴스를 시작해야 합니다. EBS 지원 인스턴스의 경우 인스턴스를 중지하고 루트 볼륨을 분리하여 다른 인스턴스에 연결한 후 필요한 변경을 수행한 다음 원래 인스턴스에 다시 연결할 수 있습니다.

사용자는 자신의 키 쌍을 관리할 책임이 있으며, AWS는 사용자의 개인 키 사본을 보관하지 않는다는 점에 유의하시기 바랍니다.

 

네트워크 인터페이스(Network Interface)

Amazon EC2에서 네트워크 인터페이스(Elastic 네트워크 인터페이스 또는 ENI라고도 함)는 VPC의 인스턴스에 연결할 수 있는 가상 네트워크 인터페이스입니다. 

각 네트워크 인터페이스는 VPC 내의 서브넷과 연결됩니다. 네트워크 인터페이스에는 다음과 같은 속성이 포함될 수 있습니다.

  1. 기본 개인 IPv4 주소
    네트워크 보안 규칙에서 허용하는 경우 인터넷을 통해 액세스할 수 있는 네트워크 인터페이스와 연결된 기본 IP 주소입니다.

  2. 하나 이상의 보조 비공개 IPv4 주소
    이러한 주소를 수동으로 할당하거나 Amazon이 자동으로 할당하도록 할 수 있습니다.

  3. 프라이빗 IPv4 주소당 하나의 Elastic IP(EIP) 주소
    이 주소는 AWS 계정에 할당되는 정적 공용 IPv4 주소로, 네트워크 인터페이스와 연결할 수 있습니다.

  4. 하나 이상의 IPv6 주소
    VPC에 연결된 IPv6 CIDR 블록이 있는 경우 네트워크 인터페이스에 IPv6 주소를 할당할 수 있습니다.

  5. 하나 이상의 보안 그룹
    네트워크 인터페이스에 대한 인바운드 및 아웃바운드 네트워크 트래픽을 제어하는 규칙 집합입니다.

  6. MAC 주소
    네트워크 인터페이스에 자동으로 할당됩니다.

  7. 소스/대상 확인 플래그
    기본적으로 네트워크 인터페이스는 소스/대상 확인을 수행합니다. 즉, 네트워크 인터페이스가 송수신하는 모든 트래픽의 소스 또는 대상인지 확인합니다. 그러나 NAT 인스턴스와 같이 트래픽을 라우팅하기 위한 인스턴스에서는 이 설정을 비활성화할 수 있습니다.

  8. 설명: 선택적으로 네트워크 인터페이스에 대한 설명을 제공할 수 있습니다.

네트워크 인터페이스는 시작 시 또는 그 이후 언제든지 인스턴스에 연결할 수 있습니다. 인스턴스가 실행 중이거나 중지된 경우 보조(ethN) 네트워크 인터페이스를 분리할 수 있습니다. 그러나 기본(eth0) 네트워크 인터페이스는 분리할 수 없습니다.

한 인스턴스에서 다른 인스턴스로 네트워크 인터페이스를 이동하면 네트워크 트래픽이 새 인스턴스로 리디렉션됩니다. 모든 인스턴스 유형이 여러 네트워크 인터페이스를 지원하는 것은 아닙니다. 인스턴스 유형에 따라 사용할 수 있는 네트워크 인터페이스의 수에 대한 자세한 내용은 Amazon EC2 인스턴스 유형을 참조하세요.

 

목차로 이동

 

반응형