機械翻訳について

モデル・フィルタ

WebLogic Deploy Toolingでは、モデル・フィルタを使用してドメイン・モデルを操作できます。 バリデートとドメインへの適用前に、Create Domain、Update DomainおよびDeploy Applications Toolによって、モデルの読取り後にフィルタが適用されます。 Discover Domain Toolは、モデルがバリデートおよび書込みされる前に、検出後にモデルにフィルタを適用します。

モデル・フィルタはJythonで記述され、対応するバージョンのWLSTで使用されるバージョンと互換性がある必要があります。 フィルタはメソッドfilter_model(model)を実装する必要があります。これは、ドメイン・モデルをJythonディクショナリとして単一の引数として受け入れます。 このメソッドでは、必要なドメイン・モデルを調整できます。 フィルタは、WebLogic Deploy Toolingによってアクセス可能なかぎり、任意のディレクトリに格納できます。

次のフィルタ例( fix-password.py)は、SecurityConfiguration WLSTフォルダ内の2つの属性のパスワードを設定します。

def filter_model(model):
   if model and 'topology' in model:
       if 'SecurityConfiguration' in model['topology']:
           model['topology']['SecurityConfiguration']['CredentialEncrypted'] = 'welcome1'
           model['topology']['SecurityConfiguration']['NodeManagerPasswordEncrypted'] = 'welcome1'
           print 'Replaced SecurityConfiguration password'
       else:
           print 'SecurityConfiguration not in the model'

モデル・フィルタは、WLSDEPLOY_HOME/libディレクトリにmodel_filters.jsonファイルを作成することによって構成されます。 このファイルには、特定のツールに適用されるフィルタ用の個別のセクションがあります。

もう1つのオプションは、「カスタム構成」ディレクトリにモデル・フィルタを構成することです。 $WDT_CUSTOM_CONFIGディレクトリにmodel_filters.jsonファイルを作成します。

この例では、Create Domain Tool用に2つのフィルタ(fix-password.pyno-mail.py)を構成し、Discover Domainツール用に1つのフィルタを構成します。

{
  "create": [
    { "name": "fixPassword", "path": "/home/user/fix-password.py" },
    { "name": "noMail", "path": "/home/user/no-mail.py" }
  ],
  "deploy": [
  ],
  "discover": [
    { "name": "noMail", "path": "/home/user/no-mail.py" }
  ],
  "update": [
  ]
}

内部フィルタ

ドメイン・モデルに対する変更を実行するために、WebLogic Deploy Toolingによって内部フィルタが提供されます。 ターゲット構成ファイルでIDで参照されます。 この例では、Create Domain Toolで使用する内部フィルタwko_filterおよびユーザー定義フィルタfix-passwordの使用を示します。

{
  "create": [
    { "name": "fixPassword", "path": "/home/user/fix-password.py" },
    { "id": "wko_filter" }
  ]
}

内部フィルタは、他のタイプのフィルタのようにコピーまたは変更できません。

内部フィルタwko_filter

このフィルタは、WebLogic Kubernetes Operatorで使用するドメイン・モデルを準備します。 次の変更が実行されます:

  • オンライン・モードでのみデプロイできる属性を削除
  • 動的クラスタのCalculatedListenPorts属性をfalseに設定
  • 静的クラスタ内のサーバーに異なるリスニング・ポートがある場合に警告