KubernetesServiceはアプリケーションを外部に公開します

サービスはアプリケーションを公開します

Serviceがポートを外部に公開すると、実際には負荷分散効果があります。

kubectl Exposure Deployment [デプロイメント名] –port = [外部で提供されるポート]-target-port = [内部ポート] -type = NodePort

説明:

–ポートは外部に提供される
ポートです
target -portは内部ポートであり、–type = NodePortは公開されています

ポートを走り書きしないでください。プロジェクトポートと一致している必要があります。一致していないと、アクセスできません。たとえば、元のプロジェクトポートが8080の場合、ポート8080を書き込む必要があります。そうでない場合は、次のようになります。アクセスできません。

[root@zjj101 k8s]# kubectl  expose deployment javademo1 --port=8080  --target-port=8080 --type=NodePort
service/javademo1 exposed

公開されたポートを表示する

kubectl get svc

[root@zjj101 k8s]# kubectl  get svc
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
javademo1    NodePort    10.105.149.218   <none>        8080:31420/TCP   5s
kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP          46h
[root@zjj101 k8s]#

あなたは訪問することができます

javademo1が外部のポート31420であることを確認してください。そうすれば、クラスター内の任意のマシンのポート31420を使用してアクセスできます。

訪問中、あなたはこのポッドの複数のコピーに均等に分割されます

画像-20210228175354234

おすすめ

転載: blog.csdn.net/qq_41489540/article/details/114290158