手動アップグレード
K3sをアップグレードするには、インストールスクリプトを使用するか、希望するバージョンのバイナリを手動でインストールすることができます。
|
アップグレードする際は、まずサーバーノードを1つずつアップグレードし、その後にエージェントノードをアップグレードしてください。 |
リリースチャンネル
インストールスクリプトを使用したアップグレードや、自動アップグレード機能を使用したアップグレードは、異なるリリースチャンネルに結びつけることができます。以下のチャンネルが利用可能です:
| チャンネル | 説明 |
|---|---|
stable |
(デフォルト) Stableは本番環境に推奨されます。これらのリリースはコミュニティによるハードニング期間を経ています。 |
latest |
Latestは最新の機能を試すのに推奨されます。これらのリリースはまだコミュニティによるハードニング期間を経ていません。 |
v1.26 (例) |
各Kubernetesのマイナーバージョンに結びついたリリースチャンネルがあり、サポート終了バージョンも含まれます。これらのチャンネルは最新のパッチを選択しますが、必ずしも安定版リリースではありません。 |
チャンネルの包括的かつ最新のリストについては、https://update.k3s.io/v1-release/channels[k3sチャンネルサービスAPI]を参照してください。チャンネルの動作に関する技術的な詳細については、https://github.com/rancher/channelserver[channelserverプロジェクト]を参照してください。
|
K3sの新しいバージョンにアップグレードする際には、https://kubernetes.io/docs/setup/release/version-skew-policy/[Kubernetesバージョンスキューポリシー]が適用されます。アップグレード時に中間のマイナーバージョンをスキップしないように計画を立ててください。system-upgrade-controller自体は、Kubernetesバージョンのサポートされていない変更を防ぐことはありません。 |
インストールスクリプトを使用してK3sをアップグレードする
古いバージョンのK3sをアップグレードするには、インストールスクリプトを再実行し、最初にインストールスクリプトを実行したときと同じ構成オプションを使用します。
|
Note
構成ファイルの内容はインストールスクリプトによって管理されません。 インストールスクリプトから独立した構成を希望する場合は、環境変数や引数をインストールスクリプトに渡すのではなく、構成ファイルを使用するべきです。 |
インストールスクリプトを実行すると、以下のことが行われます:
-
新しいk3sバイナリをダウンロード
-
インストールスクリプトに渡された引数を反映するようにsystemdユニットまたはopenrc initスクリプトを更新
-
k3sサービスを再起動
|
Containers for Pods continue running even when K3s is stopped. The install script does not drain or cordon the node before restarting K3s. If your workload is sensitive to brief API server outages, you should manually drain and cordon the node using |
例えば、現在の安定版リリースにアップグレードするには:
curl -sfL https://get.k3s.io | <EXISTING_K3S_ENV> sh -s - <EXISTING_K3S_ARGS>
特定のチャンネル(例えばlatest)の新しいバージョンにアップグレードしたい場合は、チャンネルを指定できます:
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=latest <EXISTING_K3S_ENV> sh -s - <EXISTING_K3S_ARGS>
特定のバージョンにアップグレードしたい場合は、以下のコマンドを実行できます:
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=vX.Y.Z+k3s1 <EXISTING_K3S_ENV> sh -s - <EXISTING_K3S_ARGS>
|
新しいバージョンのk3sをダウンロードするだけで起動しない場合は、 |
バイナリを使用してK3sをアップグレードする
K3sを手動でアップグレードするには、希望するバージョンのK3sバイナリをダウンロードし、既存のバイナリを新しいものに置き換えます。
-
リリースから希望するバージョンのK3sバイナリをダウンロード
-
ダウンロードしたバイナリを
/usr/local/bin/k3s(または希望する場所)にコピー -
Restart the k3s or k3s-agent service or restart the k3s process (binary)
|
Containers for Pods continue running even when K3s is stopped. It is generally safe to restart K3s without draining pods and cordoning the node. If your workload is sensitive to brief API server outages, you should manually drain and cordon the node using |