안녕하세요, 특정 테이블의 데이터를 Master에서 업데이트를 하고 바로 조회를 한다면, 아직 복제되지 않은 Slave 테이블에서 데이터가 조회가 된다면, 업데이트 되지 않는 것처럼 보일 수 있을 것 같아서, 이런 경우에는 어떻게 진행이 되야하는지 궁금합니다. 바로바로 결과를 확인해야하는 경우는 Master에서만 Read되도록 설정이 가능한가요?
안녕하세요, 관련강의를 통하여 쿠버네티스를 많이 이해하는데 도움이 되었습니다. 그림과 실습으로 친절하게 알려주셔서 감사합니다. 궁금한 사항으로 (굉장히 기본적인 내용인 것 같은데요 ㅎ) 대쉬보드 에서 클러스터 롤바인딩(ex. kubernetes-dashboard2) 을 수정할때는 버튼으로 수정이 편한데요. OS 상에서는 어떻게 수정하는지 궁금합니다. 감사합니다.
안녕하세요 강사님. 현재 k8s master 노드와 node1,2를 모두 정상적으로 생성한 상태인데, 대시보드 접근이 안되어 문의글 남깁니다. 대시보드 url을 입력해 접속하면 다음과 같은 화면이 출력됩니다. kubectl get pods -A 했을 때 모든 pods가 정상적으로 running 상태입니다. 문제가 무엇일까요..? 답변 주시면 감사하겠습니다.
풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
안녕하세요, section 8 / docer 활용하기에서 jupyter notebook 페키지를 설치중 no space error가 발생합니다. 제가 EC2 인스턴스 생성 시 용량을 8G만 했었거든요. 그래서 일단 EC2 서버에 가서 용량을 16G로 늘리고, 블로그 보고 파티션 설정까지 해줬습니다. 현재 lsblk 치면 아래와 같이 나옵니다. 다시 jupyter notebook을 설치해도, 여전히 no space left 라고 나오네요 ㅠㅠ 뭔가 파티션 설정이 잘못 된 것 같은데, 방법을 알려주시면 감사드리겠습니다!!!!
풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
이렇게 나와있는데 실제로 결제된건 아니고 예상청구금액 같은 것 같아요 혹시 왜 이렇게 나오는지 짐작가시는 거 있을까요? 가입한지 한달 안되었고.. 똑같이 따라한 것 같거든요... 짐작가시는 부분 있으시면 알려주세용... 강의 쉬었다가 보려고 2주정도 인스턴스 정지해놓긴 했거든요.
도저히 실습에 진도가 나가지않아서 삽질하다가 질문드립니다. 사내에서 실습하는데, 사내 Proxy로 인해 Vagrant로 동작이 안되서 만들어놓으신 Vagrantfile, sh 스크립트 파일까지 고쳐가면서 하나씩 뚫고 가다가 결국은 포기했습니다. 그래서 강의대로 OVA이미지 파일 4개를 Windows의 VirtualBox에 import하고 실행했는데요. 강의처럼 테스트로 nginx pod 하나 뛰워보면, 계속 상태가 아래와 같이 ContainerCreating 에서 변하지 않습니다. [root@m-k8s ~]# kubectl run nginx --image=nginx pod/nginx created [root@m-k8s ~]# kubectl get po -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES nginx 0/1 ContainerCreating 0 14s <none> w3-k8s <none> <none> 그래서 인터넷 뒤져서 descibe 명령을 해보면 아래와 같고요 [root@m-k8s ~]# k describe pods Name: nginx .... Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 3m11s default-scheduler Successfully assigned default/nginx to w3-k8s Warning FailedCreatePodSandBox 3m10s kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = failed to setup network for sandbox "98c8cd593834608f6b964442a4253da3b4d5c8936ee5ba0b01d2b37dd58f7f07": plugin type="calico" failed (add): stat /var/lib/calico/nodename: no such file or directory: check that the calico/node container is running and has mounted /var/lib/calico/ kubelet.service 로그를 보면 아래와 같이 rpc error가 발생합니다. [root@m-k8s ~]# journalctl -f -u kubelet.service -- Logs begin at Fri 2024-05-31 13:58:40 KST. -- May 31 13:59:30 m-k8s kubelet[1170]: E0531 13:59:30.245464 1170 kuberuntime_gc.go:176] "Failed to stop sandbox before removing" err="rpc error: code = Unknown desc = failed to destroy network for sandbox \"684257523f2fa5084b4176cb38db77da2b32eaede58d0e565eafa9cd0a606167\": plugin type=\"calico\" failed (delete): error getting ClusterInformation: Get \"https://[10.96.0.1]:443/apis/crd.projectcalico.org/v1/clusterinformations/default\": dial tcp 10.96.0.1:443: i/o timeout" sandboxID="684257523f2fa5084b4176cb38db77da2b32eaede58d0e565eafa9cd0a606167" May 31 13:59:40 m-k8s kubelet[1170]: E0531 13:59:40.856695 1170 remote_runtime.go:269] "StopPodSandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to destroy network for sandbox \"e2e9812b51ac2134f3a12109f08b56c4475de7206dde4b4a127ca8ed418653b0\": plugin type=\"calico\" failed (delete): error getting ClusterInformation: Get \"https://[10.96.0.1]:443/apis/crd.projectcalico.org/v1/clusterinformations/default\": dial tcp 10.96.0.1:443: i/o timeout" podSandboxID="e2e9812b51ac2134f3a12109f08b56c4475de7206dde4b4a127ca8ed418653b0" May 31 13:59:40 m-k8s kubelet[1170]: E0531 13:59:40.856857 1170 kuberuntime_manager.go:954] "Failed to stop sandbox" podSandboxID={Type:containerd ID:e2e9812b51ac2134f3a12109f08b56c4475de7206dde4b4a127ca8ed418653b0} 무엇이 문제일까요? ㅠ 위 로그에 "https://[10.96.0.1]:443/apis/ crd.projectcalico.org/v1/clusterinformations/default" 이 10.96.0.1 IP는 처음보는 IP인데 정상적인 IP는 맞을까요? OVA이미지 import할때 VirtualBox에 설정이 문제일까요? kubectl run nginx --image=nginx 할때 외부사이트에서 이미지를 받아오나요? 외부 사이트라면 ID/패스워드 인증없이 받아오는걸까요? 외부 registry면.. 또 Proxy 설정이나, SSL 인증이 문제가 될거 같기도 한데요...
혹시 코드를 수정하고 계속 commit 해서, 맨 처음에 clone 했을 때의 코드와 현재 코드가 다른데 추가로 어떤 명령어를 더 입력해야 하나요 ? 깃허브 주소입니다 ! https://github.com/jjeong1015/memberCertification/tree/main
풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
선생님 안녕하세요 좋은 강의 감사드립니다. section 6, docker 주요 명령 익히기7 (컨테이너를 다루는 다양한 옵션) 강의 3:40초 부분에서 질문이 있습니다. 해당 부분은 -v 옵션을 사용해서 docker의 특정 폴더를 로컬(여기서는 aws ec2 서버)의 폴더와 연결한 모습을 보여주고 있는데요. 문제는. 저는 이 도커에 -v를 사용해서 로컬의 폴더와 연결한 적이 없다는 것입니다. 제가 " section 6, docker 주요 명령 익히기5" 에서 한 것은 httpd 이미지를 사용해서 만든 도커를 연결한 것이었고, " section 6, docker 주요 명령 익히기7"에서는 httpd:alpine 이미지를 사용해서 도커를 새로 만들었거든요. 도커를 새로 만들었음에도 불구하고, 이전에 연결해놓은 -v가 그대로 작동하는 것은 왜 그런것이죠?
일방적인 수업이 아닌 양방향의 수업을 지향합니다. 게시판에서 질문을 적극적으로 활용하세요. (이해가 되실 때까지 지속적으로 질문을 던지시는 것이 중요합니다. 업무일 기준 2~3일 내에 답변을 드릴 수 있도록 최선을 다하겠습니다.) 다만, 질문이 이해될 수 있도록 (상식 수준에서), 다듬어 주세요. 게시판 공개가 어려운 경우에 메일로 연락주시길 요청 드립니다. (daniel@datatrain.education) 수업을 빠르게 한 번 쭉 들으신 후에, 한 번 더 학습하실 것을 권장드립니다. 안녕하세요 강사님 수업을 듣다가 궁금한 점이 있어 질문 드립니다. 수업을 들으면서 devcontainer.json를 생성하고 rebuild container를 하면 1. devcontainer.json의 "build" 정보를 이용하여 docker build 를 진행 docker run ~ 그 외 추가적인 과정 한다고 이해했습니다. 그리고 Dockerfile을 image로 만들 때, build를 하는 것으로 알고있습니다. 실습에서 Dockerfile과 json 파일에서 "build" 부분을 수정하지 않고, "runArgs", "customization" 을 추가했는데 build를 다시 해야하는 점이 이해가 가지 않습니다...ㅠㅠ devcontainer.json의 수정 사항을 적용하거나 실행하기 위해서는 build과정이 필요해서 그런 것 일까요?? 그리고 devcontainer.json을 수정하고 rebuild하면 container가 재생성이 되는 것인가요?? 또한 처음에 devcontainer.json 파일을 생성하고 New Dev Container 가 아닌 Rebuild container를 하는 이유도 궁급합니다. 감사합니다.
ubuntu@ip-172-31-86-200:~/memberCertification$ ./gradlew clean build Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 15s 8 actionable tasks: 8 executed ubuntu@ip-172-31-86-200:~/memberCertification$ ./gradlew clean build > Task :test MemberCertificationApplicationTests > contextLoads() FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:180 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1773 Caused by: org.hibernate.service.spi.ServiceException at AbstractServiceRegistryImpl.java:276 Caused by: org.hibernate.HibernateException at DialectFactoryImpl.java:191 1 test completed, 1 failed > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///home/ubuntu/memberCertification/build/reports/tests/test/index.html * Try: > Run with --scan to get full insights. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 15s 8 actionable tasks: 8 executed ubuntu@ip-172-31-86-200:~/memberCertification$ ./gradlew clean build > Task :test MemberCertificationApplicationTests > contextLoads() FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:180 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1773 Caused by: org.hibernate.service.spi.ServiceException at AbstractServiceRegistryImpl.java:276 Caused by: org.hibernate.HibernateException at DialectFactoryImpl.java:191 1 test completed, 1 failed > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///home/ubuntu/memberCertification/build/reports/tests/test/index.html * Try: > Run with --scan to get full insights. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 14s 8 actionable tasks: 8 executed 구글에 검색해본 결과, java: error: invalid flag: --warning-mode=all을 하면 된다는 글을 보고 Preferences > Compiler > java Compiler에 --warning-mode all --stacktrace 입력을 하고 실행을 해봤습니다. java: error: invalid flag: --warning-mode=all가 발생하며 실행이 되지 않습니다. 어떻게 해야 에러를 고칠 수 있을까요 ?
- name: S3에 프로젝트 폴더 업로드하기 run : aws s3 cp --region 과정을 통해서 압축된 tar.gz 파일은 s3에 저장한다고 이해했는데 따로 압축해제하는 과정이 없어서 질문드립니다. run: aws s3 cp --region ... 다음 S3에 프로젝트 폴더 업로드 하는 과정에서 s3에서 해당 파일을 받고 난 후에 알아서 압축해제를 하는건가요??
안녕하세요. 윈도우 powershell 이용해서 이미지 commit 예제를 하던 중 오류가 나서 질문드립니다. 이렇게 docker commit requires at least 1 and at most 2 arguments. 가 발생하는데 어떻게 해결할 수 있을까요? +) git bash로 실행하니까 오류 사라졌습니다!
강사님 안녕하세요 artillery로 부하테스트를 하던중 로컬에서는 성공했지만, 배포환경에서는 정상작동하지 않아 해결법을 찾는중입니다 강의에서는 artillery의 버전이 나오지 않는데요 아마도 제가 설치한 버전과의 차이도 원인이 될 수 있을거라 생각이 되는데, 강의시 설치된 버전을 알 수 있을까요 (강의 너무 재밌게 잘 보고 있습니다!)