このインストール・ガイドでは、WebLogic Kubernetes Operatorのインスタンスを構成、インストール(デプロイ)、更新、アップグレードおよびアンインストールする方法について説明します。 単一インスタンスは、構成方法に応じて、複数のネームスペースで複数のドメインを管理できます。 Kubernetesクラスタは複数のオペレータをホストできますが、ネームスペースごとに1つしかホストできません。
オペレータをインストールする前に、その前提条件の各要件が満たされていることを確認してください。 「インストールの準備」を参照してください。
デフォルトでは、オペレータをインストールすると、「変換webフック」のデプロイメントおよびサポート・リソースも構成され、変換webフックがデプロイされます。 変換webフック・デプロイメントは、オペレータ・バージョン4.xに必要です。変換Webフックがすでにインストールされている場合は、helm install
コマンドでHelm構成値operatorOnly
をtrue
に設定して、変換Webフック・インストールをスキップします。 詳細は、「変換webフックのインストール」を参照してください。
「前提条件」を満たした後、次の手順に従って、helm install
コマンドとオペレータHelmチャートを使用してオペレータをインストールします。
最小限次を指定する必要があります:
一般的なHelmリリース名はweblogic-operator
です。 オペレータのサンプルとドキュメントでは、多くの場合sample-weblogic-operator
が使用されます。
Helmチャートのデフォルト構成値は、次のいずれかを実行してオーバーライドできます:
--value
オプションを指定します。--set
オプションを使用して、個々の値をHelmコマンドラインで直接オーバーライドします。helm install
コマンドラインから--namespace
引数を指定して、オペレータがインストールされるネームスペースを指定します。 指定しない場合、デフォルトでdefault
に設定されます。 ネームスペースがまだ存在しない場合は、Helmによって自動的に作成されます(Kubernetesによって、新しいネームスペースにdefault
サービス・アカウントが作成されます)。ただし、リリースがアンインストールされたときに、Helmによってネームスペースまたはサービス・アカウントは削除されません。 ネームスペースがすでに存在する場合は、Helmによって使用されます。 これらは、Helmの標準的な動作です。
同様に、デフォルトのserviceAccount
構成値をオーバーライドして、オペレータが使用するオペレータのネームスペースにサービス・アカウントを指定できます。 一般的なユースケースでは、ネームスペースdefault
サービス・アカウントで十分です。 別のサービス・アカウント(推奨)を使用する場合は、オペレータのHelmチャートをインストールする前に、オペレータのネームスペースおよびサービス・アカウントを作成する必要があります(手順は、「インストールの準備」を参照してください)。
たとえば、Helm 3.xを次の設定で使用します:
設定 | 値およびノート |
---|---|
Helmリリース名 | sample-weblogic-operator (任意の名前を選択できます) |
Helmチャート・リポジトリURL | https://oracle.github.io/weblogic-kubernetes-operator/charts |
Helmチャートのリポジトリ名 | weblogic-operator |
namespace |
sample-weblogic-operator-ns |
$ kubectl create namespace sample-weblogic-operator-ns
この書式を使用してHelmチャート・オペレータにアクセスします。helm repo add <helm-chart-repo-name> <helm-chart-repo-url>
。 Helmチャートの各バージョンは、一致するバージョンのオペレータ・イメージを使用してデフォルト設定されます。
$ helm repo add weblogic-operator https://oracle.github.io/weblogic-kubernetes-operator/charts --force-update Â
オペレータHelmチャートに関する情報を取得するには、helm show
コマンドを次の形式で使用: helm show <helm-chart-repo-name>/weblogic-operator
。 たとえば、リポジトリの名前がweblogic-operator
であるオペレータHelmチャートの場合:
$ helm show chart weblogic-operator/weblogic-operator
$ helm show values weblogic-operator/weblogic-operator
Helmチャート・リポジトリからインストールできるオペレータのバージョンをリストするには:
$ helm search repo weblogic-operator/weblogic-operator --versions
指定したバージョンのHelmチャートおよびオペレータの場合、--version <value>
オプションをhelm install
とともに使用して必要なバージョンを選択し、latest
値がデフォルトになります。
この形式を使用してオペレータをインストール: helm install <helm-release-name> <helm-chart-repo-name>/weblogic-operator ...
$ helm install sample-weblogic-operator \
weblogic-operator/weblogic-operator \
--namespace sample-weblogic-operator-ns \
--wait
これにより、sample-weblogic-operator-ns
ネームスペースにsample-weblogic-operator
という名前のHelmリリースが作成され、オペレータのデプロイメントとサポート・リソースが構成され、オペレータがデプロイされます。
オペレータのインストールを検証するには、helm install
コマンドの出力を調べます。
オペレータがデプロイされて実行されているかどうかを確認するには、「トラブルシューティング」を参照してください。
NOTES:
kubernetesPlatform
を設定していませんが、これは環境に必要な場合があります。 「プラットフォーム設定を決定」を参照してください。 =
)の前にバックスラッシュ(\
)をドメイン・ネームスペース・ラベル・セレクタに含めることはできません。 バックスラッシュ(\
)は、前の例に示すように、--set
を使用してコマンドラインでセレクタを指定する場合にのみ必要です。 デフォルトでは、オペレータがクラスタに初めてインストールされたときに、WebLogicドメイン・リソース変換webフックが自動的にインストールされ、オペレータが初めてアンインストールされたときに削除されます。
ノート: 複数のオペレータを使用している場合、またはオペレータが実行されていない場合でもドメインを作成または変更できるようにするには、このライフサイクルを微調整する必要があります。 変換webフック・インストールの詳細は、「変換webフックをインストール」を参照してください。
オペレータがドメイン・リソースをチェックするネームスペースを構成または変更するには、「ネームスペース管理」を参照してください。
実行中のオペレータの設定は、helm upgrade
コマンドを使用して更新できます。
ほとんどのユースケースでは、helm upgrade
コマンドラインで--reuse-values
を指定して、指定した値がオペレータで引き続き使用されるようにする必要があります(そうしないと、オペレータはすべての値に対してデフォルトが使用されます)。
更新の例:
オペレータのドメイン・リソースがデプロイされ、実行されている間に、3.xオペレータをアップグレードできます。 次の手順は、追加バージョンがリリースされたときにアップグレード・オペレータに適用されます。
オペレータをアップグレードする場合:
helm repo add
を使用して、新しいバージョンのHelmチャートを指定します。helm upgrade
コマンドを--reuse-values
パラメータとともに使用します。image
値を指定します。新しいimage
値を指定するための根拠は、新しいバージョンのHelmチャートの場合でも、--reuse-values
はインストール時の以前のimage
値を保持するためです。 アップグレードするには、新しいオペレータ・イメージ・バージョンを使用するには、image
値をオーバーライドする必要があります。
ノート: 3.xオペレータを4.xにアップグレードする場合、domainNamespaceSelectionStrategy
のデフォルト値がList
からLabelSelector
に変更されたため、ネームスペースのリストを指定するのみでなく、オペレータが監視するネームスペースにラベルを付ける必要があります。 詳細については、「ネームスペース管理」を参照してください。
例えば:
$ helm repo add weblogic-operator https://oracle.github.io/weblogic-kubernetes-operator/charts --force-update
$ helm upgrade sample-weblogic-operator \
weblogic-operator/weblogic-operator \
--reuse-values \
--set image=ghcr.io/oracle/weblogic-kubernetes-operator:4.2.8
\
--namespace sample-weblogic-operator-ns \
--wait
3.xオペレータをアップグレードしても、元のオペレータによって作成された実行中のWebLogic Serverインスタンスは自動的にロールされません。 これは不要で、そのようなインスタンスはアップグレード中に中断することなく実行を継続します。
3.xオペレータを4.0にアップグレードすると、同じネームスペースにWebLogicドメイン・リソース変換webフック・デプロイメントとその関連リソースも作成されます。 変換webフック・デプロイメントが他のネームスペースにすでに存在する場合、新しい変換webフック・デプロイメントは作成されません。 webフックは、既存のドメインを3.xスキーマから4.0スキーマに自動的かつ透過的にアップグレードします。 詳細は、「WebLogicドメイン・リソース変換webフック」を参照してください。
オペレータをアンインストールした場合、そのオペレータが管理しているドメイン実行されますが、オペレータが管理していたドメイン・リソースに対する変更は検出されません。または自動的に処理され、このようなドメインをクリーンアップする場合は、ドメインのリソース(ドメイン、ポッド、サービスなど)をすべて手動で削除する必要があります。
helm uninstall
コマンドは、オペレータ・リリースとその関連リソースをKubernetesクラスタから削除するために使用します。 helm uninstall
コマンドで使用されるHelmリリース名とネームスペースは、helm install
コマンドで使用されるものと同じリリース名である必要があります(「オペレータのインストール」を参照)。
たとえば、Helmリリース名がsample-weblogic-operator
で、オペレータ・ネームスペースがsample-weblogic-operator-ns
の場合:
$ helm uninstall sample-weblogic-operator -n sample-weblogic-operator-ns
Helmチャートがインストールされる前に、オペレータのネームスペースまたはサービス・アカウントが存在しなかった場合、Helmではhelm install
中に作成されますが、helm uninstall
では削除されません。
オペレータ・デプロイメントを削除した後、ドメインおよびクラスタのカスタム・リソース定義(CRD)が不要になった場合は、それらも削除する必要があります:
$ kubectl delete customresourcedefinition domains.weblogic.oracle
$ kubectl delete customresourcedefinition clusters.weblogic.oracle
カスタム・リソース定義が共有されていることに注意してください。 同じクラスタ内に他のオペレータがある場合、またはドメイン・リソースを実行している場合は、これらを削除しないでください。
オペレータ・バージョン4.0以降では、オペレータをアンインストールすると、変換webフック・デプロイメントおよび関連するリソースもデフォルトで削除されます。 したがって、複数のオペレータが実行されている場合、デフォルトでは、一方のオペレータのアンインストールがもう一方のオペレータに影響します。 アンインストールでは、ドメインCRD内の変換定義は削除されないため、weblogic.oracle/v8
スキーマを使用してドメインを作成できません。 オペレータのアンインストールを防止する場合
これらの副作用の場合は、次の2つのオプションのいずれかを使用します:
webhookOnly=true
Helm構成値を使用する別のネームスペースの「変換webフックをインストール」。helm install
コマンドを使用して、オペレータのインストール中にpreserveWebhook=true
Helm構成値を使用します。詳細は、変換webフックのアンインストールの詳細は、「変換webフックのアンインストール」を参照してください。
オペレータのインストール、監視するネームスペースの設定、監視対象のネームスペースへのドメイン・リソースのデプロイおよびオペレータのアンインストールの例は、「クイック・スタート」を参照してください。