Rancher 2は、新しいワークロードをデプロイするときに、[ポート]セクションで4つのオプションを提供します。
違いは何ですか?特にNodePort、HostPort、およびクラスターIP間ですか?
HostPort(ポッドを実行しているノード):Dockerと同様、ポッドが実行されているノードのポートを開きます(これにより、ホストのポート80)。ただし、これは実行の設定が非常に簡単です。
絶対に必要でない限り、ポッドにhostPortを指定しないでください。ポッドをhostPortにバインドすると、各組み合わせは一意である必要があるため、ポッドをスケジュールできる場所の数が制限されます。 hostIPとプロトコルを明示的に指定しない場合、KubernetesはデフォルトのhostIPとして0.0.0.0を使用し、TCPをデフォルトのプロトコルとして使用します。 kubernetes.io
NodePort(すべてのノードで):ポート30,000から33,000までのポートに制限されます。これは通常、外部ロードバランサーとの組み合わせでのみ意味があります(ポート80でWebアプリケーションを公開する場合)。
ノードでポッドのポートを明示的に公開する必要がある場合は、hostPortに頼る前にNodePort Serviceの使用を検討してください。 kubernetes.io
クラスターIP(内部のみ):説明にあるように、これは同じアプリケーションで実行されている内部アプリケーションでのみ使用可能なポートを開きますクラスター。このオプションを使用するサービスは、内部のcluster-ipを介してアクセス可能です。