묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결대세는 쿠버네티스 [초급~중급]
물리서버 자체에 쿠버네티스 설치 관련 문의 드립니다.
안녕하세요, 강사님. 수업 잘 듣고 있습니다. 제가 남는 sever 한 대 자체를 리눅스 서버로(centos7) 구성하는 중에 있습니다. (강사님 강의자료 설치 Case 1) [1] ip 관련 질문 제 server은 lan선으로 연결되며, 128 대역을 사용하고 있습니다. (할당 해줄 IP(해당 대역 내 사용할 ip)는 128. 134.233.250 입니다.) 그렇다면 VM 설치 시 해당 부분을 128.134.233.250, 128.134.233.1 로 바꿔주고 1. Test this media & install CentOS 7 2. Language : 한국어 3. Disk 설정 [시스템 > 설치 대상] - [기타 저장소 옵션 > 파티션 설정] 파티션을 설정합니다. [체크] 후 [완료] - 기존에 파티션이 설정되어 있으면 하나씩 선택해서 [-] 버튼으로 삭제 - 새로운 CentOS 설치 > 여기를 클릭하여 자동으로 생성합니다. [클릭] - /home [클릭] 후 용량 30 GiB로 변경 [설정 업데이트 클릭] - / [클릭] 후 /home에서 뺀 GiB 만큼 추가해서 GiB 수정 후 [설정 업데이트 클릭] - [완료], [변경 사항 적용] 4. 네트워크 설정 [시스템 > 네트워크 및 호스트명 설정] - 호스트 이름: physical-host [적용] - 이더넷 [켬], [설정], [IPv4 설정] 탭 - 방식: 수동으로 선택, - [Add] -> 주소: 128.134.233.250, 넷마스크 : 255.255.255.0, 게이트웨이: 128.134.233.1, DNS 서버 : 8.8.8.8 [저장][완료] 5. 설치시작 6. [설정 > 사용자 설정] ROOT 암호 설정 7. 설치 완료 후 [재부팅] (재부팅 시에는 USB 빼는거 잊지 마세요) VM 설치 시에도 1. Test this media & install CentOS 7 2. Language : 한국어 3. Disk 설정 [시스템 > 설치 대상] - [기타 저장소 옵션 > 파티션 설정] 파티션을 설정합니다. [체크] 후 [완료] - 새로운 CentOS 설치 > 여기를 클릭하여 자동으로 생성합니다. [클릭] - /home [클릭] 후 용량 5.12 GiB로 변경 [설정 업데이트 클릭] - / [클릭] 후 140 GiB 변경 후 [설정 업데이트 클릭] - [완료], [변경 사항 적용] 4. 네트워크 설정 [시스템 > 네트워크 및 호스트명 설정] - 호스트 이름: k8s-master [적용] - 이더넷 [켬], [설정], [IPv4 설정] 탭 - 방식: 수동으로 선택, - [Add] -> 주소: 128.134.233.x, 넷마스크 : 255.255.255.0, 게이트웨이: 128.134.233.1, DNS 서버 : 8.8.8.8 [저장][완료]5. 설치시작 6. [설정 > 사용자 설정] ROOT 암호 설정 7. 설치 완료 후 [재부팅] 로 바꾸면 될까요..? 아니면 vm은 상관 없을까요? 만약 해당 대역(128.134.233.x)로 할당 받는다면, it팀 쪽에 문의를 넣어야 하는 상황이라 여쭤봅니다. [2] centOS 설치 관련 질문 (+ 설치 과정 상에서 black screen 오류가 계속 나오고 있습니다. 이건 더 구글링 해 볼게요!) 설치 시 이더넷 연결 버튼이 잡히지(뜨지) 않습니다. 혹시 제가 브리지 모드를 추가한 다음 ipv4 설정 탭에 가서 주소, 넷마스크, 게이트웨이, dns를 입력해도 될까요?
-
해결됨대세는 쿠버네티스 [초급~중급]
Dashboard에서 pod를 생성하는데 아래와 같은 에러가 나고 있습니다
안녕하세요. Dashboard에서 pod를 생성하는데 아래와 같은 에러가 나고 있습니다. 글 중에 https://www.inflearn.com/questions/305007 를 찾아서 그대로 했는데도 역시 동일한 에러가 나는 군요. 참고로 저는 Ubuntu 환경입니다. 그리고, kubetm/p8000아닌가요? Docker hub에 그렇게 보이더군요. --아래-- Deploying file has failed the server does not allow this method on the requested resource
-
미해결쉽게 시작하는 쿠버네티스(v1.25)
super putty 실행 시 커넥션 에러
super putty 설치하고 파일 받아와서 m-k8s 실행하면 커넥션 에러가 뜨는데 왜 그런 걸까요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 실습이 안되는 경우 안되는 부분과 함께 관련 상황을 파악할 수 있는 화면 및 수행 내용등을 함께 주시면 답변에 도움이 됩니다. * 중요 * Vagrant와 관련한 질문은 자주 묻는 질문을 통해서도 해결이 어려운 경우에는 도움을 드리기가 매우 어렵습니다. 자주 묻는 질문에도 기입해두었지만, 개개인의 환경에 따른 차이로 생기는 문제들이기 때문에 개인의 환경을 제가 모두 파악할 수가 없습니다. 오프라인 강의라면 이 부분이 가능하지만 온라인 강의의 한계로 인한 부분이기 때문에 진행자체가 매우 어려워서 강의에 가치를 느끼지 못하신다면, 인프런 환불 요건(진도율 7%, 구매 1주일 이내)에 따라 환불을 도와주실 것이니 인프런에 문의해 주세요. 이 부분에 대해서 이해를 부탁드립니다. << 참고 >> 호스트 성능과의 연관성 똑같은 코드, WIFI 등 같은 환경에서도 'vagrant up'을 실행해도 아래와 같이 다른 결과가 나옵니다. >> Mac에서는 문제 없이 동작 (한번도 문제된 적 없음)>> 윈도우에서는 timeout 등 여러 가지 오류가 발생- 질문에 상당한 노력 및 고민이 담겨지지 않은 경우 답변하기 매우 어렵습니다. 어려웠던 점을 담아서 질문 부탁드립니다. - 질문 답변은 1-2주에 한 번 진행하고 있습니다. 현업의 업무로 바로 답변하는 것이 매우 어려운 점 너른 이해를 부탁드립니다. * 참고 * 강의에서 다루지 않는 쿠버네티스 범위를 넘는 질문은 쿠버네티스 오픈 채팅 및 유저 그룹을 이용하는게 도움이 될 수 있습니다. (https://open.kakao.com/o/gxSooElb {암호: kubectl}- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결대세는 쿠버네티스 [초급~중급]
LB 관련 질문
안녕하세요. 다른 질문에서LB 요청시 LB > NodePort > iptables 라고 되어있는데 물론 CNI 마다 다르겠지만 예를들어 제가 azure 를사용하고있고 azure 에 Public IP 를 External IP 로할당한 LB 서비스를만들었습니다. 이때의 정보가 아래와같더라구요.External IPs : Azure IP ClusterIP : 23.47.151.147Ports : 80:30048/TCPEndpointsPod IP 10.111.119.47Pod Port: 3000라고되어있는데, 저위에 Cluster IP 는 Node 의 IP 인지 Service IP 인지가 궁금합니다. 만약 Node 의 IP 라고한다면AzureIP:80 > 23.47.151.147:30048(NodePort) > Iptables 를통해 Endpoint 의 10.111.119.47:3000 으로 요청하게 되는것인가요??
-
해결됨대세는 쿠버네티스 [초급~중급]
pod 생성과정에 대한 질문
안녕하세요. 강의 너무 잘 듣고있습니다. 강의내용 복습중 이해가 부족한 부분에 대해 질문 올립니다. pod생성 과정이 아래 처럼 생성이 된다는 걸로 이해를 했습니다. 1. client가 kubectl를 이용해 pod 생성 요청 2. api server가 request 받음 3. etcd에 pod 정보 저장 4. scheduler가 api server를 watch하고 있음으로 pod 생성 요청이 들어오면 api server가 watch하고 있는 scheduler에게 통지 5. schduler가 최적의 노드를 판별해 api server를 통해 etcd에 정보 업데이트 6. 각 노드의 kubelet이 api server를 watch하고 있음으로 pod의 노드정보 업데이트 되면 apiserver가 kubelet에게 통지 7. kubelet은 container runtime인 docker에게 컨테이너 생성 요청 .... 그런데 여기서 궁금한점은 pod lifecycle 강의에서 pod status에 대해서는 pod가 생성될때 Initialized 실행을 하고나서 PodScheduled 된다고 설명해주셨는데 해당 강좌에서는 PodScheduled 된 후에 container가 생성이 되는것 같아 질문 올립니다. 순서가 어떻게 되는지 설명 해주시면 감사하겠습니다!
-
미해결쉽게 시작하는 쿠버네티스(v1.25)
vagrant up 에러
The IP address configured for the host-only network is not within the allowed ranges. Please update the address used to be within the allowed ranges and run the command again. Address: 192.168.1.10 Ranges: 192.168.56.0/21 Valid ranges can be modified in the /etc/vbox/networks.conf file. For more information including valid format see: https://www.virtualbox.org/manual/ch06.html#network_hostonly --------------------------------------------------------------- vagrant up 명령어 실행 시 위와 같은 에러가 발생합니다. 혹시 networks.conf file파일을 생성해주면 되는건가요?. 저 위치에 해당하는 vbox 폴더가 없는데, 어떤 이유로 찾는건지도 궁금합니다. 감사합니다.
-
미해결그림으로 배우는 쿠버네티스("v1.22"-v1.24, v1.27~)
kubesystem에서 컨트롤러 부분이 crashloopbackoff관련 질문
안녕하세요 강사님 강의 열심히 시청중인 수강생입니다 kube-system쪽에서 kube-controller-manager-m-k8s, kube-scheduler-m-k8s 이 두 부분이 crashloopbackoff가 나서 질문드립니다. 중간 중간에 계속 접속이 멈춰서 강의 따라가고 싶은데 멈춰서 스트레스 받네요 ㅠㅠ 어떤 문제인지 꼭 알고 싶습니다
-
해결됨대세는 쿠버네티스 [초급~중급]
LB에서 Pod까지의 Flow 관련 질문
안녕하세요 질문이 있어 글 올립니다. LB를 생성 후 외부 IP를 부여 받은 상황에서 client가 LB의 외부IP:80으로 요청을 하면 traffic flow가 LB:80 > NodeIP:NodePort > Iptables > DNAT > Pod 로 도착하는게 맞나요? (kube-proxy 모드는 iptables 라고 가정했을시) 아니면 CNI PlugIN에 따라서 이 부분도 달라지나요? GKE에서 확인했을떄 GCP에서 제공하는 Firewall에서는 NodePort관련해서 Open되어있지 않은상황이며 (open되어있지 않아도 pod까지 연결이 잘되는 상황입니다.) LB:80 > NodeIP:80 > Iptables > DNAT > Pod 이러한 흐름으로 pod까지 연결되는것 같은데 (방화벽은 기본 all deny인 상태입니다. ) 이런식으로도 흘러갈 수 있는지가 궁금합니다!
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
Ingress와 reverse proxy의 차이
nginx를 사용한 인그레스를 학습하던 도중 비슷하게 url에 따라 보낼 서비스를 변경하는 리버스 프록시에 대해 알게 되었습니다. 해당 부분의 차이를 알기 위해 다른 자료를 찾아보았으나 명확히 와닿는 설명이 없었습니다. 목적이나 용도가 굉장히 유사해보이는 두 개의 기술이 어떤 점에서 차이가 있는지나 또는 각각 어떠한 장단점을 지녔는지 알려주시면 감사하겠습니다!
-
미해결대세는 쿠버네티스 [초급~중급]
클러스터 설치 관련 질문 드립니다.
현재 Azure Cloud내 동일 VNet에 VM 3대를 생성하고 Case 4의 클러스터 설치 작업을 진행하였습니다. DashBoard 설치까지는 이슈없이 잘 진행이 되었으나 DashBoard 설치 후 VM에 할당된 공인 IP를 입력하여 PIP:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ 에 접속 시 { "kind": "Status", "apiVersion": "v1", "metadata": { }, "status": "Failure", "message": "error trying to reach service: dial tcp 20.97.224.67:8443: i/o timeout", "code": 500 }메시지가 뜨는 이슈가 있습니다.모든 포트에 대해 Open을 해두었기에 포트나 IP 차단에 대한 이슈는 없을겁니다.혹시 다른 케이스의 설치작업을 진행해줘야 할까요??아니면 별도로 진행해줘야 할 작업이 있을까요?추가적으로 VM 내에서 curl localhost:8001 로 접속시 Connection Refused가 뜹니다.
-
해결됨데브옵스(DevOps)를 위한 쿠버네티스 마스터
kubelet이 작동하지 않아요
다른분이 질문주신 에러랑 같은 에러나서 kubelet을 확인해보았는데요 $ systemctl status kubelet ● kubelet.service - kubelet: The Kubernetes Node Agent Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled Drop-In: /etc/systemd/system/kubelet.service.d └─10-kubeadm.conf Active: activating (auto-restart) (Result: exit-code) since Wed 2021-09-01 14:27:17 Docs: https://kubernetes.io/docs/home/ Process: 4242 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARG Main PID: 4242 (code=exited, status=1/FAILURE) _______________________________________ $ journalctl -xeu kubelet 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.215001 5121 server.go:440] "Kubelet version" kubeletVersion="v1.22.1" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.215369 5121 server.go:868] "Client rotation is on, will bootstrap in background" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.217288 5121 certificate_store.go:130] Loading cert/key pair from "/var/lib/kubelet/pki/kubelet-client-current.pem". 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.219826 5121 dynamic_cafile_content.go:155] "Starting controller" name="client-ca-bundle::/etc/kubernetes/pki/ca.crt" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344157 5121 server.go:687] "--cgroups-per-qos enabled, but --cgroup-root was not specified. defaulting to /" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344318 5121 container_manager_linux.go:280] "Container manager verified user specified cgroup-root exists" cgroupRoot=[] 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344368 5121 container_manager_linux.go:285] "Creating Container Manager object based on Node Config" nodeConfig={RuntimeCgroupsName: Syst 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344824 5121 topology_manager.go:133] "Creating topology manager with policy per scope" topologyPolicyName="none" topologyScopeName="conta 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344847 5121 container_manager_linux.go:320] "Creating device plugin manager" devicePluginEnabled=true 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344873 5121 state_mem.go:36] "Initialized new in-memory state store" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344950 5121 kubelet.go:314] "Using dockershim is deprecated, please consider using a full-fledged CRI implementation" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344974 5121 client.go:78] "Connecting to docker on the dockerEndpoint" endpoint="unix:///var/run/docker.sock" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.344985 5121 client.go:97] "Start docker client with request timeout" timeout="2m0s" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.360346 5121 docker_service.go:566] "Hairpin mode is set but kubenet is not enabled, falling back to HairpinVeth" hairpinMode=promiscuous- 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.360368 5121 docker_service.go:242] "Hairpin mode is set" hairpinMode=hairpin-veth 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.360442 5121 cni.go:239] "Unable to update cni config" err="no networks found in /etc/cni/net.d" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.365939 5121 cni.go:239] "Unable to update cni config" err="no networks found in /etc/cni/net.d" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.366083 5121 docker_service.go:257] "Docker cri networking managed by the network plugin" networkPluginName="cni" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.366166 5121 cni.go:239] "Unable to update cni config" err="no networks found in /etc/cni/net.d" 9월 01 14:28:31 master kubelet[5121]: I0901 14:28:31.378615 5121 docker_service.go:264] "Docker Info" dockerInfo=&{ID:FGK6:UGPU:XMZT:TOKQ:VKEU:5DXR:TLC6:66MA:BUFY:SFEG:2ZGF:T7VC Containers:0 9월 01 14:28:31 master kubelet[5121]: E0901 14:28:31.378644 5121 server.go:294] "Failed to run kubelet" err="failed to run Kubelet: misconfiguration: kubelet cgroup driver: \"systemd\" is di 9월 01 14:28:31 master systemd[1]: kubelet.service: Main process exited, code=exited, status=1/FAILURE 9월 01 14:28:31 master systemd[1]: kubelet.service: Failed with result 'exit-code'. ________________________________________ 이렇게 나옵니다
-
해결됨대세는 쿠버네티스 [초급~중급]
Service-실습에서 node1,2에서 pod확인
안녕하세요. 항상 좋은 강의 감사드립니다 :) 실습 강의 따라하던 중 문의사항이있습니다! (강의시간 5:31~) master에서 node1과 node2의 30000번 포트로 접근하여 hostname을 확인하는 실습을 진행 중 입니다. nodeport 서비스(svc-2) 생성 후 해당 실습 내용을 따라해보면 node2에서의 경우 연결시간 초과라고 뜹니다. node1, 2상태를 확인해보면 node2에서는 pod1을 확인 할 수 가없습니다. 원래는 nodeport 서비스를 생성하게되면 node2에서도 pod1의 내용을 확인 할 수 있어야 하는것이라고 생각하는데 확인이 안됩니다@@ 또한 pod2를 생성후 node1 의 30000번 포트로 계속 확인해봐도 pod2로 트래픽분산이 되는 내용도 확인이 안됩니다. (계속 hostname은 pod1로만 확인됨) 어떤 부분을 잘못 설정한 것일까요?
-
해결됨쉽게 시작하는 쿠버네티스(v1.25)
vagrant up 시 traceback 에러
테스트 환경 구성할 때 vagrant 이미지 다운받은 후 가상환경 생성하려고 vagrant up 명령어를 실행하면 이런 오류가 발생하는데 어떻게 해야하나요?
-
미해결쉽게 시작하는 쿠버네티스(v1.25)
connection refused
설정 파일 모두 강의 내용 그대로 따라하면서 하고 있는데 super putty에서 connection refused가 발생합니다. putty를 실행해서 직접 host name과 port를 입력해도 같은 결과가 나옵니다. 설정 바꿔준 것도 없는데 왜 그럴까요..?? vm에서 m-k8s 구동 후 super putty로 접근시 접근이 잘 됩니다. 하지만 w1, w2, w3에 접근하려 하면 똑같이 connection refused가 발생합니다. 현재 vm에서 구동중인 서버에만 접근 가능한거 같은데,, 원래 이게 맞는건가요??
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
안녕하세요! service 실습진행중 Endpoint 관련 질문사항
service 실습과정중 위 강습은 GCP에서 진행하였지만, AWS cloud 9 을 이용하여 EKS를 이용하여 실습을 진행하였습니다. 아래 yaml파일 작성을 동일하게하여 배포를하였는데 EndPoint가 None으로 나오게 됩니다. 혹시 따로 설정을 해줘야하거나, 설정을 하려면 어떻게 해야할까요? 감사합니다.
-
미해결초보를 위한 쿠버네티스 안내서
강사님 shell 환경이 궁금합니다.
강의 실습에 사용되는 shell 환경이 어떻게 되는지 알 수 있을까요? zsh theme를 사용하시는지요? 사용하신다면 어떤 theme를 사용하시는지요>?
-
해결됨데브옵스(DevOps)를 위한 쿠버네티스 마스터
안녕하세요. 강사님
안녕하세요. 강사님 제가 강의를 듣고 개인적으로 내용을 정리하려 하는데 혹시 정리한 내용을 블로그에 포스팅해도 괜찮은지 여쭤보고 싶어 질문을 올립니다. 좋은 강의 제공해주셔서 너무 감사합니다.
-
미해결공인 쿠버네티스 자격증 잘 준비하는 법 (CKA, CKAD, CKS)
cka-practice-environment 깃허브에 올라와있는 프로젝트를 도커 컴포즈로 실행하고 싶은데요,
To use the prebuilt images run: docker-compose up -d and point your browser to http://localhost // docker-compose up을 실행시키니까 다음과 같은 에러가 나네요. 혹시 어떻게 빌드하는지 설명해주실수 있나요?
-
해결됨대세는 쿠버네티스 [초급~중급]
안녕하세요. Cluster IP 관련 실습을 진행중입니다.
curl 로 응답값을 확인하려고 하는데요. 예제와 보여주신것과 같이 "Hostname: pod-1" 응답값이 오질 않고 "연결 시간 초과" 라는 응답값이 오네요. 어떤 부분 문제가 있어서 이러는 걸까요?!
-
미해결대세는 쿠버네티스 [초급~중급]
[preflight] Running pre-flight checks 메세지에서 멈추어 있습니다.
데탑 3대로 master node 1 node 2 구성하려고 합니다. 강좌에 구성된대로 같은 구조인데. host + master node 1 node 2 이렇게 구성해 주었습니다. node 1 과 node 2 가 kubeadm join 명령으로 master와 연동 해줄때 [preflight] Running pre-flight checks 라는 메세지가 나오고 멈추어 있습니다. 원인이 무었인지 알수 있을까요?