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
のサービスノードポートを取得します。
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 のウェルカムページが表示されるはずです。
また、Web ブラウザを使用してtest.local:<NodePort>/nginx
にアクセスすることで、Ingress をテストすることもできます。
おめでとうございます。Kubernetes に Ingress リソースを正常にセットアップし、それが正しく動作していることを確認しました。