샤인의 IT (막 적는) 메모장

[Public Cloud] AWS 기본 정리 4 (Beanstalk) 본문

Cloud Infra/Public Cloud

[Public Cloud] AWS 기본 정리 4 (Beanstalk)

신샤인 2022. 11. 8. 19:46
반응형

노션에서 정리한 내용

 

아키텍처

  • Codecommit → codebuild → codedeploy → beanstalk

 

 

Elastic Beanstalk

  • AWS DEVOPS Service
  • 개발자를 위한 빠른 배포와 어플리케이션을 관리할 수 있는 서비스
  • Create App → Platform 선택 → App Type 설정
  • Software → Proxy 서버(아파치,Nginx) → S3 Log 스토리지 → Log Stream 설정
  • Instance → 볼륨 설정 → SG 설정
  • Capacity → Auto Scaling Group → Instance Type → AZ 설정
  • LoadBalancer → LB 설정 → Access 로그
  • Rolling Update → 업데이트 Type 설정 → Login Key 설정

 

AWS Codecommit

AWS에서 호스팅되는 버전 관리 시스템

Repository 생성

  • Codeguru 생성 가능
  • IAM에서 User 생성 후 CodecommitfullAccess Policy 설정
  • User → Security Credential → SSH key for AWS Codecommit
# 로컬 머신 git bash에서 설정
ssh-keygen.exe

# public key 복사 후 AWS Codecommit 설정 붙여넣기

#로컬 머신 ssh config 설정
ssh -v <codecommit url>

#codecommit에서 url 복사 후 
git clone ~

AWS CodeBuild

  • AWS 내에서 코드 빌드 개발자 도구
  • Craate Build Project → Source(Codecommit,github ...) → Referance type(Branch 설정) → Environment → OS 설정 → Runtime 설정 → Insert Build command(mvn install) →
  • 작성 YAML 포맷 사용

Build, Deploy & Pipeline

  • AWS CodePipeline : AWS CI/CD 서비스
  • Create Pipeline → Source AWS CodeCommit → Branch 설정 → Cloudwatch event 설정 → Region 설정 → Deploy Provider 설정(AWS Elastic Beanstalk)
  • 생성 후 파이프라인 설정 가능 ( Test, Build, Post Build, ...)

 

 

 

 

실습 했던 내용

시나리오

  • 물리 / 가상 / 클라우드 머신에 서비스
  • IaC / PaaS / SaaS / Automation 사용

AWS 서비스 이용

  • Beanstalk - Tomcat 역할
  • ELB In Beanstalk
  • Autoscaling
  • S3 / EFS
  • RDS
  • Elastic Cache
  • Active MQ
  • Route53
  • CloudFront

SG 및 Key Pair 생성

  • Key 생성 : pem
  • SG 생성 : Inboud rules ssh 내 IP 포트 22 오픈 / VPC 내 모든 트래픽 오픈

RDS

  • 타입 Amazon Aurora 설정 / 유형 t2 설정
  • 스토리지 유형 Provisioned SSO 추천
  • Multi AZ StandBy 인스턴스 생성
  • 초기 생성 데이터베이스명 설정
  • Backup Retension 설정

ElasticCache

  • Memcache / Redis 선택
  • 필요 시 Edit parameter 설정
  • Subnet Group 생성 : VPC 선택 후 AZ 추가
  • Memcache 생성 : Node Type 설정 → 생성한 Subnet 그룹 선택 → SNS 설정

Amazone MQ

  • Deploy Mode : Single-Instance
  • Storage Type : Durability Optimized
  • Broker 설정
    • Name / Instance Type / ActiveMQ Access 인증 및 권한 설정
    • Cloudwatch 로그 general/audit 두가지 선택
    • VPC 및 SG 설정 / Public Access 설정

DB Initialization

  • RDS Endpoint 확인
  • EC2 생성 후 접속
yum -y update
yum -y install mysql-client
mysql -h <Endpoint명> -u root -p

Beanstalk

  • ElasticCache Configuration Endpoint 확인
  • AmazonMQ AMQP Endpoint 확인
  • mysql-client EC2 제거
  • ElasticBeanstalk 생성
    • Project 명
    • Platform Engine 설정 → 어떤 코드로 돌릴지 Tomcat 설정
    • Configure More option : Volume / Autoscale / LB / Access Log 설정(LB,S3 등등..)
    • Application Deployment 설정 : Rolling / Batch size
    • VM Permission Key 설정
    • 생성 후 Endpoint로 접속
    • SG 설정 : RDS(3306) Elasticcache(11211), MQ(5671)
    • LB 설정 : 헬스체크 /login , SSL 인증서

Artifact Build & Deploy

  • Artifact 설정
    • Application.properties에 생성한 RDS, Elasticcache, MQ endpoint 입력
    • Beanstalk에서 생성한 Artifact 파일 업로드

CloudFront

  • CDN 서비스
  • Origin 설정
    • 도메인 명
  • Cache Behavior 설정
    • 프로토콜
    • HTTP 메서드
    • CNAME
    • SSL Certificate

정리

  • User → Route53 → Cloudfront → ALB → Beanstalk( S3 Bucket) → MQ → Elasticache → RDS
반응형
Comments