묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결쿠버네티스 어나더 클래스 (지상편) - Sprint3
Ingress 에 TLS 추가가 NGINX mTLS 아키텍처와 어떻게 다른지 궁금합니다.
안녕하세요 일프로님, 늘 강의 잘 듣고 있습니다.섹션 4 실습하기 4:13에 나온 tls 설정이 NGINX mTLS 아키텍처와 다른건지 궁금합니다.https://nginxstore.com/blog/kubernetes/nginx-service-mesh-mtls-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98/다른 경우 mTLS 아키텍처로 많이 TLS 설정을 하나요? 어떤 경우에 mTLS 아키텍처를 사용하나요?
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
섹션6:인그레스(ingress) 실습 - 인그레스 통한 접속 시 IP 문제
강의 : 섹션6:인그레스(ingress) 실습위치 : 7분 43초 경안녕하세요.인그레스 서비스를 올린 후, curl 통해서 접속 테스트 시에 127.0.0.1 이 아니라 인그레스 IP로 직접 curl을 해야 접속이 됩니다.실행 ❌ : curl 127.0.0.1:{인그레스 PORT}실행 ⭕ : curl {인그레스 IP}:{인그레스 PORT}아래는 인그레스 정보입니다.root@master0:/home/user01# kubectl get ing NAME CLASS HOSTS ADDRESS PORTS AGE http-go-ingress <none> * 192.168.32.134 80 17h root@master0:/home/user01# kubectl get all -n ingress-nginx NAME READY STATUS RESTARTS AGE pod/ingress-nginx-admission-create-s4j5j 0/1 Completed 0 14h pod/ingress-nginx-admission-patch-f9jwd 0/1 Completed 0 14h pod/ingress-nginx-controller-6b58ffdc97-9d9hd 1/1 Running 0 14h NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/ingress-nginx-controller NodePort 10.97.10.247 <none> 80:30450/TCP,443:30058/TCP 14h service/ingress-nginx-controller-admission ClusterIP 10.106.36.94 <none> 443/TCP 14h NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/ingress-nginx-controller 1/1 1 1 14h NAME DESIRED CURRENT READY AGE replicaset.apps/ingress-nginx-controller-6b58ffdc97 1 1 1 14h NAME COMPLETIONS DURATION AGE job.batch/ingress-nginx-admission-create 1/1 5s 14h job.batch/ingress-nginx-admission-patch 1/1 7s 14h root@master0:/home/user01# curl 192.168.32.134:30450 <html> <head><title>404 Not Found</title></head> <body> <center><h1>404 Not Found</h1></center> <hr><center>nginx</center> </body> </html> root@master0:/home/user01# curl 192.168.32.134:30450/welcome/test Welcome! http-go-56686cfd44-7rsch root@master0:/home/user01# curl 127.0.0.1:30450/welcome/test curl: (7) Failed to connect to 127.0.0.1 port 30450: Connection refused 실습 명령어는 똑같이 따라했으며, 3번을 반복해도 같은 결과이네요..'마스터 노드-인그레스 노드' 간의 포트포워딩? 이 되어야 하는건지, 아니면 제가 빠트린 설정이 있는것인지 알고 싶습니다😢
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
gasbugs/http-go:ingress 와 기존 http-go:v3 와 차이가 있나요?
기존에 있던 http-go:v3를 docker tag http-go:v3 jjcheon1/http-go:ingress docker push jjcheon1/http-go:ingress 한다음에 jjcheon1/http-go:ingress를 사용해서 해봤는데 ingress path '/welcome/test' 가 적용이 안되어서 선생님께서 알려주신 gasbugs/http-go:ingress 를 이미지로 하니까 정상적으로 결과가 보였는데 http-go:ingress는 기존 version과 차이가 있나요? 인그레스를 적용하는 것만으로 http-go를 실행시키는 것으로 이해했는데, 뭔가 실행시키는 프로그램 상에도 차이가 있는지가 궁금합니다.
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
인그레스의 위치
Ingress는 도메인이름을 해석해서, 서브도메인이나 웹요청의 디렉토리를 탐지해서 어디로 서비스를 나누어줄 것인지를 결정한다고 하셨는데, 여기서의 서비스는 clusterIP를 가지고 있는 서비스 객체를 말씀하시는 게 맞나요? LB가 NodePort로 리다이렉션을 하고, Ingress가 Nodeport로 들어온 도메인을 가지고 서비스로 분배를 하는건가요? 자체로는 이해를 했는데, LB와 Ingress의 위치가 어떻게 되는지 궁금합니다.
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
Ingress와 reverse proxy의 차이
nginx를 사용한 인그레스를 학습하던 도중 비슷하게 url에 따라 보낼 서비스를 변경하는 리버스 프록시에 대해 알게 되었습니다. 해당 부분의 차이를 알기 위해 다른 자료를 찾아보았으나 명확히 와닿는 설명이 없었습니다. 목적이나 용도가 굉장히 유사해보이는 두 개의 기술이 어떤 점에서 차이가 있는지나 또는 각각 어떠한 장단점을 지녔는지 알려주시면 감사하겠습니다!
-
미해결초보를 위한 쿠버네티스 안내서
ingress 오류
안녕하세요. Ingress 실습 간 에러가 발생해서 문의 드립니다. ===== # version 1. minikube > minikube version: v1.23.0 2. kubectl > Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.1", GitCommit:"632ed300f2c34f6d6d15ca4cef3d3c7073412212", GitTreeState:"clean", BuildDate:"2021-08-19T15:45:37Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"linux/amd64"} > Server Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.1", GitCommit:"632ed300f2c34f6d6d15ca4cef3d3c7073412212", GitTreeState:"clean", BuildDate:"2021-08-19T15:39:34Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"linux/amd64"} ===== # error 내역 1. kubectl get ingress의 결과에서 address에 minikube ip가 정상적으로 할당되지 않음. 2. kubectl -n ingress-nginx logs -f pod/ingress-nginx-controller 시 아래의 메시지 반복 발생. > E0912 08:02:17.918796 8 leaderelection.go:361] Failed to update lock: configmaps "ingress-controller-leader" is forbidden: User "system:serviceaccount:ingress-nginx:ingress-nginx" cannot update resource "configmaps" in API group "" in the namespace "ingress-nginx" 3. ingress addon을 반복적으로 재활성화 했으나 동일한 에러가 발생했습니다. > 강의 내용과 네임 스페이스가 다르게 설정됨. => 강의 내용: kube-system => 테스트 결과: ingress-nginx 4. 윈도우 환경에서도 발생했고 리눅스 환경에서도 동일한 에러가 발생했습니다. ===== 상기 에러를 조치할 수 있는 방안이 있는지 확인 부탁드리겠습니다.
-
미해결초보를 위한 쿠버네티스 안내서
ingress가 정상 작동 안하는 거 같습니다.
ingress addon하고 활성화가 되었다고 하는데, ingress pod가 보이지 않고 echo-v1.yml, echo-v2.yml 실행해도 아래와 같은 에러가 납니다. Error from server (InternalError): error when creating "echo-v1.yml": Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": an error on the server ("") has prevented the request from succeeding Error from server (InternalError): error when creating "echo-v2.yml": Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io": an error on the server ("") has prevented the request from succeedin 실습 내용
-
미해결초보를 위한 쿠버네티스 안내서
ingress routing 문제
안녕하세요, 지난번에 eks 관련해서 질문드렸던 수강생입니다. 덕분에 EKS에 잘 배포를 하였고 ingress 도 application Load Balancer로 잘 설정을 하였습니다. 그런데, 유독 Chrome 브라우저에서 몇번씩 간헐적으로 ingress에 설정한 라우팅 주소로 들어갈때 아주 오랫동안 로딩이 걸리는 현상(10초~30초)이 발생합니다. 그리고 Safari에서 바로 접속하면 잘 되구요. 설정은 ingress serviceNodePort 를 -> NodePort 80로 -> NodePort는 80을 오픈하고 8000 (웹서버)를 바라보게 설정을 해놓았는데요. 도메인 문제인가 싶어서 도메인도 바꿔보고 HTTPS 문제인가 싶어서 SSL 없이도 접속해보고 다 해보았는데 이 현상이 사라지지 않습니다 ㅠ 구글링해보아도 해당 문제가 잘 나오지 않아서 혹시 이러한 현상에 대해 아는 부분이 있나 궁금하여 질문을 드립니다 ㅠ 아래는 ingress yaml 파일입니다. apiVersion: extensions/v1beta1 kind: Ingress metadata: name: ingress annotations: kubernetes.io/ingress.class: alb alb.ingress.kubernetes.io/scheme: internet-facing alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 80}, {"HTTPS": 443}]' alb.ingress.kubernetes.io/actions.ssl-redirect: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}' alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:ap-northeast-{}:certificate/{} spec: rules: - http: paths: - path: /* backend: serviceName: ssl-redirect servicePort: use-annotation - path: /* backend: serviceName: backend-app-nodeport servicePort: 80 찾다보니 이 문제인 것 같기도 하고.. 정확한 해결책을 잘 모르겠네요 ㅠ 쿠버네티스로 처음 배포를 하다보니 헤매는 부분이 많네요. https://stackoverflow.com/questions/35523421/aws-elastic-load-balancing-seeing-extremely-long-initial-connection-time/55777470#55777470 (++추가 수정) 해당 질문 답변을 보고 ALB 서브넷 중 하나가 Private으로 설정되어있어서 Public 으로 일단 바꿔보았습니다. 일단 이걸로 해결이 되었으면 좋겠네요 ㅠ https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.1/ 이 사이트를 참고해서 애플리케이션 로드밸런서를 만들었는데요. 서브넷이나 이런 것들은 자동으로 설정이 되는 것 같아서 이런 것들은 어떻게 컨트롤할 수 있을지도 궁금하네요.