Ingress 리소스 테스트
마지막으로, Ingress 리소스가 올바르게 작동하는지 확인하기 위해 테스트할 수 있습니다.
먼저, 노드의 IP 주소를 확인합니다.
kubectl get node -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
minikube Ready control-plane 93s v1.26.1 192.168.49.2 <none> Ubuntu 20.04.5 LTS 5.15.0-56-generic docker://20.10.23
이 명령은 Kubernetes 노드 주소를 가져오며, INTERNAL-IP로 레이블된 IP 주소를 확인합니다.
다음으로, /etc/hosts 파일에 test.local 도메인을 노드의 IP 주소에 매핑하는 항목을 추가합니다.
echo "<IP_ADDRESS> test.local" | sudo tee -a /etc/hosts
<IP_ADDRESS>를 노드 주소의 내부 IP 주소로 바꿉니다. 예를 들어:
echo "192.168.49.2 test.local" | sudo tee -a /etc/hosts
그런 다음, ingress-nginx에 대한 서비스 NodePort 를 가져옵니다.
kubectl get services -n ingress-nginx
이 명령은 ingress-nginx 네임스페이스의 서비스 목록을 표시합니다. nginx-ingress-controller 서비스를 찾고 해당 NodePort를 기록해 둡니다.
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ingress-nginx-controller LoadBalancer 10.104.99.158 <pending> 80:32518/TCP,443:31620/TCP 2m45s
ingress-nginx-controller-admission ClusterIP 10.100.46.109 <none> 443/TCP 2m45s
마지막으로, curl을 사용하여 Ingress 엔드포인트에 HTTP 요청을 보냅니다.
curl test.local:NodePort
예를 들어:
curl test.local:32518
<NodePort>를 nginx-ingress-controller 서비스의 NodePort로 바꿉니다.
모든 것이 올바르게 설정되었다면 Nginx 환영 페이지가 표시되어야 합니다.
웹 브라우저를 사용하여 test.local:<NodePort>/nginx를 방문하여 Ingress 를 테스트할 수도 있습니다.
축하합니다. Kubernetes 에서 Ingress 리소스를 성공적으로 설정하고 올바르게 작동하는지 테스트했습니다.