본문 바로가기

Infrastructure

(251)
[DOP] Kinesis (Resilient Cloud Solutions) Kinesis 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "Kinesis 서비스"에 대해서 알아보도록 한다. Kinesis Overview 실시간으로 손쉽게 스트리밍 데이터를 수집, 처리 및 분석이 가능하다. 실시간 데이터를 수집한다. 애플리케이션 로그, 메트릭, 웹 사이트 클릭 스트림, IoT 원격 측정 데이터 Kinesis Data Streams: 데이터 스트림 캡처, 처리 및 저장 Kinesis Data Firehose: 데이터 스트림을 AWS 데이터 저장소로 적재한다. Kinesis Data Analytics: SQL 또는 Apache Flink로 데이터 스트림을 분석한다. Kinesis Video Streams: 비디오 스트림 캡처, 처리 및 저장한..
[DOP] Container Orchestration (Resilient Cloud Solutions) Container Orchestration 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "컨테이너 오케스트레이션 서비스"에 대해서 알아보도록 한다. Amazon ECS ECS: Elastic Container Service EC2 Launch Type AWS에서 도커 컨테이너 실행: ECS 클러스터에서 ECS 작업 실행 EC2 Launch Type: 인프라스트럭처를 프로비저닝 및 유지 관리해야 한다. ECS 클러스터에 등록하려면 각 EC2 인스턴스에서 ECS 에이전트를 실행해야 한다. AWS에서 컨테이너 시작 및 정지를 관리할 수 있다. ECS 클러스터는 여러 개의 EC2 인스턴스로 구성된다. 각각의 인스턴스는 ECS 에이전트를 실행하고 있다. 에이전트가 EC..
[DOP] API Gateway (Resilient Cloud Solutions) API Gateway 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "API 게이트웨이"에 대해서 알아보도록 한다. API Gateway 람다, HTTP 및 AWS 서비스를 API로 노출할 수 있도록 지원한다. API 버전 관리, 원한 부여, 트래픽 관리(API 키, 쓰로틀링), 대규모, 서버리스, 요청/응답 변환, OpenAPI 사양, CORS를 지원한다. 29초의 타임아웃이 있다. 람다 함수의 최대 작동 시간은 15분이므로 람다 함수의 작업이 진행 중일 때, 클라이언트에게 "타임 아웃" 오류를 전달할 수 있다. 최대 페이로드의 크기는 10MB다. 큰 용량의 파일을 전송하고자할 때는 API 게이트웨이가 적합하지 않다. AWS Lambda + API Gatewa..
[DOP] AWS Lambda (Resilient Cloud Solutions) Lambda 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "AWS 람다 서비스"에 대해서 알아보도록 한다. AWS Lambda Version 사용자가 람다 함수에 대해 작업할 때 $LATEST 버전을 사용한다. 람다 함수를 배포할 준비가 되면 버전을 생성한다. 버전이 생성되면 코드나 환경 변수를 변경할 수 없다. 새로운 버전이 출시되면 버전의 번호가 증가한다. 각 버전은 독립적이며 고유한 ARN(Amazon Resource Name)을 가진다. 버전은 코드와 구성으로 이루어진다. 각 람다 함수 버전에는 $LATEST와 같은 방식으로 액세스할 수 있다. Alias 별칭은 람다 함수 버전에 대한 "포인터"다. "dev", "test", "prod" 별칭을 정의하고..
[DOP] Systems Manager (Configuration Management and IaC) SSM 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "System Manager의 약자인 SSM"에 대해서 알아보도록 한다. Systems Manager 개요 EC2 및 On-Premise 시스템을 대규모로 관리하도록 지원한다. 인프라 상태에 대한 운영 통찰력을 얻을 수 있는 많은 도구가 있다. 문제를 쉽게 감지하게 해주고 자동화된 패칭과 규정 준수를 향상시킨다. 인스턴스를 패치해야 할 때마다 일반적으로 "System Manager"를 사용하게 된다. 실행할 모든 자동화도 "System Manager"를 사용하게 된다. Windows와 Linux OS에서 작동하고 CloudWatch Metric 및 대시보드와 완전히 통합된다. 무료로 사용할 수 있으며, 생성한..
[DOP] Serverless (Configuration Management and IaC) Serverless 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "서버리스 서비스"에 대해서 알아보도록 한다. Elastic Beanstalk 대부분의 웹/앱은 동일한 아키텍처(ALB+ASG)를 갖는다. 대부분의 서비스가 동일한 아키텍처를 따른다면 매번 새롭게 생성하는 것은 비효율적이다. "Elastic Beanstalk"는 애플리케이션 배포에 대한 개발자 중심의 관점이다. 위에서 살펴본 이미지의 구성요소(EC2, ASG, ELB, RDS 등)를 사용한다. 관리형 서비스다. 용량 프로비저닝, 로드 밸런식, 확장, 애플리케이션 자동 처리 상태 모니터링, 인스턴스 구성 등.. 애플리케이션 코드만 개발자의 책임이다. 완전 관리되는 서비스지만 개발자가 구성을 완전히 ..
[DOP] CloudFormation (Configuration Management and IaC) CloudFormation 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "IaC 서비스인 CloudFormation"에 대해서 알아보도록 한다. AWS CloudFormation Infrastructure as Code 많은 사용자들이 많은 작업을 수동으로 하고 있다. 수동으로 이루어진 작업은 다른 리전이나 다른 AWS 계정에서 재현하기 어렵다. 또한 동일한 리전이더라도 인프라가 삭제된 경우에 재현이 어렵다. 이번 장에서는 코드를 통해서 인프라를 생성/수정/삭제하는 방법에 대해서 알아본다. AWS CloudFormation CloudFormation은 모든 리소스(대부분 지원)에 대해 AWS 인프라의 개요를 설명하는 선언적인 방법이다. 예를 들어, CloudF..
[DOP] Other Code Series (SDLC Automation) Other Code Series 이번 장에서는 DevOps Engineer Professional (DOP) 을 준비하며 "이전 장에서 다루지 않은 AWS 코드 시리즈"에 대해서 알아보도록 한다. AWS CodeArtifact 소프트웨어 패키지는 구축될 때 서로에게 종속되며(코드 종속성), 새로운 패키지가 생성된다. 이러한 종속성을 저장하고 검색하는 것을 "아티팩트 관리"라고 한다. CodeArtifact는 소프트웨어 개발을 위한 안전하고 확장 가능하며 비용 효율적인 아티팩트 관리다. Maven, Gradle, npm, tarn, twine, pip, NuGet과 같은 일반적인 종속성 관리 도구와 함께 작동한다. 개발자와 CodeBuild는 CodeArtifact에서 바로 종속성을 검색할 수 있다. Co..