手動アップグレード
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サービスを再起動
例えば、現在の安定版リリースにアップグレードするには:
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
(または希望する場所)にコピー -
古いk3sバイナリを停止
-
新しいk3sバイナリを起動