|Index|SUSE Telco Cloud ドキュメント|Day 2運用|エッジ 3.6 移行
適用項目 SUSE Telco Cloud 3.6

57 エッジ 3.6 移行

このセクションでは、management および downstream クラスタを SUSE Telco Cloud 3.5 から SUSE Telco Cloud 3.6.0 へマイグレーションする方法を説明します。

重要
重要

クラスタのマイグレーションは、必ず latest Z-stream の SUSE Telco Cloud 3.5 リリースから実行してください。

必ず SUSE Telco Cloud 3.6.0 リリースへマイグレーションしてください。マイグレーション後のアップグレードについては、管理 (第58章 「管理クラスタ」) を参照してください。 セクション。

次の表に、さまざまな種類のクラスタとクラスタをアップグレードする方法を示します。

表 57.1: ダウンストリームクラスタの種類とアップグレード方法
クラスタのタイプメソッド

EIBでプロビジョニングされたクラスタ

詳細については57.1.3項 「Fleet」を参照してください。

Metal3でプロビジョニングされたクラスタ

詳細は ダウンストリームクラスタのアップグレード (59.3項 「ダウンストリームクラスターのアップグレード」) を参照してください。

57.1 管理クラスタ

この章の構成は次のとおりです。

57.1.1項 「前提条件」 - マイグレーション開始前に完了すべき前提条件の手順。

57.1.2項 「Upgrade Controller」 - management を使用して 第21章 「Upgrade Controller」 クラスタマイグレーションを実行する方法。

57.1.3項 「Fleet」 - management を使用して 第9章 「Fleet」 クラスタマイグレーションを実行する方法。

57.1.1 前提条件

57.1.1.1 ベアメタル Operator CRDのアップグレード

注記
注記

第11章 「Metal3」 チャートのアップグレードが必要なCAPI/Metal3管理クラスタにのみ適用されます。

Metal3 Helmチャートには、HelmのCRDディレクトリを活用することで、ベアメタル Operator (BMO) CRDが含まれています。

ただし、このアプローチには特定の制限があり、特にこのディレクトリ内のCRDをHelmを使用してアップグレードできないという点があります。詳細については、Helmマニュアルを参照してください。

その結果、Metal3を`SUSE Telco Cloud 3.6.0`互換バージョンにアップグレードする前に、ユーザーは基盤となるBMO CRDを手動でアップグレードする必要があります。

Helm`がインストールされ、`kubectl`がmanagement`クラスタを指すように設定されているマシンで、以下を実行します。

  1. BMO CRDを手動で適用します。

    helm show crds oci://registry.suse.com/edge/charts/metal3 --version 306.0.29+up0.15.0 | kubectl apply -f -

57.1.1.2 Metal3 CA証明書設定の移行

注記
注記

TLSを使用する外部メディアサーバーに対して追加の信頼済みCAを使用するMetal3デプロイメントにのみ適用されます。

Metal3 Helmチャートでは、信頼済みCA証明書の設定方法が変更されました。以前は、追加のCAは`tls-ca-additional`ブール値を持つシークレット(additionalTrustedCAs)を介して提供されていました。新しいバージョンでは、`global.trustedCAs`値によって参照される完全なCAバンドルを含むConfigMapが使用されます。

Metal3に対して追加の信頼済みCAを設定している場合は、シークレットベースのアプローチからConfigMapベースのアプローチに移行する必要があります。

  1. 既存のシークレットからCAバンドルを含むConfigMapを作成します。

    古いシークレットから証明書を抽出します。

    kubectl get secret tls-ca-additional -n metal3-system -o jsonpath='{.data}' | \
      jq -r 'to_entries[] | .value' | base64 -d > ca-bundle.pem

    オプション - システムCAバンドルを含める: Metal3のデプロイメントでパブリックCAも信頼する必要がある場合(HTTPS経由で外部リソースにアクセスする場合など)、カスタムCAに加えてシステムCAバンドルを含める必要があります。コンテナイメージからシステムCAバンドルを抽出し、カスタムCAの先頭に追加します。

    # Extract system CAs from a container image (using podman or docker)
    podman run --rm registry.suse.com/bci/bci-base:latest cat /etc/ssl/certs/ca-certificates.crt > system-cas.pem
    
    # Combine system CAs with your custom CAs
    cat system-cas.pem ca-bundle.pem > combined-ca-bundle.pem
    mv combined-ca-bundle.pem ca-bundle.pem
    重要
    重要

    システムCAバンドルを含める場合、それを最新の状態に保つ責任はユーザーにあります。コンテナイメージ内のシステムCAは、CA証明書の期限切れや失効に伴い、時間の経過とともに古くなる可能性があります。更新されたコンテナイメージからシステムCAバンドルを再抽出して、定期的に更新する必要があります。

    最終的なCAバンドルを使用してConfigMapを作成します。

    kubectl create configmap tls-ca-bundle -n metal3-system --from-file=ca-bundle.pem=ca-bundle.pem
  2. 新しいConfigMap参照を使用するようにMetal3 Helm値を更新します。

    変更前:

    global:
      additionalTrustedCAs: true

    宛先:

    global:
      trustedCAs: tls-ca-bundle
  3. 新しい構成でMetal3 Helmチャートをアップグレードした後、古いシークレットを削除できます。

    kubectl delete secret tls-ca-additional -n metal3-system

