これは、このセクションの複数ページの印刷可能なビューです。 印刷するには、ここをクリックしてください.

このページの通常のビューに戻る.

リリース

Kubernetesプロジェクトは、最新の3つのマイナーリリース(1.29、1.28、1.27)のリリースブランチをメンテナンスしています。 Kubernetes 1.19以降のバージョンは、約1年間のパッチサポートを受け付けています。 Kubernetes 1.18以前のバージョンは、約9ヶ月間のパッチサポートを受け付けていました。

Kubernetesのバージョンは、x.y.zと表されます。 ここで、xはメジャーバージョン、yはマイナーバージョン、zはパッチバージョンを指し、これらはセマンティックバージョニングの用語に従います。

詳細は、バージョンスキューポリシーのドキュメントで確認できます。

リリース履歴

1.29

最新リリース1.29.2 (リリース日: )
サポート終了日
パッチリリース 1.29.0, 1.29.1, 1.29.2

Complete 1.29 Schedule and Changelog

1.28

最新リリース1.28.7 (リリース日: )
サポート終了日
パッチリリース 1.28.0, 1.28.1, 1.28.2, 1.28.3, 1.28.4, 1.28.5, 1.28.6, 1.28.7

Complete 1.28 Schedule and Changelog

1.27

最新リリース1.27.11 (リリース日: )
サポート終了日

Complete 1.27 Schedule and Changelog

1.26

最新リリース1.26.14 (リリース日: )
サポート終了日

Complete 1.26 Schedule and Changelog

リリース予定

Kubernetes1.30リリーススケジュールをチェックしてみてください!

リソース

1 - バージョンスキューポリシー

さまざまなKubernetesコンポーネント間でサポートされる最大のバージョンスキュー。

このドキュメントでは、さまざまなKubernetesコンポーネント間でサポートされる最大のバージョンの差異(バージョンスキュー)について説明します。特定のクラスターデプロイツールは、バージョンの差異に追加の制限を加える場合があります。

サポートされるバージョン

Kubernetesのバージョンはx.y.zの形式で表現され、xはメジャーバージョン、yはマイナーバージョン、zはパッチバージョンを指します。これはセマンティック バージョニングに従っています。詳細は、Kubernetesのリリースバージョニングを参照してください。

Kubernetesプロジェクトでは、最新の3つのマイナーリリースについてリリースブランチを管理しています (1.29, 1.28, 1.27)。

セキュリティフィックスを含む適用可能な修正は、重大度や実行可能性によってはこれら3つのリリースブランチにバックポートされることもあります。パッチリリースは、これらのブランチから 定期的に 切り出され、必要に応じて追加の緊急リリースも行われます。

リリースマネージャーグループがこれを決定しています。

詳細は、Kubernetesパッチリリースページを参照してください。

サポートされるバージョンの差異

kube-apiserver

高可用性 (HA) クラスターでは、最新および最古のkube-apiserverインスタンスがそれぞれ1つのマイナーバージョン内でなければなりません。

例:

  • 最新のkube-apiserver1.29であるとします
  • ほかのkube-apiserverインスタンスは1.29および1.28がサポートされます

kubelet

kubeletkube-apiserverより新しいものであってはならず、2つの古いマイナーバージョンまで有効です。

例:

  • kube-apiserver1.29であるとします
  • kubelet1.291.28および1.27がサポートされます

例:

  • kube-apiserverインスタンスが1.29および1.12であるとします
  • kubelet1.28および1.27がサポートされます(1.29はバージョン1.28kube-apiserverよりも新しくなるためサポートされません)

kube-controller-manager、kube-scheduler、およびcloud-controller-manager

kube-controller-managerkube-schedulerおよびcloud-controller-managerは、通信するkube-apiserverインスタンスよりも新しいバージョンであってはなりません。kube-apiserverのマイナーバージョンと一致することが期待されますが、1つ古いマイナーバージョンでも可能です(ライブアップグレードを可能にするため)。

例:

  • kube-apiserver1.29であるとします
  • kube-controller-managerkube-schedulerおよびcloud-controller-manager1.29および1.28がサポートされます

