ec2

    [EC2][Ubuntu] E212: Can't open file for writing

    [EC2][Ubuntu] E212: Can't open file for writing

    문제 파일 편집을 위해 vi로 파일을 편집하고 저장하는데, 에러메세지가 나왔다. $ vi filename 에러메세지 E212: Can't open file for writing 원인 내가 파일을 편집하려고 한 위치에서 ubuntu사용자에게 편집 권한이 없었기 때문이다. 해결방법 1. vi 앞에 sudo를 붙여준다. $ sudo vi filename 2. sudo su로 root사용자로 전환하여 파일을 편집한다, $ sudo su $ vi filename

    [AWS][Codedeploy] missing credentials - please check if this instance was started with an iam instance profile

    [AWS][Codedeploy] missing credentials - please check if this instance was started with an iam instance profile

    Codedeploy를 이용하여 EC2에 배포를 시도했는데, Codedeploy 콘솔에서 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. EC2에서 에러 로그를 확인해야할 것 같아서 로그를 확인해보았다. tail -F /var/log/aws/codedeploy-agent/codedeploy-agent.log 에러로그 missing credentials - please check if this instance was started ..

    [Github Actions][Codedeploy] CI/CD 구축하기 (1)

    [Github Actions][Codedeploy] CI/CD 구축하기 (1)

    Github Actions와 AWS Codedeploy를 이용해서 CI/CD를 구축해보았다. Travis CI, Jenkins등은 사용해보지 않았지만 Github actions로 시작해보는 것도 괜찮은 것 같다. 자동배포라고하면, 구축하는 것 자체에 시간이 너무 뺏길것 같고, 구현하기 바빠서 미뤘었는데 처음 한번만 제대로 해놓으면 그 다음부터는 작은 부분들만 수정해서 바로 적용할 수 있기때문에 처음에 시간을 들여서라도 한번 해보는게 좋은 것 같다고 느꼈다! 이번 포스팅에서는 Github Actions와 Codedeploy사용을 위한 세팅(AWS S3, EC2, Codedeploy등)을 진행한다. AWS EC2 환경은 Ubuntu 20.04이다. 1. S3 버킷 생성 Github Actions에서 EC2에..

    [AWS EC2] WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    [AWS EC2] WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    AWS EC2에서 탄력적 IP를 사용하다가, 인스턴스를 바꿨을 경우 터미널에서 ssh 접속시 경고창이 뜬다. 접속하는 IP는 같지만, 실제 인스턴스지문이 달라졌기 때문이다. 오류 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 해결방법 ssh-keygen -R {ip or domain} # ssh-keygen -R 1.12.123.123 명령어를 쳐준뒤, 다시 ssh 접속을 하면 잘된다~

    [Codedeploy] 에러메세지 및 해결방법 정리

    [Codedeploy] 에러메세지 및 해결방법 정리

    Codedeploy + Github actions 로 CI/CD를 구축하면서 엄청나게 많은 시도와 많은 에러메세지들을 만났었는데, 시도하면서 만난 에러메세지들과 해결방법들을 정리해두려고 한다. (Github actions에서 겪은 문제들은 따로 올릴 예정!) Error 로그 확인방법 1. 먼저 Codedeploy의 경우 AWS codedeploy에서 해당 배포를 클릭하면 에러메세지를 확인할 수 있다. codedeploy설정과 관련된 에러라면 대부분 여기 빨간박스에 에러메세지가 뜬다. 2. codedeploy설정이 아닌, 배포스크립트를 수행하던 중 오류가 발생했다면, 하단으로 스크롤하여 View events를 클릭하면, 더욱 자세한 오류메세지를 보여준다. View events 클릭 여기서 하단의 Scrip..

    [Springboot][EC2] 로컬에서 빌드하고 빌드파일만 업로드하기

    [Springboot][EC2] 로컬에서 빌드하고 빌드파일만 업로드하기

    원래는 EC2에 코드를 올려서 build 하고, 수행하게 되는데 EC2 사양이 그렇게 좋지 않다보니 무리가 갈때가 있다! 그래서 가끔 EC2가 먹통이 되곤 했다... 그래서 로컬에서 빌드하고, 서버에 업로드해서 사용하면 괜찮다고 해서 시도!! 먼저 로컬에서 EC2에서 빌드하는 것과 같이 빌드를 수행해준다 ./gradlew build 수행하면 프로젝트 폴더에 build 폴더 안에 libs 폴더가 생긴다! libs 폴더 안을 보면 jar 파일이 생성되어 있을 것이다 우리는 이 jar파일만 EC2에 업로드 시켜주면 된다 파일업로드는 Filezila, 사이버 덕 등을 이용하여 EC2에 SFTP접속을 해서 파일업로드를 시켜주면 된다 나는 사이버덕을 사용해보았다 EC2에서 해당 서버의 루트경로인 var/www/~로..

    [AWS][EC2] ssh 접속 시 WARNING: UNPROTECTED PRIVATE KEY FILE! 에러

    [AWS][EC2] ssh 접속 시 WARNING: UNPROTECTED PRIVATE KEY FILE! 에러

    chmod 600 pem파일이름.pem .pem 파일을 처음 받은 뒤, ec2에 ssh접속을 하려하면 WARNING: UNPROTECTED PRIVATE KEY FILE! It is required that your private key files are NOT accessible by others. This private key will be ignored. Load key ".pem": bad permissions Permission denied (publickey). 위와 같은 경고 메세지가 뜨고 Permission denied라고 뜬다 .pem파일이 너무 open 되어 있다는 경고이다 터미널을 연 뒤, 해당 파일 경로에서 chmod 600 pem파일이름.pem 를 입력해주면 해당 권한으로 설정되어..

    [SpringBoot][AWS EC2] nohup을 이용하여 무중단 서비스 만들기

    [SpringBoot][AWS EC2] nohup을 이용하여 무중단 서비스 만들기

    빌드 먼저 Git을 통해 받은 프로젝트 폴더로 이동하여, build를 진행한다. ./gradlew build build가 완료되었다 실행 java -jar build/libs/demo-0.0.1-SNAPSHOT.jar 정상적으로 잘 실행되었다. 하지만 이상태에서 터미널을 종료하면 실행중인 java도 같이 종료되어 버린다! 무중단 서비스를 위해 nohup을 이용하여 백그라운드에서 실행시키자 nohup nohup java -jar build/libs/demo-0.0.1-SNAPSHOT.jar & > /dev/null 아까 실행시킬 때 수행했던 명령어 앞에 nohup을 붙이고, 뒤에 &을 붙이면 백그라운드에서 실행이 되어, 터미널을 종료해도 EC2상에서는 계속 돌아간다, 뒤에 > /dev/null은 log를 ..

    [AWS EC2] 22: Operation timed out, 22: Connection refused

    [AWS EC2] 22: Operation timed out, 22: Connection refused

    평소처럼 EC2인스턴스에 ssh 연결하려는데, 바로 연결이 되지 않았다 timeout나나? 했는데 정말로 타임아웃ㅜㅜ 22: Operation timed out AWS 콘솔에 접속해서 EC2 재부팅을 했다 다시 시도해보니 22: Connection refused Connection refused로 바꼈다... 좋아해야하는건지 아닌지..^^ AWS document를 참고해보니 연결을 차단하는 방화벽이 없습니다. SSH 서비스가 인스턴스에서 실행 중입니다. SSH TCP 포트 22가 수신 대기 상태에 있습니다. 이 3가지를 확인해보라고 한다. 집 Wifi 이고, 평소엔 잘 되었으므로 방화벽은 아니고 SSH 허용 부분이 원래 모든 IP 허용으로 되어있었는데, 내 IP만 허용하는 것으로 변경해보았다 다시 ssh..

    [AWS EC2] Node 버전 업데이트

    [AWS EC2] Node 버전 업데이트

    nest 프로젝트를 git clone해서 모듈을 다운받기 위해 npm i를 수행했는데, npm ERR가 엄청 났다ㅜㅜ 검색해보니 캐시를지워라, npm 버전을 업데이트 해라 해서 해봤는데 캐시는 지워도 안되고, npm 버전 업데이트 또한 ERR가 났다ㅜㅜ Error: Missing required argument #1 ... Please include the following file with any support request 위 경고메세지를 보니 node 버전이 10이상이어야하는데, 현재 버전은 8이라고 되어있는 거 같았다 그래서 n명령어 사용해서 node 버전 업데이트 하는 것을 실행했는데, 설치는 되는데 업데이트된 버전이 활성화되지는 되지 않았다ㅜㅜ 해결 EC2에서 nodejs 설치하는 법 검색해서..