オペレータ・バージョン4.0のドメインCustomResourceDefinitionは、以前のオペレータ・リリースから大きく変更されました。 このため、CRDのドメイン・カスタム・リソースのAPIバージョンをweblogic.oracle/v8
からweblogic.oracle/v9
に更新しました。 APIバージョンweblogic.oracle/v8
のドメインを引き続きサポートし、完全な下位互換性を提供します。 最新のweblogic.oracle/v9
スキーマで導入された新しいフィールドを使用する場合は、ドメイン・リソースのYAMLファイルでAPIバージョンを更新する必要があります。
weblogic.oracle/v8
スキーマ・ドメイン・リソースの自動アップグレードこの項で説明する自動アップグレードは、weblogic.oracle/v8
スキーマ補助イメージ構成を、initコンテナやボリュームなどの低レベルのKubernetesスキーマに変換します。 生成された低レベル・スキーマに依存するかわりに、Oracleでは、補助イメージ「構成」の項で説明されているように、補助イメージに簡略化されたweblogic.oracle/v9
スキーマ構成を使用することをお薦めします。
4.0オペレータは、weblogic.oracle/v8
バージョンのスキーマを持つドメイン・リソースのシームレスなアップグレードを提供します。 4.0オペレータによって管理されるネームスペースでweblogic.oracle/v8
スキーマを持つドメイン・リソースYAMLファイルを使用してドメインを作成する場合、「オペレータのバージョン3.xから4.xへのアップグレード」ドキュメントで説明するWebLogic Domain resource conversion webhook
は、ドメイン・リソースのweblogic.oracle/v9
スキーマへの自動アップグレードを実行します。 変換webフック・ランタイムは、weblogic.oracle/v8
構成をオペレータ4.0の同等の構成に変換します。 同様に、「オペレータ・バージョンのアップグレード」の場合、weblogic.oracle/v8
スキーマを持つドメイン・リソースがシームレスにアップグレードされます。
weblogic.oracle/v8
スキーマ・ドメイン・リソースの手動アップグレードこの項で説明する手動アップグレード・ツールは、weblogic.oracle/v8
スキーマ補助イメージ構成を、initコンテナやボリュームなどの低レベルのKubernetesスキーマに変換します。 生成された低レベル・スキーマに依存するかわりに、Oracleでは、補助イメージ「構成」の項で説明されているように、補助イメージに簡略化されたweblogic.oracle/v9
スキーマ構成を使用することをお薦めします。
オペレータ・バージョン4.0からは、スタンドアロン・コマンドライン・ツールを使用して、weblogic.oracle/v8
スキーマを持つドメイン・リソースYAMLファイルをweblogic.oracle/v9
スキーマに手動でアップグレードできます。 アップグレードしたドメイン・リソースYAMLファイルをソース制御リポジトリに保持する必要がある場合は、このツールを使用して、アップグレードされたドメイン・リソースYAMLファイルを生成できます。
curl -m 120 -fL https://github.com/oracle/weblogic-kubernetes-operator/releases/latest/download/domain-upgrader.jar -o ./domain-upgrader.jar
./weblogic-kubernetes-operator/target
にJARファイルを作成できます(ソースからのビルドを参照)。JAVA_HOME
環境変数をJavaインストールのロケーションに設定します(Javaバージョン11+)。ドメイン・アップグレード・ツールは、指定されたV8スキーマ・ドメイン・リソース入力ファイルをアップグレードし、-d
パラメータを使用して指定されたディレクトリにアップグレードされたドメイン・リソースYAMLファイルを書き込みます。
Usage: java -jar domain-upgrader.jar <input-file> [-d <output_dir>] [-f <output_file_name>] [-o --overwriteExistingFile] [-h --help]
パラメータ | 定義 | デフォルト |
---|---|---|
input-file |
(必須)変換するオペレータ3.x/V8ドメイン・リソースYAMLファイルの名前。 | |
-d , --outputDir |
変換されたファイルをツールが配置するディレクトリ。 | 入力ファイルのディレクトリ。 |
-f , --outputFile |
変換されたファイルの名前。 | 入力ファイル名の後ろに"__converted." 、その後に入力ファイル拡張子が続きます。 |
-h 、--help |
ヘルプ・メッセージを出力します。 | |
-o , --overwriteExistingFile |
既存の出力ファイルがある場合は、上書きを有効にします。 |
-f
パラメータを使用して出力ファイル名を指定しない場合、ツールによって、入力ファイル名のベース名に"__converted."
および入力ファイル拡張子を追加してファイル名が生成されます。 たとえば、アップグレードするV8ドメイン・リソースYAMLファイルの名前が現在のディレクトリでdomain-v8.yaml
であるとします:
$ java -jar /tmp/domain-upgrader.jar domain-v8.yaml -d /tmp -f domain-v9.yaml
{"timestamp":"2022-04-18T23:11:09.182227Z","thread":1,"level":"INFO","class":"oracle.kubernetes.operator.DomainUpgrader","method":"main","timeInMillis":1650323469182,"message":"Successfully generated upgraded domain custom resource file 'domain-v9.yaml'.","exception":"","code":"","headers":{},"body":""}
前述の例では、ツールはアップグレードしたファイルを/tmp
ディレクトリにdomain-v9.yaml
という名前で書き込みます。
$ ls -ltr /tmp/domain-v9.yaml
-rw-r----- 1 user dba 2818 Apr 18 23:11 /tmp/domain-v9.yaml
手動アップグレード・ツールでは、weblogic.oracle/v8
スキーマの補助イメージ構成を変換するときに、compat-
というプレフィクスが付いた名前のinitコンテナが作成されます。 オペレータは、イントロスペクタ・ジョブ・ポッドでcompat-
またはwls-shared-
で始まる名前を持つinitコンテナのみを生成します。 生成された初期化コンテナの名前を変更するには、新しい名前の先頭がcompat-
またはwls-shared-
である必要があります。