Skip to main content
OnCommand Workflow Automation 5.1
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

コマンドを作成します

共同作成者

タスクに適した定義済みの WFA コマンドがない場合は、 WFA コマンドを作成してワークフロー内の特定のタスクを完了できます。

必要なもの

PowerShell または Perl を使用して、コマンドに必要なコードを記述する方法を理解しておく必要があります。

手順
  1. [* ワークフローデザイン > コマンド *] をクリックします。

  2. をクリックします 新しいアイコン をクリックします。

  3. [ 新規コマンド定義 * ( New Command Definition ) ] ダイアログボックスの [ * プロパティ * ( * Properties * ) ] タブで、 [ * 名前 * ( * Name * ) ] 、 [ * 概要 * ( * Timeout * ) ] 、および [ * タイムアウト * ( * Timeout * ) ] フィールドに必要な詳細を入力

    1. [*String Representation *] フィールドに、 MVEL 構文を使用してコマンドの文字列表現を入力します。

      「 + VolumeName+" ⇒ 」 + 「 SnapshotName + 」

    コマンドの文字列表現を使用して、計画および実行時にワークフロー設計で表示する情報を表示します。コマンドの文字列表現では、コマンドのパラメータのみを使用する必要があります。

    1. * オプション: * 待機コマンドを作成している場合は、 * コマンドタイプ * セクションで * 待機状態 * を選択し、 * 待機間隔( s ) * フィールドに必要な値を設定します。

  4. [ コード *] タブで、次の手順を実行します。

    1. コマンドに必要なスクリプト言語を * スクリプト言語 * リストから選択します。

      [+] をクリックして、コマンドの追加言語を選択できます。

    2. [ 選択した言語 ] タブにコマンドの適切なコードを入力します。

      PowerShell スクリプトでユーザ入力にパスワードタイプを使用する場合は、パラメータのエイリアスを作成し、属性に「 _Password 」を含める必要があります。Perl スクリプトの場合は、 * パラメーター定義 * ( Parameters Definition )タブで、タイプを * パスワード * として指定できます。

      メモ コマンドエディタでは、「 < 」、「 &amp" 」、「 XML タグ」 <> 」という特殊文字はサポートされていません。
    param (
      [parameter(Mandatory=$false, HelpMessage="Specify an AD administrator password.")]
      [Alias("ADAdminPassword_Password")]  [string]$ADAdminPassword
    )
  5. [ パラメーター定義( * Parameters Definition ) ] タブで、次の手順を実行します。

    1. パラメータ定義テーブルに値を入力するには ' パラメータ検出 (Discover Parameters) * をクリックします

      パラメータとその属性はコードから抽出され、表に表示されます。たとえば、 Array パラメータと VolumeName パラメータは次のコードから抽出されます。

    param (
      [parameter(Mandatory=$true, HelpMessage="Array name or IP address")]
      [string]$Array,
    
      [parameter(Mandatory=$true, HelpMessage="Volume name")]
      [string]$VolumeName,
    )
    1. パラメータの概要 列をクリックして、概要 を編集します。

      このタブで他のフィールドを編集することはできません。

  6. [* パラメーターマッピング * ( * Parameters Mapping * ) ] タブで、パラメーターごとに次の手順を実行します。

    1. [ * タイプ * ( * Type * ) ] 列から、適切な辞書オブジェクトを選択します。

    2. [ * 属性 * ( * Attribute * ) ] 列で、リストからディクショナリオブジェクトの適切な属性を入力または選択します。

      属性を入力したら、ピリオド( . )を入力し、そのオブジェクトの別の属性を含めることができます。

      type に「 cm_storagebstorageVolume 」を、 AggregateName パラメータの属性に「 aggregate.name 」を入力します。

    3. [ * オブジェクト名 * ( * Object Name * ) ] 列に、オブジェクト名を入力します。

      オブジェクト名は、ワークフローでコマンドの詳細を指定するときに、 [< コマンド > のパラメータ ] ダイアログボックスのタブの下にパラメータをグループ化するために使用されます。

    ワークフローでコマンドの詳細を指定する場合、 [ コマンドパラメータ ] ダイアログボックスの [ その他のパラメータ *] タブにマップされていないパラメータが表示されます。

  7. 予約 * タブで、 SQL クエリを使用して予約スクリプトを入力し、スケジュールされたワークフローの実行中にコマンドで必要なリソースを予約します。

    1. * オプション: * 予約リプレゼンテーション * フィールドに、 MVEL 構文を使用して予約の文字列表現を入力します。

      SnapMirror ラベルのルールを追加します

      「 SnapMirrorLabel[.code]` 」を SnapMirror ポリシー「」に割り当てます

      "+PolicyName +""`

      ストリング表現は、予約ウィンドウで予約されているリソースの詳細を表示するために使用されます。

    メモ データベースに対して、 cm_storage 、 cm_performance 、 storage 、 performance 、 vc 以外の操作を実行しないでください。 およびカスタムスキーム。
  8. * オプション: * Verification * タブで、 SQL クエリを入力して、コマンドがデータソースと WFA キャッシュに影響を及ぼしていないかどうかを確認し、予約を削除できるようにします。

    入力する SQL クエリは 'SQL SELECT 文だけで構成できます

    1. 検証スクリプトをテストするには、 [ 検証のテスト ] をクリックします。

    2. [* Verification] ダイアログボックスで、必要なテストパラメータを入力します。

    3. 予約データを使用して検証スクリプトをテストしない場合は、 [ テスト * で予約データを使用する ] フィールドをクリアします。

    4. [ * テスト * ] をクリックします。

    5. テスト結果を確認したら、ダイアログボックスを閉じます。

  9. * Test * をクリックしてコマンドをテストします。

  10. * テストコマンド < コマンド名 >* ダイアログボックスで、 * テスト * をクリックします。

    テストの結果は、ダイアログボックスのログメッセージセクションに表示されます。

  11. [ 保存( Save ) ] をクリックします。