57.1.2 Upgrade Controller

重要
重要

Upgrade Controller`は現在、*非エアギャップ(された)管理*クラスターに対するSUSE Telco Cloud`リリース移行のみをサポートしています。

このセクションでは、以下のトピックについて説明します。

57.1.2.1項 「前提条件」 - `Upgrade Controller`に固有の前提条件。

57.1.2.2項 「移行手順」 - Upgrade Controller`を使用してmanagement`クラスターを新しい`SUSE Telco Cloud`バージョンに移行する手順。

57.1.2.1 前提条件

57.1.2.1.1 SUSE Telco Cloud 3.6 Upgrade Controller

Upgrade Controller`を使用する前に、目的のSUSE Telco Cloud`リリースへの移行が可能なバージョンで実行されていることを確認する必要があります。

これには次の操作を行います。

  1. 以前の`Upgrade Controller`リリースから`SUSE Telco Cloud`が既にデプロイされている場合は、そのチャートをアップグレードしてください。

    helm upgrade upgrade-controller -n upgrade-controller-system oci://registry.suse.com/edge/charts/upgrade-controller --version 306.0.4+up0.1.3
  2. `Upgrade Controller`がデプロイされて*いない*場合は、21.3項 「Upgrade Controllerのインストール」に従ってください。

57.1.2.2 移行手順

Upgrade Controller`を使用したmanagement`クラスターの移行は、基本的にアップグレードの実行と似ています。

唯一の違いは、UpgradePlan`で3.6.0`リリースバージョンを*指定する必要がある*点です。

apiVersion: lifecycle.suse.com/v1alpha1
kind: UpgradePlan
metadata:
  name: upgrade-plan-mgmt
  # Change to the namespace of your Upgrade Controller
  namespace: CHANGE_ME
spec:
  releaseVersion: 3.6.0

上記の`UpgradePlan`を使用して移行を行う方法については、Upgrade Controller アップグレード処理 (58.1項 「Upgrade Controller」)を参照してください。

57.1.3 Fleet

注記
注記

可能な限り、移行には57.1.2項 「Upgrade Controller」を使用してください。

`Upgrade Controller`でカバーされていないユースケースについてのみ、このセクションを参照してください。

Fleet`を使用したmanagement`クラスターの移行は、基本的にアップグレードの実行と似ています。

*主な*違いは以下の通りです。

  1. Fleetは、`suse-edge/fleet-examples`リポジトリのrelease-3.6.0リリースから*使用する必要があります*。

  2. アップグレードが予定されているチャートは、SUSE Telco Cloud 3.6.0`リリースと互換性のあるバージョンに*アップグレードする必要があります*。SUSE Telco Cloud 3.6.0`コンポーネントのリストについては、75.4項 「リリース 3.6.0」を参照してください。

重要
重要

`SUSE Telco Cloud 3.6.0`移行を確実に成功させるため、ユーザーは上記で概説した点に従うことが重要です。

57.2 ダウンストリームクラスタ

57.2.1項 「Fleet」 - downstream を使用して 第9章 「Fleet」 クラスタマイグレーションを実行する方法。

57.2.1 Fleet

`downstream`を使用した`Fleet`クラスタの移行は、基本的にアップグレードの実行と似ています。

*主な*違いは以下の通りです。

  1. Fleetは、`suse-edge/fleet-examples`リポジトリのrelease-3.6.0リリースから*使用する必要があります*。

  2. アップグレードが予定されているチャートは、SUSE Telco Cloud 3.6.0`リリースと互換性のあるバージョンに*アップグレードする必要があります*。SUSE Telco Cloud 3.6.0`コンポーネントのリストについては、75.4項 「リリース 3.6.0」を参照してください。

重要
重要

`SUSE Telco Cloud 3.6.0`移行を確実に成功させるため、ユーザーは上記で概説した点に従うことが重要です。