Kubernetes上にワークロードを展開するうえでServiceは欠かすことのできないリソースです。ServiceはPodに対するネットワークトラフィックを抽象化し、クラスタ内部/外部のロードバランサとして主に活躍します。 Serviceの細かい機能や設定に関しては公式のドキュメントに譲るとして、このドキュメントではServiceが作成される流れ[1]とルーティングへの影響を実装コードを読みながら解説します。 環境 このドキュメントではKubernetes v1.20を元に動作検証とコードリーディングをしています。また省略のため、クラスタの設定を次のとおりに設定してあります。 featureGateのEndpointSliceとEndpointSliceProxyingは有効 v1.20でのデフォルト設定 kube-proxyの起動パラメータproxy-modeはiptables 手元の