ジョブの作成

データ・サイエンスでジョブを作成して実行します。

ジョブに必要なポリシー、認証および認可を作成していることを確認します。

始める前に:

  • ジョブ・アーティファクト・ファイルを作成するか、カスタム・コンテナを構築します。

  • ジョブ・ログを格納および管理するには、ロギングについて学習します

  • ストレージ・マウントを使用するには、オブジェクト・ストレージ・バケットまたはOCI File Storage Service (FSS)マウント・ターゲットおよびエクスポート・パスが必要です。

    FSSを使用するには、まずファイル・システムおよびマウント・ポイントを作成する必要があります。カスタム・ネットワーク・オプションを使用し、マウント・ターゲットとノートブックが同じサブネットで構成されていることを確認します。特定のポートおよびプロトコルを使用してサブネットのセキュリティ・リスト・ルールを構成します。

    サービス制限がfile-system-countおよびmount-target-countに割り当てられていることを確認します。

  • ストレージ・マウントを使用するには、オブジェクト・ストレージ・バケットまたはOCI File Storage Service (FSS)マウント・ポイントが必要です。

    1. ジョブ・リスト・ページで、「ジョブの作成」を選択します。ジョブのリストの検索に関するヘルプが必要な場合は、ジョブのリストを参照してください。
    2. (オプション)ジョブに別のコンパートメントを選択します。
    3. (オプション)ジョブの一意の名前と説明を入力します(255文字に制限されます)。名前を指定しない場合、名前は自動生成されます。

      たとえば、job20210808222435です。

    4. (オプション)「独自のコンテナを持ち込む」を使用するには、環境構成で「選択」を選択します。
      「BYOC環境の設定」パネルで、次のステップを実行します。
      1. 「リポジトリ」で、リストからリポジトリを選択します。リポジトリが別のコンパートメントにある場合は、「コンパートメントの変更」を選択します。
      2. 「イメージ」で、リストからイメージを選択します。
      3. (オプション)「エントリ・ポイント」にエントリ・ポイントを入力します。別のパラメータを追加するには、+Addパラメータを選択します。
      4. (オプション)CMDにCMDを入力します。別のパラメータを追加するには、+Addパラメータを選択します。
        ノート

        ENTRYPOINTの引数としてCMDを使用するか、ENTRYPOINTがない場合に実行する唯一のコマンドとして使用します。
      5. (オプション)「イメージ・ダイジェスト」にイメージ・ダイジェストを入力します。
      6. (オプション)「署名ID」で、署名検証を使用する場合は、イメージ署名のOCIDを入力します。たとえば、ocid1.containerimagesignature.oc1.iad.aaaaaaaaab...です。
      7. 「選択」を選択します。
    5. (オプション)このステップは、BYOCが構成されている場合のみオプションです。必要なジョブ・アーティファクト・ファイルをボックスにドラッグして、ジョブ・アーティファクトをアップロードします。
    6. (オプション)これらのオプションを使用してジョブを実行するときに使用されるデフォルトのジョブ構成を作成します。

      以下の値を入力または選択します。

      カスタム環境変数キー

      ジョブを制御する環境変数

      ノート

      zipファイルまたは圧縮tarファイルをアップロードした場合は、ファイルを指すカスタム環境変数としてJOB_RUN_ENTRYPOINTを追加します。

      カスタム環境変数キーの値。

      「追加のカスタム環境キー」を選択して、さらに変数を指定できます。

      コマンドライン引数

      ジョブの実行に使用するコマンドライン引数。

      最大実行時間(分)

      ジョブを実行できる最大分数。サービスは、実行時間が指定された値を超えた場合にジョブ実行を取り消します。最大ランタイムは30日(43,200分)です。ランナウェイ・ジョブ実行を回避するために、すべてのジョブ実行に最大実行時間を構成することをお薦めします。

    7. コンピュート・シェイプを選択します。
    8. (オプション)「シェイプの変更」を選択して、コンピュート・シェイプを変更します。その後、「コンピュートの選択」パネルの次のステップに従います。
      1. インスタンス・タイプの選択
      2. シェイプ・シリーズを選択します。
      3. シリーズでサポートされているコンピュート・シェイプのいずれかを選択します。
      4. リソースの使用方法に最適なシェイプを選択します。

        OCPUごとに、最大64 GBのメモリーと最大合計512 GBを選択します。許容されるメモリーの最小容量は、1GBまたはOCPUの数に一致する値のいずれか大きい方です。

      5. バースト可能な仮想マシンを使用している場合は、「バースト可能」を切り替えます。
        「OCPU当たりのベースライン使用率」で、通常使用するOCPUの割合を選択します。サポートされている値は、12.5%および50%です。
      6. 「シェイプの選択」を選択します。
    9. (オプション)ロギングを使用するには、「選択」を選択し、「ロギングの有効化」が選択されていることを確認します。
      1. リストからログ・グループを選択します。別のコンパートメントに変更して、ジョブとは異なるコンパートメントのログ・グループを指定できます。
      2. 次のいずれかを選択して、すべてのstdoutおよびstderrメッセージを格納します。
        自動ログ作成の有効化

        ジョブが開始されると、データ・サイエンスによって自動的にログが作成されます。

        ログの選択

        使用するログを選択します。

      3. 「選択」を選択して、ジョブ実行作成ページに戻ります。
    10. 「ストレージ」に、50 GBから10、240 GB (10 TB)までの間に使用するブロック・ストレージの量を入力します。値は1GB単位で変更できます。デフォルト値は100 GBです。
    11. ネットワーク・タイプを構成するには、次のいずれかのオプションを選択します。
      • デフォルト・ネットワーク - ワークロードは、セカンダリVNICを使用して、事前構成済のサービス管理VCNおよびサブネットにアタッチされます。提供されたこのサブネットは、NATゲートウェイを介したパブリック・インターネットへのエグレスおよびサービス・ゲートウェイを介した他のOracle Cloudサービスへのアクセスを許可します。

        パブリック・インターネットおよびOCIサービスのみにアクセスする必要がある場合は、このオプションを使用することをお薦めします。ネットワーキング・リソースの作成や、ネットワーキング権限のポリシーの書込みは不要です。

      • カスタム・ネットワーク - リソースに使用するVCNおよびサブネット(ノートブック・セッションまたはジョブ)を選択します。

        パブリック・インターネットへのエグレス・アクセスには、NATゲートウェイへのルートを持つプライベート・サブネットを使用します。

        使用するVCNまたはサブネットが表示されない場合は、「コンパートメントの変更」をクリックし、VCNまたはサブネットを含むコンパートメントを選択します。

        重要

        ファイル・ストレージ・マウントを使用するには、カスタム・ネットワークを使用する必要があります。

    12. (オプション)ストレージ・マウントを使用するには、+Addストレージ・マウントを選択します。
      ストレージマウントを使用する承認があることを確認します。
      1. ストレージ・マウント・タイプとして、OCI Object StorageまたはOCI File Storageを選択します。
      2. マウントするストレージ・リソースを含むコンパートメントを選択します。
      3. 次のいずれかを選択します:
        オブジェクト・ストレージ
        カスタム・ネットワーキングを使用している場合:
        1. VCNにサービス・ゲートウェイを作成します。
        2. プライベート・サブネットのルート表構成の場合は、サービス・ゲートウェイを追加します。
        3. 必要なサブネットのセキュリティ・リストのエグレス・ルールを変更して、ネットワーク内のすべてのサービスへのトラフィックを許可します。

        使用するバケット。

        オブジェクト名の接頭辞を追加できます。接頭辞は英数字で始める必要があります。使用できる文字は、英数字、スラッシュ( / )、ハイフン( - )およびアンダースコア( _ )です。

        File Storage

        使用するマウント・ターゲットおよびエクスポート・パス。ファイル・システムを作成する必要があります。既存のマウント・ターゲットを指定するか、新しいターゲットを作成します。

        ファイル・ストレージを使用するには、カスタム・ネットワークを使用する必要があります。

        サブネットのセキュリティ・リスト・ルールに従います。
        ノート

        ファイル・システムをマウントする前に、VCNサブネットでセキュリティ・ルールを構成して、マウント・ターゲットとの間のネットワーク・トラフィックを許可する必要があります。セキュリティ・ルールは、サブネット・セキュリティ・リスト、ネットワーク・セキュリティ・グループ内、または両方の組合せを使用して設定できます。詳細は、ファイル・ストレージに対するVCNセキュリティ・ルールの構成を参照してください。
        • TCPポート111、2048、2049および2050とUDPポート111および2048へのステート フル・イングレス。
        • TCPソース・ポート111、2048、2049および2050とUDPソース・ポート111のステートフル・エグレス。
      4. ストレージをマウントするパスを入力します。

        ストレージは、指定されたマウントパスの下にマウントされます。パスは英数字で始める必要があります。宛先ディレクトリは、指定されたストレージマウント全体で一意である必要があります。使用できる文字は、英数字、ハイフン( - )およびアンダースコア( _ )です。

        /opc/storage-directoryなどのフルパスを指定できます。/storage-directoryなどのディレクトリのみが指定されている場合は、デフォルトの/mntディレクトリの下にマウントされます。/bin/etcなど、OS固有のディレクトリは指定できません。

      5. 「送信」を選択します。

        これらのステップを繰り返して、ノートブック・セッションに最大2つのストレージ・マウントを追加します。

    13. (オプション)「拡張オプションの表示」を選択して、ジョブにタグを追加します。
    14. (オプション)「タグ」セクションで、<resourceType>に1つ以上のタグを追加します。リソースの作成権限がある場合は、フリーフォーム・タグをそのリソースに適用する権限もあります。定義済タグを適用するには、タグ・ネームスペースを使用する権限が必要です。タグ付けの詳細は、リソース・タグを参照してください。タグを適用するかどうかがわからない場合は、このオプションをスキップするか、管理者に問い合せてください。タグは後で適用できます。
    15. 「作成」を選択します。

      ジョブがアクティブ状態になったら、ジョブ実行を使用してジョブを繰り返し実行できます。

  • これらの環境変数は、ジョブを制御します。

    次の例のように、データ・サイエンスCLIを使用してジョブを作成します:

    1. 次を使用してジョブを作成します:
      oci data-science job create \
      --display-name <job_name>\
      --compartment-id <compartment_ocid>\
      --project-id <project_ocid> \
      --configuration-details file://<jobs_configuration_json_file> \
      --infrastructure-configuration-details file://<jobs_infrastructure_configuration_json_file> \
      --log-configuration-details file://<optional_jobs_infrastructure_configuration_json_file>
    2. 次のジョブ構成JSONファイルを使用します:
      {
        "jobType": "DEFAULT",
        "maximumRuntimeInMinutes": 240,
        "commandLineArguments" : "test-arg",
        "environmentVariables": {
          "SOME_ENV_KEY": "some_env_value" 
        }
      }
    3. 次のジョブ・インフラストラクチャ構成JSONファイルを使用します:
      {
        "jobInfrastructureType": "STANDALONE",
        "shapeName": "VM.Standard2.1",
        "blockStorageSizeInGBs": "50",
        "subnetId": "<subnet_ocid>"
      }
    4. (オプション)このジョブ・ロギング構成JSONファイルを使用します:
      {
        "enableLogging": true,
        "enableAutoLogCreation": true,
        "logGroupId": "<log_group_ocid>"
      }
    5. 次を使用して、作成したジョブのジョブ・アーティファクト・ファイルをアップロードします:
      oci data-science job create-job-artifact \
      --job-id <job_ocid> \
      --job-artifact-file <job_artifact_file_path> \
      --content-disposition "attachment; filename=<job_artifact_file_name>"
  • ADS SDKは、次のコマンドを使用してインストールできる、パブリックに使用可能なPythonライブラリでもあります:

    pip install oracle-ads

    ノートブックまたはクライアント・マシンでのジョブの作成と実行を容易にするラッパーを提供します。

    ADS SDKを使用してジョブを作成および実行します。