IT/AWS(18)
-
AWS DataSync 이용하여 S3 버킷에서 EFS 파일 시스템으로 데이터 전송
1. 서비스 설명 DataSync는 온라인 데이터 전송 서비스로, AWS 스토리지에서 송수신되는 대량의 데이터 복사를 간소화, 자동화할 수 있게 한다. NFS, SMB 파일 서버, Amazon S3, Amazon EFS 또는 Amazon FSx for Windows File Server 간에 데이터를 복사할 수 있다. 2. 구성 방법 2.1 EC2 Agent 구성 EC2에 Agent를 설치한다. AMI를 이용하여 Agent를 설치할 수 있다. (AMI명은 ami-035a164051e598dd5이다.) 리소스가 존재하는 리전에서 AMI를 이용하여 EC2를 생성한다. AWS에서는 Agent 설치 권장사항이 존재한다. (볼륨 80GB, m5.2xlarge or m5.4xlarge) 2.2 Endpoint 생성..
2020.04.09 -
Amazon CloudWatch, AWS Lambda를 이용한 Slack notification
본문에서는 CloudWatch Alarms과 Lambda를 이용하여 사용자에게 리소스 상황을 Slack으로 notification을 하도록 구성한다. 1. 사전 준비 1.1 Slack Webhook URL 생성 Slack에서 'incomming webhooks'을 검색하여 설치한다. notification을 받을 채널을 선택한다. Webhook URL을 생성한다. 이 주소는 추후 Lambda에서 사용된다. 다음과 같이 curl 명령으로 해당 주소에 테스트 메세지를 보내면, 수신되는 것을 확인할 수 있다. 1.2 AWS Key 생성 AWS CLI를 통해 키를 생성하고 KeyId를 저장한다. aws kms create-key --region ap-northeast-2 해당되는 KeyId와 Slack URL를..
2020.02.26 -
AWS에서의 DevOps
DevOps는 운영 및 개발과 관련된 활동을 관리하고, SysOps는 운영 및 시스템과 관련된 활동을 관리한다. 이들 모두 클라우드 컴퓨팅의 매우 넓은 영역이다. 본문에서는 AWS에서의 DevOps에 대해 정리한다. AWS Devops Engineer의 직무 역할은 다음과 같다. 지속적인 배포 및 지속적인 통합 프로세스를 지원하기 위해 자동화를 설계하고, 개발한다. 회사의 전반적인 전략적 방향의 일부인 복잡한 엔터프라이즈급 이니셔티브를 제공하기 위해 고위 경영진과 협력해야 한다. 비즈니스 및 기술 요구 사항에 따라 클라우드 컴퓨팅 서비스의 가용성 및 제공을 조정할 수 있어야 한다. 운영 및 마이그레이션 서비스를 제공 할 수 있도록 Cloud Architects를 지원해야 한다. 작업 역할은 다음과 같은 ..
2020.02.18 -
AWS S3 버킷을 이용한 CI/CD Pipeline 구축
1. 구성 소개 본문에서는 Amazon S3 버킷과 CodeDeploy를 사용하여 애플리케이션을 릴리스하는 두 단계 파이프라인을 생성한다. Amazon S3 소스가 포함된 파이프라인의 경우 Amazon CloudWatch Events가 소스 업데이트를 감지하고 변경이 발생할 때 파이프라인을 시작하게 된다. 2. 구성 방법 2.1. Amazon S3 버킷 생성 소스 파일을 업로드할 S3를 생성한다. 버킷의 버전 관리 활성화하고, 버전이 지정된 위치에 소스 파일이나 애플리케이션을 저장할 수 있게 한다. 고유한 버킷 이름을 지정하고, Keep all versions of an object in the same bucket (객체의 모든 버전을 동일한 버킷에 보관)을 선택한다. 애플리케이션 개정에 허용되는 파일..
2020.02.17 -
AWS Elastic BeanStalk, Jenkins 기반 CI/CD 구축
1.구성 소개 1.1 구성 아키텍처 1.2 구성 아키텍처 동작 과정 Github에 소스를 push를 한다. Github는 Jenkins로 WebHook Trigger한다. Jenkins는 소스를 war로 빌드 후, S3에 업로드한다. 그 후 Elastic Beanstalk으로 Deploy 명령을 내린다. Eleastic Beanstalk은 S3에 업로드된 war파일로 각 EC2 서버에 배포한다. 2. 구성 방법 2.1. Eleastic Beanstalk 기본 구성 AWS Elastic Beanstalk은 애플리케이션 코드를 업로드하면 리소스 프로비저닝, 로드 밸런싱, 오토스케일링 및 모니터링 같은 모든 세부 정보를 자동으로 처리하여 배포할 수 있게 한다. Elastic Beanstalk의 새로운 애플리케..
2020.02.17 -
AWS에서 CI/CD 환경 구축 (CodeCommit, CodeBuild, CodeDeploy, Codepipeline)
1. 구성 소개 1.1 구성 아키텍처 AWS에서 제공하는 서비스를 이용한 CI/CD 구성은 다음과 같다. 1.2 AWS에서 제공하는 CI/CD 솔루션 AWS 서비스명 설명 CodeCommit 먼저 기존 코드를 Github에서 AWS CodeCommit으로 마이그레이션 한다. AWS CodeCommit은 AWS에서 호스팅하는 버전 제어 서비스로 클라우드에서 자산을 비공개로 저장하고 관리하는 데 사용한다. CodeBuild 애플리케이션 코드를 빌드하기 위해 CodeBuild를 구성한다. AWS CodeBuild는 소스 코드를 컴파일하고 테스트를 실행하며 배포 준비가 된 소프트웨어 패키지를 생성하는 완전히 관리된다. CodeDeploy 코드를 EC2 서버에 배포한다. AWS CodeDeploy는 Amazon ..
2020.02.17