39.4. 라우터 디버깅
이제 IP 주소가 있으므로 해당 시스템에 ssh
를 사용하여 해당 시스템에서 라우터 소프트웨어가 실행되고 있는지 확인하고 올바르게 구성해야 합니다. ssh
를 보고 관리자 OpenShift Container Platform 자격 증명을 가져옵니다.
관리자 자격 증명에 대한 액세스 권한이 있지만 기본 시스템 사용자 system :admin 으로 더 이상 로그인하지 않은 경우 CLI 구성 파일에 인증 정보가 남아 있으면 언제든지 이 사용자로 다시 로그인할 수 있습니다. 다음 명령은 에 로그인하여 기본 프로젝트로 전환합니다.
$ oc login -u system:admin -n default
라우터가 실행 중인지 확인합니다.
# oc get endpoints --namespace=default --selector=router NAMESPACE NAME ENDPOINTS default router 10.128.0.4:80
해당 명령이 실패하면 OpenShift Container Platform 구성이 손상됩니다. 수정은 이 문서의 범위를 벗어납니다.
하나 이상의 라우터 엔드포인트가 나열되어야 하지만 엔드포인트 IP 주소가 클러스터 내부의 포드 주소 중 하나이므로 지정된 외부 IP 주소가 있는 시스템에서 실행되고 있는지는 알 수 없습니다. 라우터 호스트 IP 주소 목록을 가져오려면 다음을 실행합니다.
# oc get pods --all-namespaces --selector=router --template='{{range .items}}HostIP: {{.status.hostIP}} PodIP: {{.status.podIP}}{{"\n"}}{{end}}' HostIP: 192.168.122.202 PodIP: 10.128.0.4
외부 주소에 해당하는 호스트 IP가 표시되어야 합니다. 그렇지 않은 경우 라우터 설명서 를 참조하여 적절한 노드에서 실행되도록 라우터 포드를 구성하거나 라우터가 실행 중인 IP 주소와 일치하도록 DNS를 업데이트합니다.
이 가이드에서는 라우터 포드를 실행하는 노드에 있어야 하지만 HTTP 요청이 작동하도록 할 수는 없습니다. 먼저 라우터가 외부 URL을 올바른 서비스에 매핑하는지 확인해야 하며, 이 경우 모든 엔드포인트에 연결할 수 있는지 확인하기 위해 해당 서비스를 구문 분석해야 합니다.
OpenShift Container Platform에서 알고 있는 모든 경로를 나열합니다.
# oc get route --all-namespaces NAME HOST/PORT PATH SERVICE LABELS TLS TERMINATION route-unsecured www.example.com /test service-name
URL의 호스트 이름과 경로가 반환된 경로 목록의 아무것도 일치하지 않는 경우 경로를 추가해야 합니다. 라우터 설명서 를 참조하십시오.
경로가 있는 경우 엔드포인트에 대한 액세스를 디버그해야 합니다. 이는 서비스에 대한 문제를 디버깅하는 것과 동일하므로 다음 39.5절. “서비스 디버깅” 섹션을 계속 진행합니다.