안녕하세요 고수님들 현재 쿠버네티스 공부를 하고있는데 막히는 부분이 있어서 고수 선배님들의 도움을 받고자 질문올립니다. 현재 조훈님의 책으로 google gcp에 vm 3대를 (마스터1대, 워커2대)로 학습환경을 만들어 진행중입니다. 잘 공부중인데 막히는 부분이 ingress-nginx 컨트롤러 서비스를 구성하는데 잘 안되어 질문올려봅니다. 현상 root@k8s-m:/home/rsa-key-20220321# kubectl apply -f /home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-nginx.yaml namespace/ingress-nginx created configmap/nginx-configuration created configmap/tcp-services created configmap/udp-services created serviceaccount/nginx-ingress-serviceaccount created deployment.apps/nginx-ingress-controller created limitrange/ingress-nginx created unable to recognize "/home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-nginx.yaml": no matches for kind "ClusterRole" in version "rbac.authorization.k8s.io/v1beta1" unable to recognize "/home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-nginx.yaml": no matches for kind "Role" in version "rbac.authorization.k8s.io/v1beta1" unable to recognize "/home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-nginx.yaml": no matches for kind "RoleBinding" in version "rbac.authorization.k8s.io/v1beta1" unable to recognize "/home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-nginx.yaml": no matches for kind "ClusterRoleBinding" in version "rbac.authorization.k8s.io/v1beta1" root@k8s-m:/home/rsa-key-20220321# kubectl get pods -n ingress-nginx NAME READY STATUS RESTARTS AGE nginx-ingress-controller-668959df88-8hmt6 0/1 CrashLoopBackOff 35 (6s ago) 101m root@k8s-m:/home/rsa-key-20220321# kubectl get pod -n ingress-nginx NAME READY STATUS RESTARTS AGE nginx-ingress-controller-668959df88-8hmt6 0/1 CrashLoopBackOff 35 (25s ago) 101m root@k8s-m:/home/rsa-key-20220321# kubectl describe pod nginx-ingress-controller-668959df88-8hmt6 -n ingress-nginx Name: nginx-ingress-controller-668959df88-8hmt6 Namespace: ingress-nginx Priority: 0 Node: k8s-w3/10.178.0.5 Start Time: Wed, 30 Mar 2022 06:07:05 +0000 Labels: app.kubernetes.io/name=ingress-nginx app.kubernetes.io/part-of=ingress-nginx pod-template-hash=668959df88 Annotations: cni.projectcalico.org/containerID: fab04986c5e06c07191e376ab04b5ebc7c66ba3a92e4ee393c6dfa01bedbb38d cni.projectcalico.org/podIP: 10.233.84.34/32 cni.projectcalico.org/podIPs: 10.233.84.34/32 kubernetes.io/limit-ranger: LimitRanger plugin set: cpu, memory request for container nginx-ingress-controller prometheus.io/port: 10254 prometheus.io/scrape: true Status: Running IP: 10.233.84.34 IPs: IP: 10.233.84.34 Controlled By: ReplicaSet/nginx-ingress-controller-668959df88 Containers: nginx-ingress-controller: Container ID: containerd://208fdba282a51fc6b5f3b5e2fbb0e660e0f99622547e1ce8ee63fe834b5e7571 Image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0 Image ID: quay.io/kubernetes-ingress-controller/nginx-ingress-controller@sha256:b312c91d0de688a21075078982b5e3a48b13b46eda4df743317d3059fc3ca0d9 Ports: 80/TCP, 443/TCP Host Ports: 0/TCP, 0/TCP Args: /nginx-ingress-controller --configmap=$(POD_NAMESPACE)/nginx-configuration --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services --udp-services-configmap=$(POD_NAMESPACE)/udp-services --publish-service=$(POD_NAMESPACE)/ingress-nginx --annotations-prefix=nginx.ingress.kubernetes.io State: Waiting Reason: CrashLoopBackOff Last State: Terminated Reason: Error Exit Code: 1 Started: Wed, 30 Mar 2022 07:47:25 +0000 Finished: Wed, 30 Mar 2022 07:48:05 +0000 Ready: False Restart Count: 35 Requests: cpu: 100m memory: 90Mi Liveness: http-get http://:10254/healthz delay=10s timeout=10s period=10s #success=1 #failure=3 Readiness: http-get http://:10254/healthz delay=0s timeout=10s period=10s #success=1 #failure=3 Environment: POD_NAME: nginx-ingress-controller-668959df88-8hmt6 (v1:metadata.name) POD_NAMESPACE: ingress-nginx (v1:metadata.namespace) Mounts: /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-6f8wg (ro) Conditions: Type Status Initialized True Ready False ContainersReady False PodScheduled True Volumes: kube-api-access-6f8wg: Type: Projected (a volume that contains injected data from multiple sources) TokenExpirationSeconds: 3607 ConfigMapName: kube-root-ca.crt ConfigMapOptional: <nil> DownwardAPI: true QoS Class: Burstable Node-Selectors: kubernetes.io/os=linux Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s node.kubernetes.io/unreachable:NoExecute op=Exists for 300s Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Started 46m (x22 over 101m) kubelet Started container nginx-ingress-controller Warning DNSConfigForming 6m34s (x459 over 101m) kubelet Search Line limits were exceeded, some search paths have been omitted, the applied search line is: ingress-nginx.svc.cluster.local svc.cluster.local cluster.local default.svc.cluster.local asia-northeast3-a.c.master-plane-344801.internal c.master-plane-344801.internal Warning Unhealthy 92s (x247 over 101m) kubelet Readiness probe failed: HTTP probe failed with statuscode: 500 root@k8s-m:/home/rsa-key-20220321# kubectl apply -f /home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-config.yaml error: error validating "/home/rsa-key-20220321/_Book_k8sInfra/ch3/3.3.2/ingress-config.yaml": error validating data: [ValidationError(Ingress.spec.rules[0].http.paths[0].backend.service.port): invalid type for io.k8s.api.networking.v1.ServiceBackendPort: got "string", expected "map", ValidationError(Ingress.spec.rules[0].http.paths[1].backend.service.port): invalid type for io.k8s.api.networking.v1.ServiceBackendPort: got "string", expected "map", ValidationError(Ingress.spec.rules[0].http.paths[2].backend.service.port): invalid type for io.k8s.api.networking.v1.ServiceBackendPort: got "integer", expected "map"]; if you choose to ignore these errors, turn validation off with --validate=false ㅠㅠ 초보이다 보니 너무 힘들어서 도움 부탁드립니다. 미리 감사드립니다.
# Info 강의 업로드 연도(2021) 와 수강 연도(2022) 사이에 TypeORM 의 버전이 달라서, Repository.findOne() 메서드의 구성이 달라진 것 같다고 생각합니다. 강의 대로 코드를 작성하면 후술할 에러 가 발생하는데, 해당 부분을 해결하고 나서, 다른 수강생 분들 도 이런 문제를 겪을까 생각되어서 따로 글로 남기게 되었습니다. ## 문제 세 줄 요약 1. fineOne( id) 를 하면 에러가 발생 2. 관련 레퍼런스가 없어서 TypeORM docs 확인 3. fineOneBy({id}) 로 에러 해결 (2022-03-30) 자세한 내용은 ### 해결방법, ### 참고문서, ### 초기질문 참고해주세요. 깃 : unchaptered/22-03-nestjs-board: Nest.JS (github.com) ### 해결방법 2022년 3월 30일 기준으로, this.boardsRepository.findOne( id ); 위와 같이 입력을 했는데 에러가 발생했다면, 해당 부분을 다음의 코드로 교체해서 해결할 수 있습니다. this.boardsRepository.fineOneBy({ id }); ### 참고문서 아래 페이지에서 Ctrl + F 로 fineOne 혹은 fineOneBy 를 검색해서 확인하시면 됩니다. TypeORM - Amazing ORM for TypeScript and JavaScript (ES7, ES6, ES5). Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms. ### 초기 질문 boards.service.ts 의 getBoardById() 에서 this.boardsRepository.fineOne(id); 를 하면 id 에 붉은 경고가 다음과 같이 발생하고 있습니다. 혹시 해당 부분이 왜 문제가 되는지 알 수 있을까요? 정크 데이터까지만 푸쉬 해놓았지만, node_module 버전 문제일까 싶어서 깃 허브 링크도 최하단에 올려놓겠습니다. 위의 에러가 발생하는 해당 코드입니다. async getBoardById ( id : number ) : Promise < Board > { const found = await this . boardsRepository . findOne (id) ; if ( ! found) throw new NotFoundException ( ` Can't find Board by ${ id } ` ) ; return found ; } 엔티티 import { BaseEntity , Column , PrimaryColumn , PrimaryGeneratedColumn } from " typeorm "; import { BoardStatus } from " ./board-status.enum "; export class Board extends BaseEntity { @ PrimaryGeneratedColumn () id : number ; @ Column () title : string ; @ Column () description : string ; @ Column () status : BoardStatus ; } baords.repository.ts import { EntityRepository , Repository } from " typeorm "; import { Board } from " ./entity/board.entity "; @ EntityRepository (Board) export class BoardsRepository extends Repository < Board > { } 깃허브 : unchaptered/22-03-nestjs-board: Nest.JS (github.com)
안녕하세요 강의를 참고하며 현재 개인 프로젝트 웹 사이트를 제작하고 있는 수강생입니다. 다름이 아니라 제작하다가 일주일동안 정말 해결 안 되는 난제가 있어서 질문 드립니다.. 도와주세요 ㅠㅠ a 태그를 이용해서 해당 링크로 이동하는 부분을 작업하고 있는데 그 url이 매개변수 변화가 없어서 어떻게 작업을 해야 될 지 모르겠습니다. 해당 url은 https://www.g2b.go.kr:8092/sm/ma/mn/SMMAMnF.do 나라장터 종합쇼핑몰 링크인데요, 검색해보시면 확인하실 수 있겠지만 검색결과에 따라 url이 변화되지 않고 쭉 저 url 그대로입니다.. 저는 (예를들어) 간판이 검색 결과로 뜨는 url로 바로 이동할 수 있게 하고 싶은데 매개변수 변화가 없다보니 저 url 그대로 a 태그에 넣게 되니까 페이지 이동하면 간판 검색 결과 페이지가 아닌 나라장터 종합쇼핑몰 메인 화면이 나오더라고요.. 어떻게 해야 제가 원하는 값을 검색하여 결과가 나온 페이지로 나올 수 있게 url을 작업할 수 있을까요 url에 어떤 파라미터, 매개변수 코딩을 해야 되는지 알려주세요 ㅠㅠ + location.search해도 빈 문자열이 나옵니다. + 전체 커뮤니티에 올렸는데 타강의 수강생도 많은 만큼 바로 해결이 되지 않아 해당 강의 커뮤니티로 문의드려요 ㅠㅠ 강사님 도와주세요..!
People need to find out how do you call Facebook about a problem . Contact with the support team is possible by calling them directly if the phone number is available. In addition to these, you can take the assistance of the messaging system so that a hassle-free source may be created for the solution aspect. Different kinds of issues may appear with the social media platform but the technical support team knows how to deal with those.
질문이 있습니다. 라우터 네비게이션 적용시 깜빡거리는 현상이 발생합니다. 강의 화면에도 잘 보시면 두번 깜빡거립니다. 클릭하는 순간 이미 데이터가 나오고 잠깐 사라졌다가 다시 나옵니다. 강사님이 강의하시는 영상에도 그렇게 나옵니다. 오히려 라우터네비게이션이 없을 때는 스피너와 함께 정상처럼 나오는데 이 문제는 transition 때문에 그런 것 같긴 하네요. transition 2s 로 늘려놓고 하면 정확히 더 그렇게 깜빡임이 확실히 구현되네요. 1. 데이터가 출력됐다가 2. 스피너가 종료되고 3. 다시 그 이후에 트랜지션이 동작되어 사라졌다가 4. 다시 데이터가 출력되어 위의 과정을 연속적으로 보면 데이터가 두번 출력되는 것처럼 깜빡입니다. network에 slow 3g로 안하더라도.. 그렇다면 이건 transition을 사용하지 않고 빼야하나요? 아님 다른 방법이 있을까요? 강의 영상 돌려보시면 " [실습] 라우터 네비게이션 가드 실습 및 스피너 종료 시점 변경" 영상 보시면 클릭하는 순간 데이터가 나왔다가 아주 찰나에 하얗게 되었다가 다시 나옵니다.
강의 재미있게 듣고있는 학생입니다. 질문이 있어서 질문드립니다.. 1. (lockThreadId == LThreadId) 이게 거짓이면 lockThreadId는 항상 0이 맞나요? 2. WriteLock이나 ReadLock에서 expected를 정의하는 부분이 while문 밖으로 나가도 상관이 없을까요? 감사합니다.
안녕하세요! 강의를 듣다가 중복회원 검증 부분에서 궁금한점이 생겨서 질문드립니다. 강의에서는 중복회원검증을 findByName을 통해서 조회를 하는데 findOne 메소드를 이용해서 key값인 id를 통해 조회를 해도 상관이 없을것 같다고 생각했습니다. 예를들어 중복회원은 결국 중복이 되는 한명의 회원만 조회를 하면 되니까 저렇게 id값을 조회해서 null이 아닐때 exception을 떨궈주면 되지 않을까라는 생각이 들었습니다. 제가 생각한게 맞는지 궁금합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 올려주신 파일을 열어봤는데 저렇게 뜨고 열리지 않습니다.. 딱히 뭐 만진건 없고 그냥 perfectguide를 user밑에 저장하고 주피터 가서 열었을 뿐입니다.. 왜 이렇게 뜨는건가요? 어떻게 해야 정상적으로 뜰수 있게 할수있을까요