kubernetes のセットアップは正常に実行されていますが、サービスを外部に公開していないようです。ネットワークが正しく設定されていないと思います:
kubernetes サービス アドレス: --service-cluster-ip-range=172.16.0.1/16
フランネルネットワーク構成: etcdctl get /test.lan/network/config {"Network":"172.17.0.0/16"}
docker サブネット設定: --bip=10.0.0.1/24
ホストノード IP: 192.168.4.57
nginx サービスを実行しており、次のように公開しようとしました。
[root@kubemaster ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-px6uy 1/1 Running 0 4m
[root@kubemaster ~]# kubectl get services
NAME LABELS SELECTOR IP(S) PORT(S) AGE
kubernetes component=apiserver,provider=kubernetes <none> 172.16.0.1 443/TCP 31m
nginx run=nginx run=nginx 172.16.84.166 9000/TCP 3m
次に、次のようにサービスを公開しました。
kubectl expose rc nginx --port=9000 --target-port=9000 --type=NodePort
NAME LABELS SELECTOR IP(S) PORT(S) AGE
nginx run=nginx run=nginx 9000/TCP 292y
ホストノード IP (192.168.4.57) で nginx コンテナーにアクセスできるようになることを期待しています - ネットワークを誤解していませんか? もしあれば、説明をいただければ幸いです:(
注: これは、クラウド プロバイダーが提供するロード バランサーのない物理ハードウェア上にあるため、NodePort が唯一の選択肢だと思います。