작성
·
715
1
안녕하세요. 현재 강의를 수강하고 있는 학생입니다. 다름이 아니라 저의 태스트 환경이 강의와 조금 상이하여 초기 세팅부터 문제를 격고 있어 몇가지 질문을 드리려고 합니다.
현재 저의 개발 환경은 aws ec2 인스턴스 두 개와 이 둘을 ssh로 접근하는 mac기반 pc 하나입니다. kubeadm 명령어로 init 하는 것 까지는 성공하였으나 대시보드를 띄우는 데 어려움을 격고 있습니다. 강의의 설치관련 자료 세 개 및 여러 구글 자료를 참고하였지만 해결책을 찾을 수 없었습니다.
구체적인 문제는
nohup kubectl proxy --port=8001 --address=<master-pubric-ip> --accept-hosts='^*$' >/dev/null 2>&1 &
위 명령어를 실행했을 때 netstat로 포트를 확인해 보면
[1]+ Exit 255 sudo kubectl proxy --port=8001 --address=<master-pubric-ip> --accept-hosts='^*$' > /dev/null 2>&1
위와 같이 포트가 죽는 문제가 발생하고, 단순 아래와 같이 명령어를 실행하면
kubectl proxy
⇒ Starting to serve on 127.0.0.1:8001
포트가 열리기 하였으나, 맥 pc에서 해당 url(http://<aws-pubric-Ip>:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/)에 접근하면 사이트에 연결할 수 없음이라는 메세지가 뜨며 대시보드에 접근을 할 수 없습니다. aws 인바운드에는 포트 8001의 모든 tcp 를 열어둔 상대입니다. 어떤 식으로 해결해야 할 지 감이 안잡혀서 답답한 마음에 질문을 남깁니다. 감사합니다.
답변 15
1
1
1
오...감사합니다 ... 다시 시도해보니깐 실행이되네요^^ 감사합니다!!!!! 다음과 같이 접근하였습니다. /api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/login
1
1
시도해본 결과
{ "kind": "Status", "apiVersion": "v1", "metadata": { }, "status": "Failure", "message": "services \"kubernetes-dashboard\" not found", "reason": "NotFound", "details": { "name": "kubernetes-dashboard", "kind": "services" }, "code": 404 }
다음과 같은 애러가 나타납니다.
1
1
1
결국 Aws에서 Public IP로 추가적인 Port를 뚫는 부분이 안되는거네요?
좀 검색해보니 아래와 같이 Dashboard를 띄우라는 내용도 있는데 한번 해보시겠어요?
kubectl proxy --address='0.0.0.0' --port=8001 --accept-hosts='.*'
1
제 강의에 GCP 연동을 보면, GCP SDK 를 설치해서 내 Local PC와 연동을 해놓고 마스터 인스턴스에 localhost로 접근을 하는데,
현재 상황은 aws는 그런거 없이 해당 싸이트 에서 쿠버네티스 클러스터를 설정 한거고,
결국 외부 Public IP를 통해서 접근을 할 수 밖에 없는 상황인거죠?
1
빠른 답변감사드립니다. 현재 노드를 aws 인스턴스 두개만 사용하고 있어서 local PC로 접근할 수 없는 상황입니다. 맥 PC에서 마스터인 aws 인스턴스에 접근이 안됩니다.
1
네, 일단 저도 aws위에서 쿠버네티스를 구동해본게 아니라서 명확하게 답변을 드리기는 힘들꺼 같고.
저도 GCP에서 해본봐로는 거기선 아래 명령어로 Dashboard를 뛰우진 않고
nohup kubectl proxy --port=8001 --address=<master-pubric-ip> --accept-hosts='^*$' >/dev/null 2>&1 &
두번째 말씀하신 kubectl proxy 명령으로만 대시보드를 띄었고요.
접근을 할때 public ip로 접근이 아닌 내 로컬 PC에서 http://127.0.0.1:8080로 접근을 했었는데 이렇게도 접근이 안되는 건가요?
아니면 이렇게는 되는데 외부에서 해당 master-pubric-ip로 접근을 하는 부분만 안되는건지요?
1
kubectl get pods --all-namespaces 입력해보니 모든 namespace의 status가 running입니다. 정상 작동 되고 있는 것 같습니다
1
MAC이 마스터가 아니고 aws 인스턴스 하나가 마스터입니다. 오타가 있었네요 .. 192.168.0.30이 아닌 aws 인스턴스 중 마스터인 pubric ip 를 입력했습니다.
1
네 안녕하세요.
Mac PC에 Master가 설치되어 있는거고, Mac의 IP가 192.168.0.30 인가요?
그리고 kubectl get pods --all-namespaces 명령을 날렸을때 모든 Pod들이 정상적으로 동작중인건지요?
0
저같은 경우에는 kubectl get svc -A 를 통해 확인한 kubernetes-dashboard 서비스의 namespace가 kubernetes-dashboard였습니다.
http://public 아이피:포트/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/login 가 아닌
http://public 아이피:포트/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#!/login
로 접속하니 작동하네요!