AWS Copilot

5169 단어 copilotAWS

AWS Copilot?

  • "Amazon ECS는 AWS에서 컨테이너를 블록화하기 위한 새로운 CLI"
  • 코펠로트
  • AWS Copilot CLI (preview)
  • 이것을 참고하여 샘플을 만져보고 싶습니다.
  • https://github.com/aws/copilot-cli
  • https://github.com/aws/copilot-cli/wiki
  • 작업 환경

  • macOS Catalina(10.15.5)
  • 다음과 같이 Copilot은 AWS CLI의 인증 정보를 참조하므로 사전에 설정한다.
  • Copilot uses the same credentials as the AWS CLI (인용원)
  • 설치하다.


    설치 방법
    · Mac 및 Linux의 Install 메서드가 기재되어 있음
    · 주변에 Windows 환경이 없기 때문에 확인할 수 없습니다
    바이너리 설정에서 (위) 곧 사용할 수 있기 때문이다. WSL 등이라면 사용할 수 있을지도 모른다.
    
    brew install aws/tap/copilot-cli
    
    당분간 옵션 등을 확인하지 않고 샘플을 가동해 보다
    git clone https://github.com/aws-samples/aws-copilot-sample-service.git demo-appcd 
    cd demo-app
    copilot init --app demo                \                                                                                                   --svc api                              \
    --svc-type 'Load Balanced Web Service' \
    --dockerfile './Dockerfile'            \
    --deploy
    
  • 다음과 같이 실행 실패(exit status1)
  • 실행 상황을 보면 AWS의 자원이 만들어진 것 같아요.
  • Copilot 도입 후 AWS 인증 정보를 별도로 설정하지 않았기 때문에 AWSCLI 인증 정보를 그대로 사용합니다
  • 실행 시 클라우드 포메이션에 스택을 추가했기 때문에 환경 구축의 기초는 클라우드 포메이션
  • 이다.
  • 비정상적으로 끝난 이유는 로컬 PC에서 Docker 프로세스가 시작되지 않아 Build를 진행할 수 없고 용기 이미지를 만들 수 없기 때문이다
  • Note: It's best to run this command in the root of your Git repository.
    Welcome to the Copilot CLI! We're going to walk you through some questions
    to help you get set up with an application on ECS. An application is a collection of
    containerized services that operate together.
    
    Ok great, we'll set up a Load Balanced Web Service named api in application demo listening on port 80.
    
    ✔ Created the infrastructure to manage services under application demo.
    
    ✔ Wrote the manifest for service api at copilot/api/manifest.yml
    Your manifest contains configurations like your container size and port (:80).
    
    ✔ Created ECR repositories for service api.
    
    
    ✔ Created the infrastructure for the test environment.
    - Virtual private cloud on 2 availability zones to hold your services     [Complete]
    - Virtual private cloud on 2 availability zones to hold your services     [Complete]
      - Internet gateway to connect the network to the internet               [Complete]
      - Public subnets for internet facing services                           [Complete]
      - Private subnets for services that can't be reached from the internet  [Complete]
      - Routing tables for services to talk with each other                   [Complete]
    - ECS Cluster to hold your services                                       [Complete]
    - Application load balancer to distribute traffic                         [Complete]
    ✔ Linked account xxxxxxx and region ap-northeast-1 to application demo.
    
    ✔ Created environment test in region ap-northeast-1 under application demo.
    Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
    ✘ build Dockerfile at ./Dockerfile with tag f8d65d4: building image: exit status 1
    
    
    Docker Desktop 프로그램을 시작하여 다시 실행
  • 계정 정보와 단점 등 마스크가 필요한 정보가 증가하여 총괄 집행 내용
  • CloudFromation에서 처음 만든 AWS 자원은 "already exists"로 표시되며, 창설은 건너뛰기 (창고 템플릿이 변경되지 않았기 때문)
  • Docker Image의 구축 처리를 수행하고 구축된 ECR을 Push
  • Push 이후 디버깅을 한 것 같습니다. ALB의 단점
  • 이 표시됩니다.
    ✔ Deployed api, you can access it at http://demo-Publi-xxxxxx.ap-northeast-1.elb.amazonaws.com.
    
    · ALB의 단점에 접근한 후 다음과 같은 화면을 표시합니다

    리소스 만들기


  • Sample의 readme에 기재된 이번 init 명령는 동작(튜토리얼 대상)을 확인하기 위해 클라우드 포메이션에 어느 정도의 구성을 규정한 것
  • Copilot will set up the following resources in your account:
    * A VPC
    * Subnets/Security Groups
    * Application Load Balancer
    * Amazon ECR Repositories
    * ECS Cluster & Service running on AWS Fargate
    

    환경 청소

    copilot app delete
    

    감상

  • 이번에 사용된 init 지령은 교정의 목적으로 여겨지기 때문에 코필로트의 실력을 충분히 확인할 수 없다.다시 건드려야 돼
  • '편리한 것을 사용한다'는 대전제는'어떤 과제를 해결했는지 언어화할 수 있다'와'편리함으로 숨겨진 단점과의 저울질을 파악한 뒤 사용할 수 있다'는 것을 다시 한번 느꼈다.만약 그렇지 않다면, 나는 그것을 내가 좋아하는 도구 위에 놓고 입을 하나 먹을 것이다
  • 치행보리는 본소(도쿄도 묵전구)를 무대로 하는 7가지 불가사의한 기담, 괴담 중 하나
  • 좋은 웹페이지 즐겨찾기