묻고 답해요
152만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
순위 정보를
불러오고 있어요
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
ECS 의 Task 업데이트 속도 문제
[섹션 10 - Self-healing! - 죽은 서버(테스크) 자동으로 살려내는 AWS ECS service 알아보기] 강의에서Task 의 RollingUpdate 하는 모습과 health check 에 의한 Task 소멸 및 생성 모습을 보여주셨는데요.ECS 의 Task 소멸 및 생성 속도가 너무 느려서 놀랐습니다.집에서 Kubernetes 로 실습해본 경험에 의하면, K8S 에서는 3초면 되는 것이, ECS Fargate 에서는 3분이 걸리는 것 같은데요.원래 ECS 의 Fargate launch type 이 아주 느린 것인가요?ECS 의 EC2 launch type 이었다면 Fargate 보다는 조금 빠른지요? 로컬에서 돌리는 Kubernetes 만큼 몇초만에 수행을 완료할 정도로 빠르게 하는 방법은 없는지요?ECS 너무 느려서 이걸 써야 되나라는 실망스런 마음이 큰데요.반응 속도가 빠른 auto scailing 을 구현하려면, 직접 K8S 쓰는 것이 더 현실적인 방법인 것인지 고민이 됩니다.
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
ECS - Service 의 Load Balancer 요금
안녕하세요, 강사님,섹션 9 : Container Orchestration - [AWS ECS - Service 사용해서 여러개의 Task 생성하고 Load balancer 연결해주기] 강의에서ECS Cluster 에 Service 를 만들 때, Service 에 적용하는 Load Balancer 도 내부적으로는 EC2 를 이용한 것인가요? Service 에 만든 Load Balancer 에도 별도의 Load Balancer 비용이 부과되나요?LightSail 에서 적용했던 Load Balancer 와 동일하게 비용이 드는지 궁금합니다. 만약, 비용이 부과된다면, ECS 에서 여러 Task 에 auto scailing 을 적용할 경우, Load Balancer 의 갯수가 많아질텐데, 그 갯수만큼 비용이 부과되는지도 궁금합니다.
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
세션 6부터 봐도 될까요?
안녕하세요 수업 잘 듣고 있습니다 JSON을 처음 접하게 되었는데 막히는게 너무 많이서 세션6 도커 부터 듣고 이후헤 AWS를 들어도 될까요?세션4 중간 까지 했습니다 구글링해도 에러를 해결 하지를 못해서 시간을 너무 많이 잡아 먹습니다
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
Health Check: Failed 이라뜹니다
도메인으로 접속하면 502으로 뜨고 IP로는 접속이 안됩니다
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
배포용 workflow만들기 deploy.yml 에러 질문입니다
해당 강좌에서 secrets key도 github에정상 등록했으나 github action시 SSH and deploy 동작에서 아래와 같은 에러가 발생합니다 deploy.yml
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
섹션1 express
섹션1넘기고 섹션2에서 공유해주시는 express파일로 그냥 진행해도되나요?
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
git action 배포할때 태스크 env 관련 질문입니다.
마지막 git action으로 배포하고 env보니, 기존에 설정했던 PORT랑 URL 유지가 안되던데.. 방법이 있을까요?
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
[섹션 9] AWS ECS - Service 사용해서 여러개의 Task 생성하고 Load balancer 연결해주기
ecs service 등록하려고 보니, Load balancer 설정 부분에 이렇게 뜨는데,, 제가 Lightsail 볼때 따로 등록 안해줘서 설정 부분이 이렇게 뜨는걸까요? ㅠㅠ ec2에서 설정 따로 해줘야한다는거 같은데 로드밸런싱 활성 작업을 위해서 어떤 어떻게 등록 해야하는 걸까요?
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
캐싱 관련 질문 드립니다.
선생님 안녕하세요.MongoDB에 이어 infra 관련 강의도 잘 수강하고 있습니다.캐싱 관련되어 선생님 의견이 궁금해 질문드립니다. 백그라운드현재 MongoDB + Nest.JS를 사용해 WAS를 구축한 상태입니다.도큐먼트 안에 서브 도큐먼트들이 array 형태로 들어가도록 Model을 설계했는데요, 서브 도큐먼트를 가져올 때 aggregation을 사용해 페이지네이션을 적용했습니다.(처음에 설계 시, 잘 못 생각해 이러한 설계를 하긴 했습니다..)aggregation에는 성능 문제가 따라올 위험이 있을까봐 해당 GET 요청 컨트롤러에는 캐싱을 적용했습니다.문제가 되는 부분은 캐싱처리로 인한 코드의 가독성 저하 입니다.WAS안에서 GET 요청 시 캐싱을 적용하고, POST, PUT, PATCH 요청시에는 캐싱을 지우고 있는데, 비즈니스 로직안에서 이를 처리하다보니 코드의 가독성이 급격히 떨어지더라고요. 제가 생각한 해결 방안이를 해결하기 위해 event emitter를 사용해 캐싱을 비즈니스 로직으로부터 떼어낼까 고민했습니다.다만 이 해결방안은 캐싱처리하는 로직 자체가 하나의 WAS에 존재하고 있어 추후에 또 비슷한 문제가 발생하지 않을까 생각이 들더라고요. 질문선생님께서는 이러한 문제 발생 시 캐싱 처리는 프록시 서버를 띄워서 앞단에서 미리 처리를 하시는지... 아니면 또 다른 좋은 방식으로 설계를 하시는지 궁금해서 질문드립니다.
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
create certificate 할때요..!
Attempting to validate your cerificate... 상태에서 아무리 기다려도 Valid 상태로 넘어가지지가 않습니다.이런경우는 어떤 경우인가요?
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
ssh 터널링으로 vm 접속이 안됩니다.
안녕하세요.며칠 전에 올린 질문 내용과 동일합니다.rsa 키 삭제 후 다시 만들어서 lightsail 터미널에서 authorized_keys에 새로운 rsa.pub 키를 넣어서 다시 접속해봤는데도 접속이 거부됩니다.아무리 찾아보고 권한도 600으로 줘봤지만 해결이 되지 않습니다. 진도를 못 나가고 있는데 도와주세요..ㅠㅠ
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
[배포용 Workflow 만들기] 에러 해결과 아직 남은 에러
에러 해결 infogithub secres 에 SSH_PRIVATE_KEY 저장할때 로컬에서$ cat ~/.ssh/github_id_rsa (뒤에 pub 없는거 )이렇게 조회 한걸 저장 해야 deploy.yml 에서 ssh 연결시에 인증 정보 틀림에 의한 에러가 발생하지 않았습니다 run: | ssh ${{ secrets.SSH_USERNAME }}@${{ secrets.SSH_PUBLIC_IP }} " cd sample_express git pull || exit 1 npm install || exit 1 npm run build sudo pkill node || exit 1 sudo npm run start & npx wait-on http://localhost exit "그런데 아직 에러가 남아 있는데 코드가 반영된 이후에 에러가 발생 합니다.ex)에러가 발생한 코드name: deployon: push: branches: - mainjobs: deploy: runs-on: ubuntu-latest steps: - name: Set up SSH run: | mkdir -p ~/.ssh echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa - name: Set up known hosts run: | echo "${{ secrets.SSH_KNOWN_HOSTS }}" >> ~/.ssh/known_hosts chmod 644 ~/.ssh/known_hosts - name: SSH and deploy run: | ssh ${{ secrets.SSH_USERNAME }}@${{ secrets.SSH_PUBLIC_IP }} " cd sample-express2 sudo chown ubuntu:root .git/FETCH_HEAD sudo chmod +w .git/FETCH_HEAD chmod +w .git/FETCH_HEAD git pull || exit 1 npm install || exit 1 npm audit fix npm run build sudo pkill node || exit 1 sudo npm run start & npx wait-on http://localhost exit "
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
deploy.yml이 workflow에서 작동되지 않는 이유
섹션 4의 "배포용 Workflow 만들기"를 수강 중 deploy.yml이 진행되지 않습니다..test.yml은 진행이 잘 됩니다뭐가 문제일까요?.yml 파일 작성할 때 들여쓰기가 상관이 있나요?아래는 작성한 deploy.yml 파일입니다.추가로 한 탭씩 들여쓰기 하지 않고 중간 중간에 스페이스 두 번으로 들여쓰기 하는게 있는데, 규칙인가요?- (대시)기호 이것도 규칙인가요? 안 적으면 실행이 안되는건가요? name: deploy on: push: branches: - main jobs: deploy: runs-on: ubuntu-latest steps: - name: Set up SSH run: | mkdir -p ~/.ssh/ echo "${{secrets.SSH_PRIVATE_KEY}}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa - name: Set up known hosts run: | echo "${{secrets.SSH_KNOWN_HOSTS}}" >> ~/.ssh/known_hosts chmod 644 ~/.ssh/known_hosts - name: SSH and deploy run: | ssh ${{secrets.SSH_USERNAME}}@${{secrets.SSH_PUBLIC_IP}} " cd express git pull || exit 1 npm install || exit 1 npm run build || exit 1 sudo pkill node || exit 1 sudo npm run start & || exit 1 sudo npm run start & npx wait-on http://localhost exit "
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
SSH 터널링으로 Lightsail VM 접속하기
안녕하세요..! 또 질문을 드려서 너무 죄송합니다.authorized_keys에 제가 만든 public 키를 추가를 해줬는데 터미널로 접속하려고 하니까 아래와 같이 접속이 거부됩니다..! 혹시나 키를 잘못 기입했나 해서 다시 복사해서 넣었는데도 저렇게 거부가 되는데 다른 이유가 있을까요?너무 죄송합니다..!!답변주시면 정말 감사드리겠습니다!
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
workflows 내용 질문입니다.
안녕하세요. 강의 잘 보고 잘 따라가고 있습니다! 우선 좋은 강의 제공해주셔서 감사 인사 드립니다!AWS lightsail 부분 수강하고 있는 와중에 workflows 내용에 대한 질문이 생겼습니다.여기 내용을 보면 npm 설치와 redis 설치가 포함되어있는데 저렇게 설치를 하는 곳은 가상 ubuntu 서버에 하는 거라고 보면 될까요? 이미 AWS lightsail 서버에는 node와 npm 및 redis 설치를 다 끝냈는데 매번 pull request 할 때마다 다시 설치가 되는건가 궁금합니다!같은 맥락으로 도커 이미지를 나중에 만들어서 빌드를 하게 된다면 매번 수정된 내용이 반영되는 이미지를 다시 만들어서 그 이미지를 빌드해서 배포를 하는 건가요? 질문은 이 정도로 마치겠습니다! 긴 질문 읽어주셔서 감사합니다.
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
AWS Security Groups 접근시에 AuthFailure 에러가 발생합니다
강사님의 강의를 들으면서 모든 과정 에러없이 다 따라서 진행하였습니다. 완강을 하고 기존에 제가 따로 운영하던 프로젝트를 EC2에서 ECS 배포로 변경하는 작업을 진행하였습니다.제 프로젝트에 ECS 배포와 Github Action 등이 정상적으로 적용된것을 확인하고 강의에서 진행하셨던 리소스들(express-ecs.com)에 대한 cluster, loadbalancer, task definition 등을 삭제하였습니다. 또한, IAM 롤에 대해서도 삭제를 하였는데 해당 리소스들을 삭제한 직후에 발생한 에러인지는 정확히 파악을 못 하였으나 그 이후로 갑자기 제가 자체적으로 만든(newdok) 로드밸런서의 Listener, Security Group에 대해서 접근 에러가 발생하였습니다. 여기까지가 현재 발생한 문제점이고 해당 내용들에 대한 2가지 질문이 있습니다.질문 1위 사진들을 보시면 AuthFail 에러가 발생하는데 여러 해결법들을 검색해보고 액세스 키도 새로 발급해보고 IAM 권한도 admin으로 설정해보고 여러 시도를 하였으나 해결을 하지 못하였습니다. 문제는 아무 서버와도 연결되지 않은 깡통 로드밸런서(test-lb)을 생성하여 리스너와 보안그룹을 지정해주면 해당 로드밸런서에 대해서는 AuthFail에러가 발생하지 않습니다. 만약, AWS 인증 문제라면 제가 관리하고 있는 모든 자원에 대해서 Security Group 접근 에러가 발생해야 하는데 해당 로드밸런서(newdok-lb)에 대해서만 에러가 발생하는 이유를 잘 모르겠습니다. 질문 2두 번째 질문은 ECS Task Container의 Health Check에 대해서입니다. 첫 번째 질문에서 언급했던 에러가 발생함에도 로드 밸런서 접속(HTTP만), 연결한 도메인에 대한 접속(HTTP, HTTPS)은 정상적으로 되고 있는 상황입니다. 실제로도 ECS Cluster에 들어가보면 cluster, service, 심지어 task까지 정상적으로 작동 및 Health 상태를 반환합니다.하지만, 마지막 사진을 보시면 Task을 들어갔을때, Container에서 Healthy가 아니라 Unknown 상태를 반환합니다. Unhealthy가 아니라 Unknown 반환의 경우 어떤 문제일까요?
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
비용 문제!
혹시 이 강의들을 실습하면 비용이 많이 청구될까요..!?
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
node api 및 redis 서버
안녕하세요. 강의를 듣고 있는 초보 개발자입니다.test 코드 만드는 부분에서 오류가 나서 진도를 못나가고 있는 상태입니다. export createApp을 했음에도 불구하고 index.test.ts 파일에서 import createApp을 한 후 let app: Express.Application 선언 후 app을 request 인자로 넣을 때 오류가 납니다.또 한가지 질문은 os 환경이 windows인데 redis 설치를 했습니다만 이게 node api와 연동이 되고 있는건지 잘 모르겠습니다..ㅠㅠ redis cli에서 list에 push한 후 typescript로 만든 api를 구동해서 push를 했을 때 성공했다고 postman으로 확인을 했는데 get을 호출하면 [] 빈 리스트가 반환됩니다..ㅠㅠ 제가 node와 타입스크립트로 개발이 처음이라 너무 힘듭니다ㅠㅠ 진도를 나가고싶은데 이 코드를 통해서 빌드 배포를 하는 거 같아서 강의를 처음부터 계속 다시 돌려보면서 프로젝트만 지웠다 다시 만들었다만 반복 중입니다.. 도움 좀 부탁 드리겠습니다.
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
build & production stage 구분해서 도커 이미지 크기 줄이기 실패
build & production stage 구분해서 도커 이미지 크기 줄이기 강의에서 다음과 에러가 납니다.(base) david@davidui-MacBookPro ~/workspace/express dev ± docker build -t my-express-app-light . -f ./DockerFile [+] Building 1.9s (13/13) FINISHED => [internal] load build definition from DockerFile 0.0s => => transferring dockerfile: 37B 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 34B 0.0s => [internal] load metadata for docker.io/library/node:18 0.8s => [build 1/5] FROM docker.io/library/node:18@sha256:f152130c9bb77afd49873a26fcfb6da7971b451ae6db51901fb7e028ccc0ca75 0.0s => [internal] load build context 0.0s => => transferring context: 11.27kB 0.0s => CACHED [build 2/5] COPY package*.json . 0.0s => CACHED [build 3/5] RUN npm install 0.0s => CACHED [build 4/5] COPY . . 0.0s => CACHED [build 5/5] RUN npm run build 0.0s => CACHED [production 2/5] COPY --from=build ./build ./build 0.0s => CACHED [production 3/5] COPY --from=build ./package.json .package.json 0.0s => CACHED [production 4/5] COPY --from=build ./package-lock.json .package-lock.json 0.0s => ERROR [production 5/5] RUN npm install --only=production 0.9s ------ > [production 5/5] RUN npm install --only=production: #13 0.561 npm WARN config only Use `--omit=dev` to omit dev dependencies from the install. #13 0.885 npm ERR! Tracker "idealTree" already exists #13 0.890 #13 0.891 npm ERR! A complete log of this run can be found in: /root/.npm/_logs/2023-12-30T05_16_10_548Z-debug-0.log ------ executor failed running [/bin/sh -c npm install --only=production]: exit code: 1 (base) ✘ david@davidui-MacBookPro ~/workspace/express dev ±
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
DockerFile 빌드 에러
DockerFile 빌드시에 에러가 나서 찾아보고 해결책 공유 드립니다. >> docker build . 에러메세지 : failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount029268071/Dockerfile: no such file or directory 해결책 : docker build . -f ./DockerFile
주간 인기글
순위 정보를
불러오고 있어요