すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:(中止) Kubernetes 1.20リリースノート

最終更新日:Nov 22, 2024

Container Service for Kubernetes (ACK) は、認定Kubernetes適合プログラムの規約に厳密に準拠しています。 このトピックでは、Kubernetes 1.20をサポートするためにACKが行った変更の一覧を示します。

バージョンアップ

すべてのACKコンポーネントが更新され、Kubernetes 1.20をサポートするように最適化されています。

コアコンポーネント

バージョン

説明

Kubernetes

1.20.11

  • ACKクラスターをKubernetes 1.20以降に更新する前に、必要なサブジェクト代替名 (SAN) がクラスター内のアドミッションWebhookの自己署名サーバー証明書に含まれていることを確認してください。 詳細については、サンプルHelmチャートをご参照ください。

  • selfLinkフィールドは非推奨です。 詳細については、「kube-apiserverでのSelfLinkの設定の停止」をご参照ください。

    アプリケーションでselfLinkを使用する場合は、事前に設定を変更する必要があります。 オープンソースのnfs-client-provisionerをインストールしている場合は、selfLinkに依存しないバージョンにコンポーネントを更新する必要があります。

  • デフォルトでは、ACK専用クラスターのマスターノードにnode-role.kubernetes.io /制御プレーンのラベルが追加されます。 node-role.kubernetes.io /マスターのラベルは、1.20以降のバージョンのKubernetesでは廃止されます。

  • FlexVolumeとalicloud-nas-controllerの両方がクラスターにデプロイされている場合、Kubernetesバージョンのクラスターを1.20に更新する前に、alicloud-nas-controllerイメージを1.14.8.17-7b898e5-aliyun以降に更新する必要があります。 FlexVolumeは非推奨です。 FlexVolumeからContainer Storage Interface (CSI) にアップグレードすることを推奨します。 詳細については、

    FlexVolumeからCSIへのアップグレード

Dockerランタイム

19.03.5

なし

Containerdランタイム

1.4.4

なし

etcd

3.4.3

なし

CoreDNS

1.7.0

  • 廃止予定のアップストリームプラグインは互換性がなくなりました。 Corefile設定でアップストリームプラグインが指定されている場合、CoreDNSのアップグレード時に安全な方法で自動的に削除されます。

  • メトリックの名前が更新されます。 モニタリングシステムがCoreDNSメトリックに依存している場合は、メトリック名を更新する必要があります。 詳細については、「メトリックの変更」をご参照ください。

NVIDIAコンテナーランタイム

3.4.1

なし

バージョンの詳細

リソースの変更と廃止

  • Dockerランタイムは非推奨です。 Dockerランタイムは、Kubernetes 1.20で非推奨としてマークされます。 ただし、クラスターでDockerランタイムを引き続き使用できます。 これ以降のバージョンでは、DockerランタイムはオープンソースKubernetesでサポートされません。 この変更はコンテナイメージには影響しません。 引き続きDockerイメージをビルドできます。 詳細については、「Dockershim Deprecation FAQ」をご参照ください。

  • デフォルトでは、ACK専用クラスターのマスターノードにnode-role.kubernetes.io /制御プレーンのラベルが追加されます。 node-role.kubernetes.io /マスターのラベルは、1.20以降のバージョンのKubernetesでは廃止されます。

  • selfLinkフィールドは非推奨です。 詳細については、「kube-apiserverでのSelfLinkの設定の停止」をご参照ください。

  • extensions/v1beta1およびnetworking.k8s.io/v1beta1 APIバージョンは、IngressおよびIngressClassesの管理には使用されなくなり、1.22以降のバージョンのKubernetesでは廃止されます。 代わりにnetworking.k8s.io/v1を使用します。

    説明

    デフォルトでは、NGINX IngressコントローラーはACKクラスターにインストールされます。 このコンポーネントを使用すると、networking.k8s.io/v1beta1 APIバージョンを使用してIngressとIngressClassesを管理できます。

  • 必要なSANは、ACKクラスターの承認Webhookの自己署名サーバー証明書に含まれている必要があります。 ACKクラスターをKubernetes 1.20以降に更新する前に、必要なSANがクラスター内のアドミッションWebhookの自己署名サーバー証明書に含まれていることを確認してください。 詳細については、サンプルHelmチャートをご参照ください。

機能のアップグレード

  • タイムアウト設定に基づいてexecプローブがタイムアウトしない問題は、kubeletで修正されました。 execプローブのデフォルトのタイムアウト期間は1秒になりましたが、一部のexecプローブでは短い場合があります。 execプローブにタイムアウト期間が指定されていない場合は、デフォルトのタイムアウト期間を指定することを推奨します。

  • API Priority and Fairness機能 (APF) は、パブリックプレビューのKubernetesの機能であり、デフォルトで有効になっています。 この機能を使用して、リクエストを制限および優先順位付けできます。 詳細については、「APIの優先度と公平性」をご参照ください。

  • デフォルトでは、EndpointSlice機能が有効になっています。 Kubernetes 1.19以降では、大規模なクラスターをサポートするために、kube-proxyによってEndpointSlice機能が自動的に有効になります。 詳細については、「EndpointSlices」をご参照ください。

  • 不変のConfigMapsとSecretsがサポートされています。 不変のConfigMapsとSecrets機能はパブリックプレビューです。 ConfigMapまたはSecretが不変に設定されている場合、変更することはできません。 これにより、kube-apiserverの負荷が軽減されます。 詳細については、「不変設定マップ」をご参照ください。

Kubernetes 1.20の機能強化

コントロールプレーンの改善

  • 観察可能性。 メトリックは、要求操作および監視操作を監視するために収集される。 これは、制御平面コンポーネントの観測性を改善する。

  • 安定性。 クラスタの起動時に、etcdを過剰な要求から守るための保護が提供されます。 これにより、システムの安定性が向上する。

  • パフォーマンスの最適化。 インデックスは、リスト要求の処理を加速するために追加される。 これにより、kube-apiserverのCPU使用率が低下します。

Windowsコンテナーの機能強化

  • デフォルトでは、EndpointSlice機能が有効になっています。

  • デバイスプラグインがサポートされています。 詳細については、「デバイスプラグイン」をご参照ください。

パフォーマンスの最適化

Kubernetes 1.20.11では、kube-proxyは、カーネルバージョン4.19.91-23以降のAlibaba Cloud Linux 2と互換性があります。 IPVSモードを有効にした場合、conn_reuse_modeは0に設定されません。 詳細については、「IPVS」をご参照ください。

関連ドキュメント