Edited at

Kubernetes 1.14: SIG Network の変更内容


はじめに

この記事では Kubernetes 1.14 における SIG Network の活動に基づく変更点を紹介します。変更点は以下のドキュメントから収集しています。


主要な変更点


  • Windows ノード対応が Stable になったことに伴い、Azure-CNI や OVN-Kubernetes、Flannel によるネットワークに対応しました



    • :pencil: k8s 1.14 では Windows ノード対応が Stable に昇格したため、それに伴う対応になります




既知の問題


  • クラスター DNS である CoreDNS が kube-apiserver に接続中に、kube-apiserver がシャットダウンすると CoreDNS がクラッシュする問題があります。これは CoreDNS 1.3.1 で発生し CoreDNS 1.4.0 で修正されています




廃止予定


  • Ingress リソースは API networking.k8s.io/v1beta1 で提供されるようになりました。従来の API extensions/v1beta1 における Ingress リソースは廃止予定となり、v1.18 で削除されます。既存の保存済みデータは新しい API で提供されます (#74057)

  • API extensions/v1beta1 における NetworkPolicy リソースの提供は v1.16 で廃止されます。API networking.k8s.io/v1 での利用に移行してください。既存の保存済みデータは新しい API で提供されます


機能変更


  • ネットワーク関連のメトリクス名に含まれる latency/latenciesduration に置き換えられました (#74418)



    • :pencil: 名前が変更されたメトリクスに対して Prometheus のルールなどを設定している場合は設定の変更が必要です



  • 新しいテスト [sig-network] DNS should provide /etc/hosts entries for the cluster [LinuxOnly] [Conformance]/etc/hosts に設定されたエントリー (Pod の FQDN とホスト名) を検証するようにしました (#72729)

  • Feature gate の1つである CustomPodDNS が GA に昇格し、有効化されました。この Feature gate は v1.16 で削除されます (#72832)



    • :pencil: CustomPodDNS の有効化により Pod 単位での DNS の設定が可能になりました



  • メトリクスガイドラインを満たすために Proxy メトリクスの名前を変更しました (#72334)



    • :pencil: kube-proxy のメトリクスの一部の名前が変更されたため、Prometheus のルールなどを設定している場合は設定の変更が必要です




API の変更


  • dockershim ランタイムを使用している時に Node で大量の I/O が発生していると、予期せず NotReady 状態になってしまう問題を修正しました (#74389)

  • vSphere Volume に zone ラベルが自動で付与されるようになりました。この zone ラベルは PV で確認できます (#72687)

  • kube-proxy が Windows でのオーバーレイネットワークと DSR に対応し、network-namesource-vipenable-dsr フラグが追加されました (#70896)

  • Nodelocal DNS Cache において、否認したレスポンスの cache TTL 最小値を5秒に変更しました (#74093)


SIG からのメモ


  • kubeadm: RequiredIPVSKernelModulesAvailable の警告メッセージを改善しました (#74033)