본문 바로가기

반응형

DevOps/AWS

(8)
배포 자동화 - 환경변수 설정 - 트러블슈팅 클라이언트 환경변수 설정 이후 S3의 정적 웹 사이트 호스팅을 이용하면 405 오류가 뜨는 경우가 있다. EX) 405 (Method Not Allowed) 1. 주소가 undefined인 경우가 있으므로 환경 변수 설정을 다시 한번 확인한다. 2. S3 정적 웹 사이트 편집에서 인덱스문서, 오류 문서 지정을 다시 확인한다. 3. 크롬 사용자라면 환경 변수가 업데이트 됐다는 문구를 확인 한 후 정적 웹 사이트에서 어느 정도 시간을 보낸 후 새로고침(F5)을 하고 다시 시도해본다.
배포 자동화 - 환경 변수 설정 클라이언트 배포 자동화와 서버 배포 자동화 파이프라인을 완성했다면 서로 연결에 있어 노출되지 말아야 할 값들이 있다. 그런 값들을 보호하기 위해서 환경변수를 선택할 수 있다. 실습 전 RDS 인스턴스를 생성해준다. EC2 인스턴스에 AWS CLI 설치 curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install 1. 클라이언트 환경 변수 설정 생성해놓은 빌드 프로젝트에서 편집 > 환경 > 추가 구성 환경변수 이름 : REACT_APP_API_URL 값: EC2 인스턴스 IP주소 (반드시 앞부분에 http:// 기입) 2. 서버 환경 변수 설정 비밀번호와..
서버 배포 자동화 ※앞선 글의 클라이언트 배포 자동화에 이어 서버 배포 자동화 파이프라인을 구축하고자 한다. https://wook-god.tistory.com/10 클라이언트 배포 자동화 배포 자동화를 구축할 수 있는 툴에는 여러가지가 존재하지만 이번 실습에서는 AWS 이용하고자 한다. 먼저 작성한 로컬 환경에 소스코드가 있다는 가정하에 시작할 것이다. #실습 전 비어있는 S3 wook-god.tistory.com 간단하게 설명하면 CodeDeploy를 이용하여 EC2 인스턴스의 변경사항을 실시간으로 반영하는 것이다. 실습 전 EC2 인스턴스를 새롭게 하나 만들어주고 개발 환경을 구축해주자. EC2 인스턴스에 SSH 연결 ssh -i /path/key-pair-name.pem instance-user-name@insta..
클라이언트 배포 자동화 배포 자동화를 구축할 수 있는 툴에는 여러가지가 존재하지만 이번 실습에서는 AWS 이용하고자 한다. 먼저 작성한 로컬 환경에 소스코드가 있다는 가정하에 시작할 것이다. #실습 전 비어있는 S3 버킷을 하나 생성한다. 1. 소소크드가 작성된 로컬 환경의 최상위 디렉토리에 buildspec.yml 작성 ##buildspec.yml version: 0.2 phases: #필수 시퀀스, 빌드를 수행하면서 실행할 각 단계를 기입 pre_build: #build단계 이전 실행되어야하는 부분 commands: - cd client - npm install build: commands: - npm run build artifacts: #build의 출력 결과물의 위치 또는 S3에 출력 버킷에 업로드하기 위한 방법에 대..
AWS 클라우드 서비스 클라우드 컴퓨팅 비즈니 니즈, 통제성, 관리성 수준에 따라 한 가지를 선택하거나 세 가지 모두를 선택할 수 있다. 클라우드 컴퓨팅 3대 모델은 다음과 같다. IaaS: 서비스로의 인프라 PaaS: 서비스로의 플랫폼 SaaS: 서비스로의 소프트웨어 1. IaaS 클라우드를 IT를 위한 기본 빌딩 블록 제공, 일반적으로 네트워크 기능, 컴퓨터 및 데이터 스토리지 공간에 대한 엑세스를 제공한다. IaaS는 IT 리소에 대한 최고 수준의 유연성과 관리 제어 기능을 제공한다. 이는 많은 IT 부서 및 개발자에게 익숙한 기존 IT 리소스와 유사하다. 2. PaaS 기본 인프라를 관리할 필요가 없어 애플리케이션 개발, 관리에 집중할 수 있다. 애플리케이션 실행과 관련된 리소스 구매, 용량 계획, 소프트웨어 유지 관리..
서버 배포 자동화 - 트러블 슈팅 클라이언트 배포 자동화에 이어 서버 배포 자동화 구성 시작부터 무서운 빨간색이 날 반기고 있다... appspec.yml에서 경로가 잘못됐다고 문득 떠올라서 수정을 하러가자!! 경로 수정 후 파이프라인 다시 만들고 재실행 . . . 아직 빨갛다... 다음과 같은 에러 발생할 경우 2가지를 체크해보자 "CodeDeploy agent was not able to receive the lifecycle event. Check the CodeDeploy agent logs on your host and make sure the agent is running and can connect to the CodeDeploy server." 1. CodeDeploy 역할이 인스턴스에 부여되어있는지 확인 2. CodeDe..
클라이언트 배포 자동화 - 트러블 슈팅 클라이언트 배포 파이프라인을 구축하고 배포 과정을 진행하는 도중 Build Stage에서 에러 발생 CodeBuild 과정에서 옵션으로 선택한 CloudWatch를 통해 로그 분석 DOWNLOAD_SOURCE State: FAILED 와 아래 줄의 YAML file does not exist를 보아 CodeBuild 생성 과정에서 필요한 buildspec.yml이 제대로 push되지 않았을 거라 생각해본다. commit , push 다시 해준 뒤 다시 실행 message "[Container] 2023/01/13 03:38:53 going inside waitForAgent " "[Container] 2023/01/13 03:38:53 Waiting for agent ping " "[Container] ..
AWS 트러블 슈팅 1) git clone 해온 repo의 react 배포 npm run build #해결방법 error:0308010C:digital envelope routines::unsupported 에러 발생은 node 17버전 이상 사용 시 나타날 수 있는 에러로 16버전으로 낮춰서 사용 권장 sudo apt update // 패키지 매니저 업데이트 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash source ~/.bashrc // 재로그인 없이 즉시 bash 수정사항 즉시 적용 nvm install 16.16.0 // 다른버전도 설치 가능 위 방법 실행 후 npm run build // 기존 node, npm 설치시 ..

반응형