LoginSignup
5
1

More than 3 years have passed since last update.

Kubernetes 1.16: SIG Node の変更内容

Last updated at Posted at 2019-09-27

はじめに

Kubernetes 1.16 の CHANGELOG から SIG Node の取り組みについてまとめます。

What's new

なし

既知の問題点(Known Issues)

なし

アップグレード時の注意点 (Urgent Upgrade Notes)

なし

非推奨・廃止される機能 (Deprecations and Removals)

注目機能 (Notable Features)

  • Beta
    • なし
  • Alpha
    • RuntimeClassのための新しいadmission controllerを導入しました。対応するRuntimeClassNameが指定された場合、RuntimeClassは特定のRuntimeClassに関連付けられたPodのオーバーヘッドをPodの specに適用されるようになります。PodOverheadはalpha機能としてKubernetes 1.16から利用可能です。(#78484, @egernst)
      • :pencil: PodOverheadsを使うとPod自体の作成にかかるOverheadをスケジューリング等に含めることが可能となります。Overheadは自動で決まるものではなくユーザが指定する必要があるようです。
    • Ephemeral containersがalpha機能として追加されました。一時的なコンテナをデバッグのような目的で実行中のPodに対して追加可能であり、これはkubectl execが既存のコンテナでプロセスを実行する方法に似ています。また、kubectl execと同様に、一時コンテナ用のリソースは予約されておらず、終了時に再起動されません。コンテナのnamespaceのターゲティングはまだ実装されていないため、Pod内の他のコンテナからプロセスを表示するには、process namespace sharingを有効にする必要があります。(#59484, @verb)
  • Misc
    • RuntimeClassのためのスケジューリングを追加しました。RuntimeClassは現在nodeSelectorのconstraintsとtolerationsを宣言でき、そこで宣言されたものはそのRuntimeClassを使うPodのPodSpecへマージされます。(#80825, @tallclair)
      • :pencil:これにより事前にRuntimeClassを適切に設定しておけば、ユーザはRuntimeClassを指定するだけで、ノードのlabelやtaintを意識せずにRuntimeClassが利用できるノードを選択してPodを起動できるようになるようです
    • --(kube|system)-reserved-cgroup--cgroup-driver=systemdで指定する場合、完全修飾cgroupfs名を利用可能になりました。(#78793, @mattjmcnaughton)

その他の注目機能(Other notable changes)

  • PID cgroup controllerに関連するfeature gatesが無効になっている場合に、PID cgroup controllerの要件を削除しました(#79073, @rafatio)

    • :pencil: この修正が入る前はSupportPodPidsLimitSupportNodePidsLimitを無効にしても、PID cgroup controllerのために必要なシステム要件を満たす必要があり、対応していないkernelだった場合にkubeletが正常に起動しなかったようです。
  • kubeletのNodeLeaseの潜在的なパフォーマンスの問題を修正しました。Kubeletは、APIサーバーから毎回取得する代わりに、キャッシュされたリースを使用してリースを更新しようとします。(#81174, @answer1991)

  • --cpu-manager-policyフラグに無効なポリシー名を渡すと、単にフラグを無視して代わりにcpumanagerのデフォルトポリシーを実行する代わりに、kubeletが失敗します。(#80294, @klueska)

  • kubeletのnode-status-update-frequencyに基づいて、ノードのリース更新間隔をよりヒューリスティックにします(#80173, @gaorong)

  • CloudProviderによって報告されるノードIPのセットが変更された場合でも、Kubeletは同じプライマリノードIPをより確実に報告するようになりました。(#79391, @danwinship)

  • コンテナのハッシュ値を計算するときは、ハッシュが変更されないように、「nil」または空のフィールドを省略します。コンテナ仕様にゼロ以外のデフォルト値を持つ新しいフィールドの場合、ハッシュは変更されます。(#57741, @dixudx)

  • PodのrestartPolicyがNeverのときにkubeletがPod Sandboxの作成を再試行しないバグを修正しました(#79451, @yujuhong)

  • execのrediness/liveness probesのbodyの長さを制限しました。remote CRIやDocker shimはは最大16MBの出力を読み取り、そのうちexecプローブ自体が10kbを検査します。(#82514, @dims)

  • 単一のstatic podファイルおよびhttpエンドポイントからのpodファイルは、10 MBを超えることはできません。HTTP probeのペイロードは現在10KBへ切り詰められます。(#82669, @rphillips)

  • PodOverheadの機能が有効な時、pod cgroupsへpod overheadの内容も適用するようになりました。(#79247, @egernst)

  • Node-Problem-Detector v0.7.1がGCIで使用されます(#80726, @wangzhen127)

  • Node-Problem-Detector v0.7.1がaddonのdaemonsetで使用されます(#82140, @wangzhen127)

  • cadvisor ProcessMetrics収集を有効にします(#79002, @jiayingz)

  • kubeletのnode-lease-renew-intervalをlease-renew-durationの0.25に変更します (#80429, @gaorong)

  • --cloud-provider = externalでノードアドレスが存在しない場合、kubeletのホスト名と内部IPを設定しようとするようになりました (#75229, @andrewsykim)

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1