24년도에 수업 조금 들으면서 따라하다가 이번에 다시 마음 먹고 따라하고 있는데 설치 너무 어렵네요 ㅜㅜ [root@k8s-master ~]# k get pods -A E0217 14:17:02.299033 4108 memcache.go:265] couldn't get current server API group list: Get "https://192.168.56.30:6443/api?timeout=32s": dial tcp 192.168.56.30:6443: connect: connection refused E0217 14:17:02.300406 4108 memcache.go:265] couldn't get current server API group list: Get "https://192.168.56.30:6443/api?timeout=32s": dial tcp 192.168.56.30:6443: connect: connection refused E0217 14:17:02.300621 4108 memcache.go:265] couldn't get current server API group list: Get "https://192.168.56.30:6443/api?timeout=32s": dial tcp 192.168.56.30:6443: connect: connection refused E0217 14:17:02.302316 4108 memcache.go:265] couldn't get current server API group list: Get "https://192.168.56.30:6443/api?timeout=32s": dial tcp 192.168.56.30:6443: connect: connection refused E0217 14:17:02.304096 4108 memcache.go:265] couldn't get current server API group list: Get "https://192.168.56.30:6443/api?timeout=32s": dial tcp 192.168.56.30:6443: connect: connection refused The connection to the server 192.168.56.30:6443 was refused - did you specify the right host or port?
12. 📝 빠르고 쉽게 설치하는 방법 ( 💻 실습) 보면서 설치하고 있는데 vagrant plugin install vagrant-vbguest vagrant-disksize 이게 안되서 여기 게시글과 LLM에 물어보니 ssl, 무시 http요청을 시도해봤는데 안됐습니다 플러그인을 설치 안해서 그런지 vagrant up 명령어로 실행이 안되는것 같습니다. 아래는 명령어와 오륜 내용 입니다. vagrant plugin install vagrant-vbguest Installing the 'vagrant-vbguest' plugin. This can take a few minutes... Vagrant failed to load a configured plugin source. This can be caused by a variety of issues including: transient connectivity issues, proxy filtering rejecting access to a configured plugin source, or a configured plugin source not responding correctly. Please review the error message below to help resolve the issue: IO::TimeoutError: Failed to open TCP connection to gems.hashicorp.com:443 (Blocking operation timed out!) ( https://gems.hashicorp.com/specs.4.8.gz ) Source: https://gems.hashicorp.com/
depl_svc.yml을 apply 했는데 계속 pod이 CrashLoopBackOff 상태가 되어서 log를 확인해보려 했더니 exec format error가 뜹니다. 현재 맥북(M2)을 사용중인데 exec format error 이 오류는 CPU 아키텍처 불일치 문제 때문이라고 하는데 어떻게 해결해야 할까요?
강사님께서 잘 만들어주신 강의 자료를 그대로 실행해서 실습하는 것도 좋겠지만, 하나 하나 최신 버전으로 설치 구성을 해보면서 섹션 19까지 오게 되었습니다. (그래서 버전이 달라서 안되는 부분은 죄송해서 질문도 못드렸어요.. ^^;) 가장 어려웠던 부분은 loki의 promtail이 사라지고 alloy로 바뀌면서 설치 후 구성해주는 부분과 Image Updater가 annotation 기반에서 CRD 기반으로 바뀐 부분 같아요. 강사님께서 알려주신 annotation을 Image updater 1.0 이후 버전에 적용하는 경우 아래의 CRD를 apply 하면 동일하게 동작합니다. 현재 버전: 1.0.4 (name strategy가 alphabetical으로 변경되었어요.) apiVersion: argocd-image-updater.argoproj.io/v1alpha1 kind: ImageUpdater metadata: name: api-tester-2232 spec: applicationRefs: - images: - alias: <alias> commonUpdateSettings: allowTags: regexp:^1.1.1-[0-9]{6}.[0-9]{6}$ updateStrategy: alphabetical imageName: <Username>/api-tester namePattern: api-tester-2232 namespace: <argo namespace>
안녕하세요. 섹션 18에서 values-dev.yaml과 같은 파일을 만들면, values.yaml은 자동으로 읽어온다고 설명해주셨는데, 명령어에는 values-dev.yaml만 명시했는데 자동으로 읽어오는 values.yaml의 조건이 있나요? 가령, 같은 디렉토리에 있어야 된다던지, 모든 values 파일은 무조건 소문자 values로 시작하고 values.yaml 파일은 반드시 존재해야하는 그런 규칙이 있나 해서 여쭤봅니다. 그리고 helm을 통해서 service를 생성할 경우 컨테이너 포트의 이름이 http이고 서비스 포트의 이름도 동일한 http이던데요, 이 둘이 같을 때 문제가 되는 상황은 없는지 궁금합니다. apiVersion: v1 kind: Service metadata: name: api-tester-2223 labels: helm.sh/chart: api-tester-0.1.0 app.kubernetes.io/name: api-tester app.kubernetes.io/instance: api-tester-2223 app.kubernetes.io/version: "v1.0.0" app.kubernetes.io/managed-by: Helm spec: type: NodePort ports: - port: 80 targetPort: http protocol: TCP name: http nodePort: 32223 selector: app.kubernetes.io/name: api-tester app.kubernetes.io/instance: api-tester-2223 containers: - name: api-tester securityContext: {} image: "1pro/api-tester:v1.0.0" imagePullPolicy: Always ports: - name: http containerPort: 8080 protocol: TCP
안녕하세요. 강사님. 쿠버네티스 강의를 신청했는데 뜻밖에 평소에 미지의 영역이던 CI/CD까지 함께 배워서 행복한 연말을 보내고 있습니다. jenkins 파이프라인에서 궁금한 점이 생겨서 문의를 드립니다. 스크립트에는 아래와 같이 경로 지정이 되어 있던데 이 명령은 어느 경로에서 실행이 되는 지 궁금합니다. jenkins 계정의 home에는 보이지 않아서요. stage('K8S Deploy') { steps { // 쿠버네티스 배포 sh "kubectl apply -f ./${CLASS_NUM}/deploy/k8s/namespace.yaml" sh "kubectl apply -f ./${CLASS_NUM}/deploy/k8s/configmap.yaml" sh "kubectl apply -f ./${CLASS_NUM}/deploy/k8s/secret.yaml" sh "kubectl apply -f ./${CLASS_NUM}/deploy/k8s/service.yaml" sh "kubectl apply -f ./${CLASS_NUM}/deploy/k8s/deployment.yaml" } }
안녕하세요. 먼저 깊은 경험에서 우러나오는 지식이 공유해주셔서 감사를 드립니다. 질문 내용은 아래와 같습니다. Selector에는 object type 같은 속성이 없던데, 그럼 예를 들어 pvc는 무조건 pv만 select 가능하고 replicaset은 pod만 select가 가능해야 할 것 같아서요.. 예외는 없을까요?
ERROR: failed to build: failed to solve: openjdk:17-jdk-alpine: failed to resolve source metadata for docker.io/library/openjdk:17-jdk-alpine: docker.io/library/openjdk:17-jdk-alpine: not found FROM eclipse-temurin:17-jdk-alpine AS stage1 <- eclipse jdk로 수정 후 정상 작동하였습니다.
Container 기술 관련해서 조사/정리 하는 과정에서 chroot는 파일 격리 측면에서의 기술이며 유저 격리나 네트워크 격리는 chroot가 아니라 각각 user namespace, NET namespace가 격리 기술과 관련 있는것으로 확인되는데. 유저 격리와 네트워크 격리가 namespace쪽으로 분류되는게 맞는걸까요??
포트포워딩 하는 포트가 겹쳐서 그런지 아래 에러가 나오면서 기존 마스터 노드 vm이 기동되지 않습니다. NAT#0: configuration error: failed to set up redirection of 2222 to 22. Probably a conflict with existing services or other rules (VERR_NAT_REDIR_SETUP). 저의 경우는 vm 우클릭 > 설정 > 네트워크 > 어댑터1 > 포트 포워딩(P) > 호스트 포트를 2223으로 변경했습니다. --> 이후에 이것저것 확인하다 보니 그냥 포트 포워딩을 지워도 될 것 같습니다. TL;DR 포트 포워딩은 하지 않아도 된다. 단 NAT은 켜져있어야 한다(아니면 설정을 많이 바꿔야해서 그렇게까지? 하고 싶진 않네요... 하지만 폐쇄망에서 사용하게 될 경우를 고려한다면 해보는 것도 괜찮을 수 있을것도 같습니다.) 아래는 추가적으로 생각해본 사항이고 수업이랑?은 크게 관련 없고 수업 환경 세팅과 관련된 질문입니다.. 혹시 맞는지 확인차 질문드립니다. 포트 포워딩을 해야하는 이유가 있을까요? 호스트 전용 어댑터로 이미 네트워크가 구축이 되어있고 NAT은 외부에서 자료를 받는 용도로만 사용하고 따로 외부 호스트가 접근할 일이 없을것 같은데 굳이 포트 포워딩 설정이 들어가야하는 걸까요?? (실제로 의문이 들어 포트포워딩 내용을 모두 삭제했으며 VM 기동 자체에는 문제가 없습니다.) 이미 다운로드 할 것을 다 한 서버는 NAT이 없어도 상관 없지 않을까? 라는 생각에 NAT 네트워크를 끄고 기동해 보았는데 몇몇 파드들이 기동에 문제가 생기더군요(dashboard, grafana, etc...) 이미 이미지를 다운로드해서 파드 생성시에도 캐시된 이미지를 사용하면 문제가 없을 거라고 생각했고 실제로 아래 명령으로 확인 시 캐시된 이미지들이 있었음을 확인했습니다. 하지만 파드 기동에는 문제가 생기더군요... sudo crictl images 2번의 내용을 좀 더 확실하게 확인해보고 싶어 여러가지 내용들을 확인하던 중 coredns가 /etc/resolv.conf 의 내용을 참고하는것을 확인했고 여기에 nameserver가 10.0.2.3 이렇게 NAT의 IP 대역대로 설정 되어 있음을 확인했습니다. 더 깊이 확인하는건 네트워크 관련 영역인것 같아 여기서 마치며 결과는 coredns같은 여러 kube-system이나 calico 관련 파드들이 NAT 네트워크 연결 설정이 되어있고 실질적으로 해당 네트워크를 사용하지 않더라도 연결을 시도하다가 파드 기동에서 문제가 생겼음을 확인했습니다.
해당 강의에서 hpa에서 behavior 부분을 삭제를 하려고 할 시 에러가 발생했습니다. 아래 명령은 기존의 강의 실습 자료에서 제공된 hpa 수정 관련 코드입니다. kubectl edit -n anotherclass-123 hpa api-tester-1231-default 위 명령으로 hpa의 yaml 내용을 직접 수정하여 behavior 부분을 삭제 후 저장을 할 시 저장이 되지 않습니다. 에러 코드는 다음과 같습니다. error: Edit cancelled, no valid changes were saved. 아래 명령으로 behavior 필드 부분을 제거하면 삭제가 가능했습니다. kubectl patch hpa api-tester-1231-default -n anotherclass-123 --type=json -p='[{"op":"remove","path":"/spec/behavior"}]' 처음에는 들여쓰기 같은 부분을 잘못 건드렸나 해서 여러번 변경을 시도해 보았는데 전부 변경사항이 반영되지 않더라구요...?(이유를 자세하게 모르겠네요) 일단 바로 위에 있는 명령어로 필드 부분만 삭제하면 들여쓰기 같은 문제는 발생하지 않으니 혹시 문제가 있다면 이렇게 해보시면 좋을것 같습니다.
안녕하세요 loki 관련 실습중에 Home > Explore 에서 Label browser를 통해서 로그 조회 시 강의 영상에서 처럼 app 1.2.2.1 을 선택시 다음과 같은 문구가 나옵니다. 이전까지의 진행상황은 모두 정상적으로 따라왔는데 여기서 이렇게 나옵니다. 무슨 문제가 있는걸까요?
안녕하세요 Self-Healing 테스트 중 Memory leak 을 위해서 다음 URL 호출 시 500 에러가 발생합니다. curl 192.168.56.30:31221/memory-leak <Error> {"timestamp":"2025-11-21T01:35:50.504+00:00","status":500,"error":"Internal Server Error","path":"/memory-leak"} </Error> 이후에 k8s Dashboard로 확인 시 영상과 같이 파드가 재시작 되는게 아니라 memory 사용량이 증가하고 파드가 4개까지 늘어나는데 다시 파드가 줄어들가나 메모리 사용량이 줄어들거나 하지를 않습니다.