안녕하세요. 강의를 통해 바이브 코딩을 학습하면서 많은 도움을 받고 있습니다. 감사합니다. 강의 내용 중 인프라 구성 순서와 관련하여 한 가지 궁금한 점이 있어 문의드립니다. 현재 강의에서는 EC2를 먼저 구성하지 않고, RDS를 우선 생성한 뒤 로컬 PC와 직접 연결하여 설정을 진행하는 방식 으로 설명해 주셨습니다. 일반적으로는 EC2 인스턴스를 먼저 생성한 후, 해당 인스턴스와 RDS를 연결하고 애플리케이션을 빌드·배포하는 방식으로도 구성이 가능할 것이라고 생각했는데, 강의에서 RDS를 먼저 설정하는 데에는 특별한 이유나 설계상의 고려 사항이 있는지 궁금합니다.
유튜브, 유료강의 항상 잘보고있습니다. 양질의 영상 항상 감사드립니다. 질문부터 말씀드리자면, 기획에서 만들어진 .md 문서활용방법이 궁금합니다. 말씀하신대로 작업을 해보고있고, 클로드 데스크탑 환경에서 대화내용을 중간중간 .md 저장하게 되고, 클로드 코드에게 전달할 때 도 .md파일로 저장하게 되더라구요. 그러면 예를들어 아래처럼 기획, 프롬프트 문서들이 쌓일것같습니다. 프로젝트 초기 세팅.md 로그인 및 회원가입.md 배포 관련 정리.md 배포 관련 정리2.md 로그인 기획 수정.md 배포관련 정리3.md 프로젝트 초기세팅 보완.md 서비스 기능1.md 이런식으로 다 중요한 이력이긴 하지만 뭔가 정리되지않고 파일만 쌓이는 느낌?이 들더라구요 이때 과거 .md파일을 어떻게 활용하는걸까요? 클로드 데스크탑이 저 과거.md 파일 내용들을 항상 읽어서 다음 작업들을 하지는 않지 않나요? 저것들을 쌓으라는 이유는 나중에 개발자가 과거 이력중 필요한 내용을 복붙해서 사용하기위해 두라고 하시는 걸까요? 작업을 하다보니 이전과거 md파일은 딱히 안보게되고 새로운 md파일만 주욱 만들어지는 것 같습니다. 이력 파일을 만들어서 어떻게 활용하셨는지 궁금합니다.
***전공자와 시니어 개발자 그 사이 간격으로 인한 기회비용(물어보는 시간, 물어보려고 공부하는 시간 등)을 집단 지성으로 최적화함*** - 설치 이후의 기획 단의 문서 레퍼런스 공유 - 개발 중 주요 이슈 공유 바이브 코딩이 확실히 도움이 되고 이제는 어떤 부분은 인간을 넘어섰고, 또 넘어서고 있다고 생각합니다. 그런데 아직은 아무나 할 수 없는 것이 현실이라, 그 시행착오를 줄이고 성공하는 방법으로 집단지성을 이용하여 시간적 기회비용을 줄이는 것이 도움이 된다고 생각하여 카톡방을 개설했습니다. 채널장으로서 카톡방의 모든 질문과 답은 문서화를 해볼 예정입니다. 널널한 개발자님이 이미 된다는 것은 보여주셨고, 저 또한 시도를 했고 또 하고 있는 입장입니다. 강의를 들으면서 프롬프트나 2주 동안 고민하신 부분 등 중요한 말씀을 많이 해주셨지만, 이외에도 고려할 것들이 너무나도 많습니다. 이에 레퍼런스를 만들기 위해 커뮤니티를 만들었습니다. 지금은 오픈이지만, 추후 강의 구매자들만 들어올 수 있도록 암호화할 예정입니다. 강의 뽕을 뽑아봅시다!! 진정성있는 참여와 질문들 기대해보겠습니다. 감사합니다!
아키텍처 구성 중 의문이 생겨서 질문드립니다. 강의 중 auto scaling으로 생성하지 않고 직접 인스턴스 시작으로 생성했던 demo-3-tier-ec2는 아키텍처 상 딱히 필요하지 않아 보이는데 테스트 용으로 그냥 생성한 것인가요? 아니면 다른 역할이 있는 건가요?
WordPress 서버 클러스터 구성 강의에서 ALB / Web EC2 / RDS로 구성한다고 하셨는데 ALB가 Presentation tier, Web EC2가 Application tier, RDS가 Data tier 역할을 하는 건가요? 아니면 ALB는 사용자와 직접 소통하기 보다는 부하 분산 역할을 하니 아예 다르다고 보면 되는 걸까요?
사설망과 CIDR 강의를 듣던 중 이해가 안되어서 질문 드립니다. 5:30초에 인스턴스를 만들 때 모두 public IP를 가지고 있으니 Static이라고 하셨는데 인스턴트를 중지 할 때마다 public ip가 바뀌니 그때그때 공인 IP를 매칭시키는 dynamic이라고 볼 수는 없는건가요?
강의 13:20초대 나오는데로 원격에 push를 하면 ! [remote rejected] main -> main (refusing to allow a Personal Access Token to create or update workflow .github/workflows/deploy.yml without workflow scope) 이런 식으로 Push 불가 멘트가 나옵니다. 토큰 발급할때 workflow 권한 잘 체크했는데 push 불가입니다. 깃 액션 보안 강화로 ssh?로 접근해야 하나요? 강의대로는 cicd 불가능한 걸까요?
CodeDeploy 를 클릭했더니, 이런 문구가 뜨네요. complete your AWS registration 눌러도 콘솔 홈으로 돌아가고, credit card information 을 눌렀더니, 결제 기본 설정 창이 뜨는데, 딱히 문제될 건 없어 보여요. 다른 AWS 서비스 사용할 때는 이런 문구 안 떴는데 왜 CodeDeploy만 이럴까요? ㅠㅠ
47. (실습포함) EC2 사이즈 변경 과정 중 실패 하여 글 남깁니다. 아래 과정에서 실패가 발생하였습니다. t2.medium 인스턴스 중지 -> 스냅샷 -> AMI 생성 AMI -> ami 로 인스턴스 시작 -> m7g.medium 선택 후 생성(기타 인바운드, 아웃바운드는 모두 열림으로 생성) 인스턴스 -> 생성된 인스턴스(m7g.medium) 선택 -> 연결 -> 실패(아래 로그) 연결 실패로, 시스템 로그 확인(아래 4번 인스턴스 로그) 3번 실패 에러 Failed to connect to your instance Error establishing SSH connection to your instance. Try again later. 4번 인스턴스 로그 UEFI firmware (version built at 09:00:00 on Nov 1 2018) [2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01H[0m[35m[40m[0m[37m[40mNo bootable device found. Dropping to the EFI Shell. Exiting the UEFI shell will restart the system.[2J[01;01H[01;01HUEFI Interactive Shell v2.2 EDK II UEFI v2.70 (EDK II, 0x00010000) [1m[33m[40mMapping table[0m[37m[40m [1m[33m[40m FS0:[0m[37m[40m [1m[37m[40mAlias(s):[0m[37m[40mHD0fd:;BLK3: PciRoot(0x0)/Pci(0x4,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(128,GPT,6757D47D-EB20-4D37-B258-B2BBDAC921FF,0x800,0x5000) [1m[33m[40m BLK0:[0m[37m[40m [1m[37m[40mAlias(s):[0m[37m[40m PciRoot(0x0)/Pci(0x4,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00) [1m[33m[40m BLK1:[0m[37m[40m [1m[37m[40mAlias(s):[0m[37m[40m PciRoot(0x0)/Pci(0x4,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(1,GPT,3DDB972E-155C-4F75-A42C-4007A119B4C1,0x6000,0xFF9FDF) [1m[33m[40m BLK2:[0m[37m[40m [1m[37m[40mAlias(s):[0m[37m[40m PciRoot(0x0)/Pci(0x4,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(127,GPT,AF191D5A-F9A1-40A8-9164-B216701312F3,0x5800,0x800) [16;01HPress [1m[37m[40mESC[0m[37m[40m in 5 seconds to skip [1m[33m[40mstartup.nsh[0m[37m[40m or any other key to continue.[16;01HPress [1m[37m[40mESC[0m[37m[40m in 4 seconds to skip [1m[33m[40mstartup.nsh[0m[37m[40m or any other key to continue.[16;01HPress [1m[37m[40mESC[0m[37m[40m in 3 seconds to skip [1m[33m[40mstartup.nsh[0m[37m[40m or any other key to continue.[16;01HPress [1m[37m[40mESC[0m[37m[40m in 2 seconds to skip [1m[33m[40mstartup.nsh[0m[37m[40m or any other key to continue.[16;01HPress [1m[37m[40mESC[0m[37m[40m in 1 seconds to skip [1m[33m[40mstartup.nsh[0m[37m[40m or any other key to continue. [17;01HThe system will reboot in 60 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 59 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 58 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 57 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 56 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 55 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 54 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 53 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 52 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 51 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 50 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 49 seconds. Press any key [2025-12-27T13:17:04.737361]to run interactive shell.[17;01HThe system will reboot in 48 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 47 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 46 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 45 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 44 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 43 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 42 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 41 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 40 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 39 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 38 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 3[2025-12-27T13:17:16.737450]7 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 36 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 35 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 34 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 33 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 32 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 31 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 30 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 29 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 28 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 27 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 26 seconds. Press any key to run interactive shell.[17;01HTh[2025-12-27T13:17:28.737525]e system will reboot in 25 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 24 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 23 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 22 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 21 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 20 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 19 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 18 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 17 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 16 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 15 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 14 seconds. Press any key to run int[2025-12-27T13:17:39.837609]eractive shell.[17;01HThe system will reboot in 13 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 12 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 11 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 10 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 9 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 8 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 7 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 6 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 5 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 4 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 3 seconds. Press any key to run interactive shell.[17;01HThe system will reboot in 2 seconds.[2025-12-27T13:17:51.837681] Press any key to run interactive shell.[17;01HThe system will reboot in 1 seconds. Press any key to run interactive shell. UEFI firmware (version built at 09:00:00 on Nov 1 2018) [2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01H[0m[35m[40m[0m[37m[40mNo bootable device found. Dropping to the EFI Shell. Exiting the UEFI shell will restart the system.[2J[01;01H[01;01HUEFI Interactive Shell v2.2 EDK II
안녕하세요 강사님! 강의 잘 듣고 있습니다. ELB를 사용하면 웹 트래픽은 모두 ELB에서 받아서 Private Subnet의 EC2로 전달하는 구조 가 보안적으로 더 안전하다고 알고 있습니다. 그래서 강의 내용을 따라가면서, EC2를 Public Subnet에 두는 이유가 무엇인지 궁금해졌습니다. 제가 이해한 바로는 아래 두 가지 때문이라고 판단했는데, 맞는지 확인 부탁드립니다. Private Subnet은 인터넷 직접 접속이 안 되어 apt update , 패키지 설치 등을 하려면 NAT Gateway가 필요한데, NAT Gateway는 비용이 발생해 초보자 실습에서는 과도한 비용이 된다. Public Subnet의 EC2는 인터넷에 직접 접속할 수 있어 패키지 설치나 초기 설정(nginx 설치, 코드 배포 등)이 훨씬 단순해진다. 즉, 보안적으로는 Private Subnet 배치가 더 적절하지만 , 학습 난이도와 비용 문제 때문에 Public Subnet을 사용하는 것 이라고 이해했습니다. 제가 이해한 내용이 맞을까요? 그리고 실무에서는 보통 말씀드린 것처럼 ELB는 Public Subnet, EC2는 Private Subnet 구조로 구성하는 것이 일반적인지도 궁금합니다.
안녕하세요! 강의 늘 잘 듣고 있습니다! CI/CD 배포하다가 서버가 자꾸 죽어서 스왑 메모리까지 도입을 했는데도 비정상적으로 RAM과 스왑메모리가 꽉 차는 이슈가 있는데 도저히 어떻게 해결해야할 지 몰라서 이렇게 질문 남깁니다! 서버 인프라 환경 ELB - EC2(t3.small, EBS: 30GiB) EC2 내부 : Docker 기반 Spring Boot + MySQL 8.0 + Redis 문제 상황 어디가 구체적으로 문제인지 몰라서 그냥 구구절절 다 설명드릴게요. 처음부터 CI/CD가 안된건 아닙니다. 원래 잘 됐었는데요. 인증 도메인(일반/소셜 로그인) 정상 작동하는거 확인하고 push 해서 배포완료 후 docker-compose.yml 수정해서 push 하고나니까 갑자기 CICD 할때마다 서버가 다운되는 문제를 발견했습니다. yml 파일을 바꾸게 된 경위는, 토큰 받아오는 과정에서 에러 뜨는거 보고 docker-compose.yml에 redis 관련 환경변수를 등록하는걸 깜빡했구나 싶어서 그거 추가한게 다 입니다. 이게 전혀 문제가 안될텐데 이상하게 이 시점 이후로 계속 문제가 터져서 좀 난감합니다. 애플리케이션이래봤자 아직 인증도메인 & 유저 간단한 CRUD가 전부라서 무거울게 없기 때문에 t3.small로도 충분할거라 생각했지만, 혹시나 하는 마음에 t3.medium으로 scale up을 해봤습니다. 그랬더니 이번엔 RAM 4GB와 Swap Memory를 5.9GB 까지 잡아먹는 비정상적인 현상이 계속 반복되더라구요. 혹시 한꺼번에 docker build를 해서 그런가 싶어서 container 별로 나눠서 빌드시키고 각 단계마다 sleep을 줘봤는데도 결과는 똑같았습니다. 아래가 이제 t3.small (Swap 4GB 설정)이구요 이게 t3.medium (Swap 6GB)입니다. (위와 로직이 좀 달라요. 근데 이러나 저러나 결과는 똑같아서..) 배포 관련 파일 대상 : deploy.yml, docker-compose.yml, Dockerfile 글자 수 제한 이슈로 노션에다가 코드 올렸습니다. https://hooby.notion.site/CICD-OOM-2a6f6c063f3e805ba105d78284365fbe?source=copy_link 질문 혹시 제 deploy.yml이나 docker-compose.yml 에 문제가 있나요? 메모리 80% 이상 차지하는게 전부 Docker 관련 프로세스여서요. Update 2: 테스트 결과에 따라 하단의 질문들이 원인이 아니라는게 검증됨 아니면.. t3.small이 docker 기반 Spring Boot + MySQL + Redis를 빌드 못할 수준인가요? (아닐 것 같긴해요.) 아니면 제 인증 구현 방식에 문제가 있어서 저럴 수도 있는건가요? Redis 기반으로 Token에 블랙리스트 설정하고, 클라이언트한테 쿠키로 토큰 심어서 내보내는 방식인데, 혹시 이게 문제가 될 수도 있는건가요? 근데 로컬에서 redis 랑 스프링부트 가동하고 htop으로 메모리 변화를 봤을 땐 문제 없어보이긴 했습니다. 긴 글 읽어주셔서 감사합니다. Update 1: EC2에 직접 실행해본 결과 EC2에서 docker-compose.yml을 그 안에다가 직접 만들어서 mysql, redis만 띄우고 Spring Boot는 클론해서 환경변수 직접 세팅해주고 실행해봤습니다. 이는 혹시나 혹시나 애플리케이션이 너무 비정상적으로 설계되서 메모리를 많이 잡아먹진 않을까 하는 우려에 임시로 이렇게 세팅해뒀습니다. 결과적으로 잘 돌아갑니다. 메모리가 1.36GB 정도 잡히긴 하지만...? 그래도 redis + mysql + spring boot 다 돌렸을 때 이정도고 Swap 메모리 있으니까 괜찮지 않을까 하는 판단 중입니다. (아니면 호되게 지적해주세요) 하단은 임시로 세팅하기 위한 docker-compose.yml 입니다. https://hooby.notion.site/CICD-OOM-2a6f6c063f3e805ba105d78284365fbe?source=copy_link 한번 이것도 CI/CD로 돌려봐야겠긴 한데, 우선 문제가 됐던 deploy.yml과 docker-compose.yml에서 어떤 문제가 있었길래 저런 사태가 발생했던건지 알고싶습니다. Update 2: 우선 대안으로 SCP 활용 강의에서 초기 프로젝트에 좋다고 했던 방법대로 해결했습니다. CICD 과정에서 메모리는 900MB 미만 수준에서 안정적으로 돌았습니다. 근데 제가 원했던 설계는 Docker로 Spring Boot + MySQL + Redis 일원화였기 때문에 개발 완료되는대로 다시 찾아봐야겠습니다. https://hooby.notion.site/Server-Infra-Setup-Remodeling-2a8f6c063f3e808a8674fbc2a62cdd22?source=copy_link
800명이 넘는 AWS 강의실 오픈채팅방 에 오시면 더 좋은 답변을 실시간으로 받아보실 수 있습니다. 질문내용은 상세하고 자세하게 부탁드립니다. 예시 : "Amazon EC2의 t2.micro 타입으로 Amazon Linux 2023타입으로 퍼브릭 서브넷에 프로비전 했습니다. 키페어와 같이 프로비전해서 SSH로 접속하고 싶은데 접속 요청시 Timeout이 발생합니다. 어디를 확인하면 될까요?" RDS 접속 강의를 수강 중인데요. 선생님과 같이 해도 저는 Test Connection을 해도 Connection Failed가 뜹니다. 뭘 놓친 걸까요?