このドキュメントでは、WebLogicドメイン・ホームおよびログ・ファイルのストレージとして使用できるKubernetes PersistentVolumeおよびPersistentVolumeClaimの設定方法を示します。 PersistentVolumeは、複数のWebLogicドメインで共有することも、特定のドメイン専用にすることもできます。
ボリュームの作成を続行する前に、次の前提条件を満たす必要があります:
PersistentVolumesは、NFSサーバーやローカル・ディレクトリ・パスなど、様々なストレージのロケーションを指すことができます。 使用可能なオプションのリストについては、「Kubernetesのドキュメント」を参照してください。
HostPathに関するノート: たとえば、単一ノードのKubernetesクラスタは、概念アクティビティのテストや証明に使用できますが、HOST_PATH
は最も単純な構成を提供します。 マルチ・ノードKubernetesクラスタでは、Kubernetesクラスタ内のすべてのノードによってマウントされた共有ストレージにあるHOST_PATH
が最も単純な構成です。 ノードに共有ストレージがない場合、NFSはおそらくもっとも広く使用可能なオプションです。 参照表には、他のオプションもリストされています。
オペレータには、ドメインのPersistentVolumeおよびPersistentVolumeClaimを作成するためのサンプル・スクリプトが用意されています。 このスクリプトは、ドメインを作成する前に実行する必要があります。 オペレータは、Domain on PV 「ドメイン・ホーム・ソース・タイプ」のオペレータ・バージョン4.1.0から、ドメインの初期化中にPVとPVCを作成するオプションを提供します。 詳細は、ドメイン・リソースschemaの「Domain on PVドキュメント」またはdomain.spec.configuration.initializeDomainOnPV
の項を参照してください。
HOST_PATH
プロバイダは、PersistentVolumeを作成する最も単純なケースです。 Kubernetesマスターにディレクトリを作成し、適切な権限を持っていることを確認する必要があります:
$ mkdir -m 777 -p /path/to/domain1PersistentVolume
永続的なボリュームおよびクレームについては、YAMLファイルを参照してください。 PersistentVolumeごとに、PersistentVolume YAMLファイルとPersistentVolumeClaim YAMLファイルを作成する必要があります。 次の例では、2つのYAMLテンプレートがあります。1つはボリューム用、もう1つはクレーム用です。 前述のとおり、これらは特定のドメイン専用にすることも、複数のドメインで共有することもできます。 ボリュームを特定のドメイン専用にするユースケースでは、weblogic.domainUID=[domain name]
でラベル付けすることをお薦めします。 これにより、その特定のドメインに関連付けられたリソースの検索およびクリーンアップが容易になります。
YAMLテンプレートのサンプルは、「PersistentVolumesの例」を参照してください。
詳細については、Kubernetes PV/PVCの例「こちら」を参照してください。
PersistentVolumeが作成されたことを確認するには、次のコマンドを使用します:
$ kubectl describe pv <persistent volume name>
$ kubectl describe pvc -n NAMESPACE <persistent volume claim name>
この項では、スクリプトの実行中に発生する可能性のある一般的な問題とその解決方法について説明します。
テスト中に発生する最も一般的な問題は、PersistentVolumeプロバイダの不適切な構成である可能性があります。 PersistentVolumeは、すべてのKubernetesノードからアクセスできる必要があり、Read/Write/Many
としてマウントできる必要があります。 そうでない場合、PersistentVolumeの作成は失敗します。
最も簡単なケースは、HOST_PATH
プロバイダが使用される場合です。 これは、いずれかのKubernetesノードを使用するか、すべてのノードの同じロケーション(NFSマウントなど)にある共有ストレージにあるHOST_PATH
を使用して行うことができます。 この場合、PersistentVolumeに使用されるパスのアクセス権ビットは777に設定されている必要があります。