본문 바로가기

DevOps97

Devops Day 49 (5.15) Sprint Terraform x AWS_Full Stack 애플리케이션 구성 Bare Minimum requirement : Getting Started : IaC 코드를 작성하려면 먼저 AWS Management Console을 이용해 먼저 최종 인프라 상태를 만들어놓고, 잘 작동하는지 확인한 다음, 이를 해당하는 리소스를 하나씩 코드로 옮기는 방법을 사용하는 방식을 사용해 보면 좋습니다. 다음 자습서를 순서대로 따라 합니다. 먼저 AWS Management Console을 통해 최종 결과물을 따라 해보고, 예상 상태가 무엇인지 먼저 파악해야 합니다. 모든 리소스를 만들 때에는 반드시 이름을 붙여놓도록 합시다. 참고: https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/CHAP_Tutorials.WebServerDB.Cr.. 2023. 5. 18.
Devops Day 48 (5.12) Infrastructure as Code_Terraform 절차형 : 프로그래밍 언어를 이용해서 직접 순차적으로 인프라를 생성하도록 코드를 작성하는 방법입니다. 절차형 Iac의 종류 : AWS CDK Pulumi 선언형 IaC : 선언형 언어 JSON, YAML 등을 사용합니다. 실제 인프라가 적용된 결과(기대하는 상태)와 적용할 내용(YAML 등)이 직관적으로 매핑됩니다. 선언형 IaC 종류 : CloudFormation (AWS에서만 사용가능) Azure Blueprint (Azure에서만 사용가능) Cloud Deployment Manager (GCP에서만 사용가능) Terraform: 어떤 클라우드 서비스에도 적용되는 범용 IaC 도구입니다. Terraform 기초 Hands on 테라폼은 HashiCorp의 인프라스트럭처 코드 도구입니다. 테라폼을 사용.. 2023. 5. 18.
DevOps Day 32 (4.19) AWS_컨테이너 배포 Amazon ECS/ECR 마이크로서비스 아키텍쳐 : 마이크로서비스는 소프트웨어가 잘 정의된 API를 통해 통신하는 소규모의 독립적인 서비스로 구성되어 있는 경우의 소프트웨어 개발을 위한 아키텍처 및 조직적 접근 방식입니다. 마이크로서비스 아키텍처는 애플리케이션의 확장을 용이하게 하고 개발 속도를 앞당겨 혁신을 실현하고 새로운 기능의 출시 시간을 단축할 수 있게 해 줍니다. 모놀리식 아키텍처 vs 마이크로서비스 아키텍처 모놀리식 아키텍처의 경우 모든 프로세스가 긴밀하게 결합되고 단일 서비스로 실행됩니다. 따라서 애플리케이션의 한 프로세스에 대한 수요가 급증하면 해당 아키텍처 전체를 확장해야 합니다. 그래서 새로운 아이디어를 구현하기가 어려워지고 긴밀하게 결합된 프로세스로 인해 단일 프로세스의 실패로 인한.. 2023. 5. 16.
Devops Day 48 (5.12) Infrastructure as Code IaC의 의미와 필요성 다음을 가정해 봅시다 - 위 그림에서의 인프라를 완전히 다른 리전에 똑같이 복제하고 싶을 경우 - 특히, 해당 리전이 갑자기 사용할 수 없는 상황에 직면했을 경우 - 기존과는 다른 새로운 아키텍처를 빠른 시간 내에서 적용해야 할 경우 수동 설정의 한계 수동설정은 쉽게 서비스를 제공하고, 아키텍처를 빠르게 실험해 볼 수 있다는 점에서 유리하지만, 많은 단점도 가지고 있습니다. - 휴먼 에러 때문에 서비스를 설정할 때에 잘못 설정하기 쉽습니다 - 설정을 통해 예측되는 상태를 관리하기 어렵습니다 - 환경 설정에 대한 내용을 다른 팀 멤버에 전달하기 어렵습니다 IaC : 코드형 인프라(Infrastructure as Code), 즉 IaC는 설정을 코드로 작성하여 클라우드 인프라스트럭처의.. 2023. 5. 16.
Devops Day 45 (5.9) 마이크로서비스 작성_Sprint API Gateway와 서버리스 애플리케이션 Bare Minimum Requirement : · 다음 아키텍처로 구성된 서버리스 애플리케이션을 배포합니다. o API Gateway - Lambda - DynamoDB · 직접 API Gateway로 실행해 봅니다. · API Gateway의 인증 기능을 이용해서, HTTP 요청에 특정 API Key를 사용하는 예제를 다음 두 가지 방법으로 구현합니다. 1. API Key 2. 권한 부여자 · CloudWatch Logs를 통해서 API 호출을 모니터링할 수 있어야 합니다. Step 1 : API Gateway - Lambda 배포 Instruction 1. Lambda 함수와 API gateway 세팅 위한 SAM 작성 - https://serverlessland.com/patterns/lambda.. 2023. 5. 10.
Devops Day 45 (5.9) 마이크로서비스 작성_마이크로서비스 배포 툴 SAM Hands-on Lambda 함수를 배포하는 방법 : Lambda는 컨테이너 이미지 및 .zip 파일 아카이브의 두 가지 배포 패키지를 지원합니다. 1. .zip 파일 아카이브로 정의된 Lambda 함수 생성 - Lambda 콘솔과 Lambda API를 사용하여 .zip 파일 아카이브로 정의된 함수를 만들 수 있습니다. 업데이트된 .zip 파일을 업로드하여 함수 코드를 변경할 수도 있습니다. - 콘솔을 통해 직접 코드를 작성하는 것도 가능합니다. 2. 컨테이너 이미지 - FROM amazon/aws-lambda-nodejs:12와 같이 주어진 이미지 위에 애플리케이션을 올린 후 빌드하여 배포할 수 있습니다. AWS에서 제시하는 애플리케이션 모델 Lambda 콘솔을 통해 직접 애플리케이션을 개발하는.. 2023. 5. 10.