例:

  • kube-apiserverインスタンスが1.29および1.28であるとします
  • いずれかのkube-apiserverインスタンスへ配信するロードバランサーと通信するkube-controller-managerkube-schedulerおよびcloud-controller-manager1.28がサポートされます(1.29はバージョン1.28kube-apiserverよりも新しくなるためサポートされません)

kubectl

kubectlkube-apiserverの1つ以内のバージョン(古い、または新しいもの)をサポートします。

例:

  • kube-apiserver1.29であるとします
  • kubectl1.301.29および1.28がサポートされます

例:

  • kube-apiserverインスタンスが1.29および1.28であるとします
  • kubectl1.29および1.28がサポートされます(ほかのバージョンでは、あるkube-apiserverコンポーネントからマイナーバージョンが2つ以上離れる可能性があります)

サポートされるコンポーネントのアップグレード順序

コンポーネント間でサポートされるバージョンの差異は、コンポーネントをアップグレードする順序に影響されます。このセクションでは、既存のクラスターをバージョン1.28から1.29 へ移行するために、コンポーネントをアップグレードする順序を説明します。

kube-apiserver

前提条件:

  • シングルインスタンスのクラスターにおいて、既存のkube-apiserverインスタンスは1.28とします
  • HAクラスターにおいて、既存のkube-apiserver1.28または1.29 とします(最新と最古の間で、最大で1つのマイナーバージョンの差異となります)
  • サーバーと通信するkube-controller-managerkube-schedulerおよびcloud-controller-managerはバージョン1.28とします(必ず既存のAPIサーバーのバージョンよりも新しいものでなく、かつ新しいAPIサーバーのバージョンの1つ以内のマイナーバージョンとなります)
  • すべてのノードのkubeletインスタンスはバージョン1.28または1.27 とします(必ず既存のAPIサーバーよりも新しいバージョンでなく、かつ新しいAPIサーバーのバージョンの2つ以内のマイナーバージョンとなります)
  • 登録されたAdmission webhookは、新しいkube-apiserverインスタンスが送信するこれらのデータを扱うことができます:
    • ValidatingWebhookConfigurationおよびMutatingWebhookConfigurationオブジェクトは、1.29 で追加されたRESTリソースの新しいバージョンを含んで更新されます(または、v1.15から利用可能なmatchPolicy: Equivalentオプションを使用してください)
    • Webhookは送信されたRESTリソースの新しいバージョン、および1.29 のバージョンで追加された新しいフィールドを扱うことができます

kube-apiserver1.29 にアップグレードしてください。

kube-controller-manager、kube-scheduler、およびcloud-controller-manager

前提条件:

  • これらのコンポーネントと通信するkube-apiserverインスタンスが1.29 であること(これらのコントロールプレーンコンポーネントが、クラスター内のkube-apiserverインスタンスと通信できるHAクラスターでは、これらのコンポーネントをアップグレードする前にすべてのkube-apiserverインスタンスをアップグレードしなければなりません)

kube-controller-managerkube-schedulerおよびcloud-controller-manager1.29 にアップグレードしてください。

kubelet

前提条件:

  • kubeletと通信するkube-apiserver1.29 であること

必要に応じて、kubeletインスタンスを1.29 にアップグレードしてください(1.281.27 のままにすることもできます)。

kube-proxy

  • kube-proxyのマイナーバージョンはノード上のkubeletと同じマイナーバージョンでなければなりません
  • kube-proxykube-apiserverよりも新しいものであってはなりません
  • kube-proxyのマイナーバージョンはkube-apiserverのマイナーバージョンよりも2つ以上古いものでなければなりません

例:

kube-proxyのバージョンが1.27の場合:

  • kubeletのバージョンは1.27でなければなりません
  • kube-apiserverのバージョンは1.271.29の間でなければなりません

2 - ノート

Kubernetesのリリースノート

リリースノートは、使用しているKubernetesのバージョンに合ったChangelogを読むことで確認できます。 1.29のchangelogを見るにはGitHubを参照してください。

またリリースノートは、relnotes.k8s.io上で検索してフィルタリングすることもできます。 1.29のフィルタリングされたリリースノートを見るにはrelnotes.k8s.ioを参照してください。