클라우드 및 인프라177 [AWS] Codepipeline으로 Github+ CodeBuild + CodeDeploy 사용하기, AWS CI/CD 구축하기 CodePipeline 사용해 Github 에 있는 코드를 배포하는 내용을 정리해 보았다. 일단 서비스를 배포하기 위해 필요한 ec2와 IAM을 생성한다. Github, CodeBuild, CodeDeploy 사용을 위한 내용을 아래 순서로 정리해 두었다. 필요한 부분을 참고해서 보면 될 것 같다. [1] GitHub 와 연결해 CodeBuild 생성하기 [2] Codedeploy 생성하기 [3] Codepipeline 생성하기 [4] CodeDeploy Blue/Green 으로 배포하기 해당 이미지는 내가 사용하고자 하는 AWS 아키텍처를 그려보았다. 2022. 6. 10. [AWS] EC2 메모리 부족 현상 - swap 생성 AWS 프리티어를 사용하는데 t2.micro 의 램이 1GB 밖에 되지 않아 여러 프로젝트를 동시에 돌리면 램 초과로 서버가 폭발한다. RAM 메모리가 부족한 경우를 대비해 swap 메모리를 지정해준다. swap은 RAM이 부족할 경우 HDD의 일정 공간을 RAM 처럼 사용하는 것이다. swap 공간 크기 계산 * swap 은 32MB 미만이 되면 안된다. t2.micro 에서 진행하면 사용할 수 있는 RAM은 1GB 이므로. swap 으로 2GB 정도를 생각하고 잡으면 된다. swap 생성하기 스왑 파일은 4GB(128MB x 32) sudo dd if=/dev/zero of=/swapfile bs=128M count=32 스왑 파일은 2GB(128MB x 16) sudo dd if=/dev/zero .. 2022. 6. 9. [AWS] Codepipeline The provided role does not have sufficient permissions. codepipeline 에서 codedeploy를 실행하는데 다음과 같은 에러가 나오면서 codedeploy 가 진행되지 않았다. buildspec.yml 파일에 아티팩트 구문이 포함되어 있어야 한다. version: 0.2 artifacts: files: - '**/*' If you change the buildspec.yml version to 0.2 then the shell keeps its settings. In version: 0.1 you get a clean shell for each command. 2022. 6. 7. [AWS] CodeDeploy Error - The overall deployment failed because too many individual instances failed deployment, too few healthy instances are available for deployment, or some instances in your deployment group are experiencing problems. CodeDeploy 사용 시 Install 단계에서 다음과 같은 에러가 나면서 더이상 진행되지 않았다. The overall deployment failed because too many individual instances failed deployment, too few healthy instances are available for deployment, or some instances in your deployment group are experiencing problems. 공식 홈페이지에서는 codedeploy-agent 가 실행되고 있는지 확인해보라고 나와있다. sudo service codedeploy-agent status codedeploy-agent 는 작동을 잘하고 있었기 때문에 이에 .. 2022. 5. 26. [Docker] Docker 사용해서 Jenkins 젠킨스 설치하기 Jenkins 젠킨스 설치하기 도커는 설치되어 있다고 가정하고 진행한다. 도커설치 명령어다. 8080 포트는 사용중이여서 18080으로 사용했다. 참고로 jenkins 공식 docker이미지를 사용하면 기본 설정이 대한민국이 아니다. docker run -itd --name jenkins -p 18080:8080 jenkins/jenkins:lts 도커로 젠킨스를 만들면 다음 url : http://localhost:18080/ 로 접속할 수 있다. 초기 비밀번호는 다음 경로에서 확인할 수 있다. docker exec -it jenkins bash cat /var/jenkins_home/secrets/initialAdminPassword 직접 접속하지 않고 아래 내용처럼 확인할 수 있다. docker e.. 2022. 5. 25. [AWS] ec2 볼륨 수정 EC2 를 프리티어 t2.micro 로 생성하면 기본 10Gb를 할당받는다. 이것저것 설치하고 사용하다보니 10Gb는 용량이 부족해 용량을 늘려서 사용하고자 한다. 볼륨 수정 EC2 -> 볼륨 -> 크기를 수정하고자 하는 볼륨 인스턴스 수정 볼륨을 수정하기 전에 인스턴스를 스냅샷을 통해 중요한 파일은 백업시켜둔다. optimiziong 으로 확장중인 것을 확인할 수 있다. 100% 나 사용중이 되면 사용 할 준비가 되는 것이다. 하드디스크가 20Gb 라고해서 C드라이브가 20Gb인것은 아니다. 전체 드라이브에서 일부분을 할당하고 나머지는 D드라이브처럼 사용한다. 늘어난 볼륨에 대해서 파티션 설정을 해주어야 한다. lsblk 명령어를 사용해 현재 볼륨 크기를 확인한다. sudo growpart /dev/x.. 2022. 5. 23. 이전 1 ··· 7 8 9 10 11 12 13 ··· 30 다음