묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
RDS 인바운드 규칙 설정 관련 질문
강사님 안녕하세요 강의 잘 듣고 있습니다!강의 12분 40초 대에 RDS에 인바운드 규칙을 설정하는 부분에서 이미 인바운드 규칙이 하나 존재함을 발견했습니다.원래 있었던 인바운드 규칙은 삭제해도 강의 진행에 문제가 없는지 궁금합니다(이 계정은 신규계정으로 강의를 듣는것만을 목적으로 생성하였습니다)감사합니다
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
appspec.yml, 스크립트 파일 수정요청
안녕하세요CI/CD 강의를 재미있게 수강중 입니다수강 중 수정 사항을 요청드리기 위해 여기에 남깁니다노션 : https://jscode.notion.site/CI-CD-c028a6824f824524bcb35b8c384c9771 appspec.yml 파일 작성 중 오타가 있습니다이로 인해 정상적인 배포가 되지 않습니다확인 해주시기 바랍니다
-
해결됨강의 하나로 끝내는 백엔드 모든 지식!
강의 자료 PDF 제공 가능 여부 문의
안녕하세요 어제 강의를 신청하여 시작하였습니다. 노션으로 강의자료를 제공해주시던데.. 혹시 PDF 자료로 일괄적으로 제공이 가능하신가요? 인쇄물로 공부하고 싶어서 그렇습니다. 안녕하세요! 수강 중 궁금한 점이 생겼을 때, 어떻게 질문해야 원하는 답변을 더 빠르고 정확하게 얻을 수 있을까요? 여러분의 소중한 질문이 더 효과적으로 해결될 수 있도록, 몇 가지 질문 방법을 안내해 드릴게요!1. 무엇이 궁금한지 명확하게 알려주세요! 🎯어떤 강의 내용에 대한 질문인가요?예: "섹션 3, 챕터 11: 인증과 인가 제대로 알기 강의 내용 중 JWT 토큰 발급 과정에서 궁금한 점이 있습니다."어떤 목표를 달성하고 싶으셨나요? / 어떤 결과를 예상하셨나요?예: "서버에서 토큰을 정상적으로 발급받아 클라이언트에 전달하는 것을 목표로 했습니다."2. 충분한 정보를 함께 공유해주세요! 💾시도해본 내용 (중요! ⭐):이 문제를 해결하기 위해 어떤 노력을 해보셨는지 알려주세요.예: "구글에 'JWT 토큰 만료 해결 방법'을 검색해서 몇 가지 글을 읽어봤지만, 제 상황에 적용하기 어려웠습니다." 또는 "강의 노트를 다시 살펴보며 OOO 개념을 이해하려고 했는데, XXX 부분이 명확하지 않습니다."여러분이 이해하고 있는 내용 (개념 질문 시):단순히 "OOO이 뭐예요?" 보다는, "OOO은 XXX라고 이해했는데, 그렇다면 YYY 상황에서는 어떻게 적용되나요?" 와 같이 여러분의 생각을 함께 공유해주시면 더 깊이 있는 답변이 가능합니다.3. 질문은 명료하고 간결하게! ✨한 번에 한 가지 핵심 질문을 중심으로 작성해주세요. 여러 질문이 있다면 나눠서 질문해주시는 것이 좋습니다.가급적 맞춤법과 띄어쓰기를 지켜주시면 질문을 이해하는 데 큰 도움이 됩니다.질문 제목은 내용을 유추할 수 있도록 명확하게 작성해주세요.나쁜 예: "질문있습니다ㅠㅠ"좋은 예: "섹션5 챕터22 도커 이미지 빌드 시 COPY 명령어 오류 문의"4. 질문 전, 혹시 이미 답변이 있지는 않을까요? 🔍강의 Q&A 게시판이나 관련 커뮤니티에서 비슷한 질문이 이미 있었는지 검색해보는 센스!
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
질문있습니다.
예를들어서 스프링부트,mysql,redis를 연동해서 파드로 띄으고싶으면 deployment안에서 생성해야하는걸로 알고있습니다. 그러면 mysql-deployment.yaml redis-deployment.yaml springboot-deployment.yaml 이런식으로 3개의 파일을 만들어야하나요?그러면 디플로이먼트가 3개 생성되는걸/가요?
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
k run chk-info --image=sysnet4admin/chk-info 에러..
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다![질문 하기]하기 명령어를 수행할 때마다 k run chk-info --image=sysnet4admin/chk-info E0722 14:02:33.293435 1421 memcache.go:265] couldn't get current server API group list: Get "https://192.168.1.10:6443/api?timeout=32s": dial tcp 192.168.1.10:6443: connect: connection refused The connection to the server 192.168.1.10:6443 was refused - did you specify the right host or port?이러한 메시지가 나오는데 재설치를 하든 뭘 하든 안되는데 도와주세요.. 성능이슈라고 보기는 어려워보이는게 전 데스크탑을 이욯중이고 (8core, 32GB) Win 11 OS 사용중입니다.. 도저히 이해가안가네요 마스터 노드가 꺼져있는거같기도 하고 잘 모르겠네요..
-
해결됨이거 하나로 종결-고품질 리액트와 스프링부트 65시간 풀스택 개발 강의(도커, AWS, GITHUB-ACTIONS)
강의노트가 자료에 있는건가요..? (답변이 늦어져도 괜찮습니다)
https://webzz.tistory.com 링크를 강의노트에 넣어놓을테니 꼭 확인 부탁드린다고 하셨는데 1. 자료안에 강의 노트가 안보입니다2.https://webzz.tistory.com 이 사이트는 쿠팡 파트너스 사이트 같습니다ㅠㅠ
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
강의 내용에서 보강 하고 싶어서 질문 드립니다 - DEV, PROD 환경
실전에서는 주로 어떻게 하는지 궁금 해서 질문 드립니다. 보통 실전에서는 개발서버 및 상용서버가 각각 물리적으로 분리 된 상태에서 관리를 할텐데요. 현재 선생님께서 알려주신 부분에서 이부분을 어떻게 적용 할지 궁금 해서 질문 드립니다. AWS EKS 하나로 같이 사용하되 네임스페이스를 논리적으로 분리해서 개발 환경하고 상용 환경을 분리하자AWS EKS 물리적으로 개발 환경하고 상용 환경을 분리 하기이렇게 이슈가 있을 것 같습니다. 일단 1번 내용으로 하게 된다면 name: deploy DEV backend on: push: branches: - dev jobs: build-and-deploy: runs-on: ubuntu-latest steps: ----- 생략 ----- - name: configure aws uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: ${{ secrets.AWS_KEY }} aws-secret-access-key: ${{ secrets.AWS_SECRET }} aws-region: ap-northeast-2 - name: update cluster infomation run: aws eks update-kubeconfig --name ${클러스터이름} --region ap-northeast-2 - name: Login to ECR ----- 생략 ----- - name: build and push docker image to ecr env: REGISTRY: ${AWS ECR REPOSITORY} REPOSITORY: ${개발 Repository 명} IMAGE_TAG: latest run: | docker build \ -t $REGISTRY/$REPOSITORY:$IMAGE_TAG \ -f ./project/Dockerfile ./project docker push $REGISTRY/$REPOSITORY:$IMAGE_TAG - name: eks kubectl apply run: | kubectl rollout restart deployment ordersystem-backend -n dev name: deploy PROD backend on: push: branches: - prod jobs: build-and-deploy: runs-on: ubuntu-latest steps: ----- 생략 ----- - name: configure aws uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: ${{ secrets.AWS_KEY }} aws-secret-access-key: ${{ secrets.AWS_SECRET }} aws-region: ap-northeast-2 - name: update cluster infomation run: aws eks update-kubeconfig --name ${클러스터이름} --region ap-northeast-2 - name: Login to ECR ----- 생략 ----- - name: build and push docker image to ecr env: REGISTRY: ${AWS ECR REPOSITORY} REPOSITORY: ${상용 Repository 명} IMAGE_TAG: latest run: | docker build \ -t $REGISTRY/$REPOSITORY:$IMAGE_TAG \ -f ./project/Dockerfile ./project docker push $REGISTRY/$REPOSITORY:$IMAGE_TAG - name: eks kubectl apply run: | kubectl rollout restart deployment ordersystem-backend -n prod 이렇게 네임스페이스 통해 논리적으로 분리해서 관리 하는 것도 있을 것 같은데요.하지만 제가 생각 했을때는 단점으로는 SPOF (Single Point Of Failure) 문제가 발생 될 것 같아 고민이 들지만 비용면에서는 1번이 좋을 것 같기도 합니다. 주로 실전에서는 어떻게 관리를 하는지 궁금 합니다! ^_^
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
강의 학습시 애플리케이션 질문
안녕하세요 강사님이제 강의를 막 듣기 시작했는데 질문이 있어 먼저 남깁니다저는 Node말고 평소에 사용하는 spring 기반으로애플리케이션을 띄워도 AWS 배포 과정을 학습하는데는문제가 없을지 질문 드립니다.감사합니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
pdf 자료에 섹션3 누락
섹션 3 [예제] 백앤드 서버를 파드로 띄어보기가 없습니다..pdf 수정부타드립니다
-
미해결그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
livenessProbe 어플리케이션 재시작 의미
[질문 하기]안녕하세요 수업 내용 중 궁금한점이 있어서 문의 드립니다.수업 내용 상, livenessProbe 과정에서 문제가 있는 경우, startupProbe 전단계로 이동하여 컨테이너를 재시작 하는 것이 아닌 어플리케이션을 재실행 한다고 이해하였습니다. 그러나 실제 실습 시에 pod describe의 reason 부분에 killing이 발생하는 것을 보아 실제 pod를 죽이고 재실행하는 것으로 보입니다. 설명 상에 어플리케이션을 재실행한다는 의미가 periodSeconds에 의해서 체크를 여러번 수행하는 것을 의미한다고 생각하면 될까요??
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
파일이 생성까진 되는데 실행하려면 자꾸 컨테이너가 꺼집니다
윈도우 환경에서 wsl 안에서 사용하고 있는데 어떻게 조치해야될까요?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
sudo lsof -i:3306 입력을 했는데 다른 말이 나옵니다.
안녕하세요 선생님윈도우 11 사용중인 학생인데sudo lsof -i:3306을 입력했더니 처음에는 Sudo가 이 컴퓨터에서 사용하지 않도록 설정되어 있습니다. 사용하도록 설정하려면 으로 이동하세요. Developer Settings page 설정 앱의이런식으로 나와서 검색해보니 sudo를 활성화 시켜야한다고해서 sudo를 활성화 시킨뒤 인라인모드로 설정을 했습니다.이 후에 실행하니 명령을 찾을 수 없음 이라고 나오고sudo config --enable normal을 쳐보라해서 쳐보니 Sudo는 현재 이 컴퓨터에서 인라인 모드입니다. 이렇게만 나오는데 이건 어떻게 해결해야할까요??
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
죄송합니다 섹션8 답변을 봐도 이해가안되서요
섹션 6에서 스프링부트,mysql,redis를 컨테이너 동시에 띄워보기에서services: my-server: build: . ports: - 8080:8080 depends_on: my-db: condition: service_healthy my-cache-server: condition: service_healthy my-db: image: mysql:8.0 environment: MYSQL_DATABASE: mydb # MySQL 최초 실행 시 mydb라는 데이터베이스를 생성해준다. MYSQL_ROOT_PASSWORD: pwd1234 volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 healthcheck: test: ["CMD","mysqladmin","ping"] interval: 5s retries: 10 my-cache-server: image: redis ports: - 6379:6379 healthcheck: test: ["CMD","redis-cli","ping"] interval: 5s retries: 10 spring: datasource: url: jdbc:mysql://my-db:3306/mydb username: root password: pwd1234 driver-class-name: com.mysql.cj.jdbc.Driver data: redis: host: my-cache-server port: 6379 이렇게 설정을하면그림대로 컨테이너가 3개가 띄워지고 서로 연결이되서 JPA를 사용해서 mysql에 데이터를 넣을수있는 구조거나 아무튼 applicaion.yml에 연결을 해놔서 서로 잘 연결되는건 이해를 했습니다. 그런데 섹션8은1.스프링부트를 이미지로 만든다2.그 이미지를 ec2에서 받아서 배포를한다 인데여기서 ec2에서 직접 mkdir instagram-server 폴더를 만들고 그 안에 compose.yml을 직접 만드신후services: instagram-server: image: 002177417362.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest ports: - 8080:8080 depends_on: my-db: condition: service_healthy my-cache-server: condition: service_healthy my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: pwd1234 MYSQL_DATABASE: mydb volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 healthcheck: test: [ "CMD", "mysqladmin", "ping" ] interval: 5s retries: 10 my-cache-server: image: redis ports: - 6379:6379 healthcheck: test: [ "CMD", "redis-cli", "ping" ] interval: 5s retries: 10이렇게 적으셨잖아요 이러면 mysql,redis도 같이 배포되는건 이해를했다만 1.섹션8스프링부트에서는 applicaion.yml에서 섹션 6처럼 디비 연동한것도없으니서로 연결(mysql,redis,스프링부트)이안되어있는상태인가요? 2.그리고 섹션8 스프링부트에서는 간단한 api만 만들어서 테스트를했는데섹션6에서 만든 프로젝트를 섹션8처럼 배포를한다고하면 applicaion.yml,compose.yml은 삭제해야하나요?3.섹션8 프로젝트에서 applicaion.yml에 mysql db연동하고 jpa를 사용해서 DB에 데이터를 넣고뺴고,compose.yml에 서 컨테이너를 생성하고 이걸 로컬에서 한다고 하면 aws에 배포를 어떻게 해야하나요? aws rds 사용한다고하면 이 mysql을 컨테이너로 띄우는게 틀린걸까요?... 섹션6 스프링부트,mysql,redis를 컨테이너 동시에 띄워보기 이거를 aws에 배포하는걸 보면 바로 이해할것같은데 알방법이 있을까요?ㅠ
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
pvc CrashLoopBackOff 문제
/c/Users/User/Desktop/aws/mysql (main) $ kubectl logs -f mysql-deployment-dc94cbd74-pzjvm -c mysql-container 2025-07-15 12:40:56+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 9.3.0-1.el9 started. 2025-07-15 12:40:56+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' 2025-07-15 12:40:56+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 9.3.0-1.el9 started. '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock' 2025-07-15T12:40:56.554602Z 0 [System] [MY-015015] [Server] MySQL Server - start. 2025-07-15T12:40:56.757217Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 9.3.0) starting as process 1 2025-07-15T12:40:56.761789Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. 2025-07-15T12:40:56.765848Z 1 [ERROR] [MY-012592] [InnoDB] Operating system error number 22 in a file operation. 2025-07-15T12:40:56.765898Z 1 [ERROR] [MY-012596] [InnoDB] Error number 22 means 'Invalid argument' 2025-07-15T12:40:56.765913Z 1 [ERROR] [MY-012646] [InnoDB] File (unknown): 'close' returned OS error 122. Cannot continue operation 2025-07-15T12:40:56.765918Z 1 [ERROR] [MY-012981] [InnoDB] Cannot continue operation. 이런 에러가 반복적으로 뜹니다. 메뉴얼 대로 했는데 혹시 무엇이 문제일까요..?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
AMI 유형
강의 1:52 노드 그룹 컴퓨팅 구성할 때 이번에 올려준 강의랑 AWS EKS 컴퓨팅 구성 AMI 유형 리스트가 다른데 강의의 유형 Amazon Linux 2 Arm ( AL2_ARM_64 ) 이거랑 Amazon Linux 2023(arm64) Standard(AL2023_ARM_64_STANDARD)랑 같은건가요?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
마스터 노드 vs 워커 노드
[ EKS 생성 시 ]→ AWS가 마스터 노드(제어 플레인)를 자동 생성[ 노드 그룹 생성 시 ]→ 사용자가 EC2 기반 워커 노드 그룹(또는 Fargate)을 생성[ Pod 배포 시 ]→ 사용자가 kubectl 또는 Helm 등으로 명령 → 마스터 노드가 스케줄링 → 워커 노드에서 컨테이너 실행위의 FLOW로 이해하고 있는데워커 노드는 생성하는데 마스터 노드는 EKS 생성할 때 생성된다고 하는데 정확히 마스터 노드 역할이 뭔지 이해가 잘 안되네요 ㅠㅠ eks 생성할 때 설정해주는 값에 따라서 달라지게 되는건지 그냥 무조건 DEFAULT 생성인건지..
-
해결됨Spring Boot, AWS로 백엔드 서비스 한 사이클 완성하기
강의내용 중 질문드립니다.
질문 : ec2에서 post man으로 요청을하면 log가 찍히질 않습니다. 강의와 마찬가지로 yml파일 구성을 아래와 같이 했습니다. services: springboot-twitter: container_name: springboot-twitter image: kki129443133/springboot-twitter-linux:latest ports: - "8080:8080" environment: - SPRING_DATASOURCE_URL=jdbc:mysql://mysql-twitter.c1cgyccww7yi.ap-northeast-2.rds.amazonaws.com:3306/twitterdb - SPRING_DATASOURCE_USERNAME=dev - SPRING_DATASOURCE_PASSWORD=dev123 시도사항1. header 값에 아래 값을 추가해준것인데 효과 없었습니다.Key: Content-TypeValue: application/json2. 번쨰는 아래값을 yml에 추가 해주었는데 - SPRING_JPA_SHOW_SQL=true - SPRING_JPA_PROPERTIES_HIBERNATE_FORMAT_SQL=true - LOGGING_LEVEL_ORG_HIBERNATE_SQL=DEBUG - LOGGING_LEVEL_ORG_HIBERNATE_TYPE_DESCRIPTOR_SQL_BASICBINDER=TRACE - LOGGING_LEVEL_ORG_SPRINGFRAMEWORK_WEB=DEBUG - LOGGING_LEVEL_ORG_SPRINGFRAMEWORK_WEB_SERVLET_DispatcherServlet=DEBUG 이후 아래와 같이 반응을 하긴하는데 어떤 문제로 인해서 강의와 같이 로그가 안찍히는 지 모르겠습니다.2025-07-14T14:20:32.262Z DEBUG 8 --- [nio-8080-exec-8] o.s.web.servlet.DispatcherServlet : Completed 200 OK 2025-07-14T14:20:33.145Z DEBUG 8 --- [nio-8080-exec-9] o.s.web.servlet.DispatcherServlet : GET "/api/posts", parameters={} 2025-07-14T14:20:33.145Z DEBUG 8 --- [nio-8080-exec-9] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped to com.apiece.springboot_twitter.PostController#getAllPosts() 2025-07-14T14:20:33.146Z DEBUG 8 --- [nio-8080-exec-9] m.m.a.RequestResponseBodyMethodProcessor : Using 'application/json', given [*/*] and supported [application/json, application/*+json] 2025-07-14T14:20:33.147Z DEBUG 8 --- [nio-8080-exec-9] m.m.a.RequestResponseBodyMethodProcessor : Writing [[com.apiece.springboot_twitter.Post@1de33c5b, com.apiece.springboot_twitter.Post@e7411e2, com.apiece (truncated)...] 2025-07-14T14:20:33.149Z DEBUG 8 --- [nio-8080-exec-9] o.s.web.servlet.DispatcherServlet : Completed 200 OK
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
섹션9부분이 조금 이해가안되서요
첫번쨰 질문:섹션9에서하는게 지금내가 만든 프로젝트를 aws ECR에 이미지로 올리고그 이미지로 만든 프로젝트를 aws에 배포를해서 사용자들이 사용하게 한다 결국 이거맞나요? 두번쨰 질문 섹션9에서 ec2에서 compose.yml을 적어서 컨테이너를 추가하는데 이렇게말고스프링부트 프로젝트에서 compose.yml 파일 추가해서 이미지로 한번에 만들고 배포해도 똑같은건가요? 여기가 이해가안됩니다. 그전에는 스프링부트에서 compose.yml을 추가하고 컨테이너를 여러개 띄웠는데 지금은 aws에서 직접 compose.yml을 만드는게.. 세번쨰 질문 그전에 했던 실습에는 스프링부트안에 application.yml 에 이렇게적었는데spring: datasource: url: jdbc:mysql://my-db:3306/mydb username: root password: pwd1234 driver-class-name: com.mysql.cj.jdbc.Driver data: redis: host: my-cache-server port: 6379 섹션 9처럼 aws ec2에 직접 compose.yml을 적으면 저렇게 appclication.yml은 없는데 상관없이 mysql 워크벤치같은곳에서 사용이가능한가요?
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
MSA - member service 배포시 문제
안녕하세요 우선 좋은 강의 만들어주셔서 감사드립니다.MSA 파트에서 질문 하나 있습니다. ApiGateway 서비스 depl_svc.yml Aplly 하기 - kubectl apply -f ./depl_svc.yml ingress 배포 - kubectl apply -f ./ingress.ymlhttps.yml Aplly 하기 - kubectl apply -f ./https.ymlMember 서비스 depl_svc.yml Aplly 하기 - kubectl apply -f ./depl_svc.ymldeploy_ordermsa_with_k8s.yml 통해서 github push 하기 AWS ECR Repository 에 정상적으로 이미지 등록되는지 체크 API Gateway 배포 완료member service 배포 실패 - Readiness probe failed: Get "http://172.31.47.22:8080/health": dial tcp 172.31.47.22:8080: connect: connection refused일단 서비스가 정상적으로 배포되었는지 자기 자신 서버로 호출 해서 체크 하는 것 같습니다. 이런데 "연결 거절" 이라는 에러가 발생되네요. 무엇이 잘못되는지 확인이 어려워서 이렇게 질문 드립니다. 다시 처음부터 했는데도 문제가 있어서 분명 제가 설정 잘못 한거 같은데... 혹시 예상되는 부분이 있을까요?
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
안녕하세요 도커 컴포즈쪽 듣고있다가 문뜩
궁금한점이 생겨서 질문드립니다. 학부생떄 수업으로 docker들었을때 이런 ui 사용했던거같은데 이 강의에서는 터미널로만 계속 진행하나요?저 데스크탑은 사용안하는지요