すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:EASCMDクライアントを使用するコマンドを実行する

最終更新日:Jul 22, 2024

EASCMDクライアントを使用して、Platform for AI (PAI) のElastic Algorithm Service (EAS) でサービスを管理できます。 コマンドを実行して、サービスの作成、サービスの更新、サービスの詳細の表示、ストレステストタスクの管理を行うことができます。 このトピックでは、EASCMDクライアントでサポートされているコマンドとサンプルコマンドについて説明します。

操作コマンド

次の表に、EASCMDコマンドラインツールがサービスを管理するために提供する機能を示します。

説明

EASCMDクライアントを使用してコマンドを実行する場合、コマンドで使用される特定のクライアント名は異なる場合があります。 実際の名前が優勢です。

データ型

API 操作

説明

サービス関連

次のいずれかの方法を使用して、EASCMDコマンドラインツールを使用できます。

リソースグループ関連

サービスの作成

  • 説明

    createコマンドを実行して、サービスを作成できます。 サービスを作成するときは、リソースのHTTPまたはOSS URL (モデルまたはプロセッサパッケージ) を指定する必要があります。 リソースをObject Storage Service (OSS) にアップロードし、アップロードされたパッケージのOSS URLを取得できます。

  • 構文

    <eascmd64> create <service_desc_json>
  • パラメーター

    service_desc_json: 入力モデルパッケージが格納されているディレクトリやリソースの仕様など、サービス情報を記述するJSONファイル。 次の情報は、JSONファイルの例を示しています。

    {
      "name": "mnist_saved_model_example",
      "model_path": "http://eas-data.oss-cn-shanghai.aliyuncs.com/models%2Fmnist_saved_model.tar.gz",
      "processor": "tensorflow_cpu_1.12",
      "metadata": {
        "instance": 1,
        "cpu": 1
      }
    }

    JSONファイルのサービスパラメーターの詳細については、「モデルサービスのパラメーター」をご参照ください。

  • 例 (この例では、サービス情報を記述するJSONファイルの名前はpmml.jsonです) 。

    <eascmd64> pmml.json

    の作成

    システムは次のような情報を返します。

    [RequestId]: 1651567F-8F8D-4A2B-933D-F8D3E2DD****
    +-------------------+----------------------------------------------------------------------------+
    | Intranet Endpoint | http://pai-eas-vpc.cn-shanghai.aliyuncs.com/api/predict/savedmodel_example |
    |             Token | YjQxZDYzZTBiZTZjMzQ5ZmE0MzczZjIxMGZiNzZmMDBkY2VjMDg4****                   |
    +-------------------+----------------------------------------------------------------------------+
    [OK] Creating api gateway
    [OK] Building image [registry-vpc.cn-shanghai.aliyuncs.com/eas/savedmodel_example_cn-shanghai:v0.0.1-20190224001315]
    [OK] Pushing image [registry-vpc.cn-shanghai.aliyuncs.com/eas/savedmodel_example_cn-shanghai:v0.0.1-20190224001315]
    [OK] Waiting [Total: 1, Pending: 1, Running: 0]
    [OK] Waiting [Total: 1, Pending: 1, Running: 0]
    [OK] Service is running

    です

サービス設定の変更

  • 説明

    modifyコマンドで -Dオプションを使用して、インスタンス数やCPUクォータなどのメタデータを変更できます。

  • 構文

    <eascmd64> modify <service_name> -Dmetadata。<attr_name >=< attr_value>

    一度に複数のパラメーターを設定できます。 詳細については、次の例をご参照ください。

  • パラメーター

    • <service_name>: サービスの名前。

    • <attr_name>: パラメータの名前。

    • <attr_value>: パラメータの値。

  • 例:

    インスタンス数を10に、各インスタンスのクォータを5に設定します (5 vCPUと20 GBのメモリを含む) 。

    <eascmd64> modify service_test -Dmetadata.instance=10 -Dmetadata.cpu=5

    リソースをスケーリングする場合、サービスのmetadata.instanceパラメーターの値のみを変更できます。 指定されたインスタンス数がサービスの既存のインスタンス数よりも多い場合、システムは新しいインスタンスを開始して、既存のインスタンスに影響を与えずに指定された数に達します。 指定されたインスタンス数が既存のインスタンス数よりも少ない場合、システムは特定のインスタンスを停止して、他のサービスインスタンスに影響を与えずに指定された数に達します。

    説明

    完全更新操作とは異なり、インスタンス数のみを変更する更新操作では、サービスのローリング更新はトリガーされません。

サービスの変更

  • 説明

    modifyコマンドを実行して、デプロイされたサービスを変更できます。

  • 構文

    <eascmd64> modify <service_name> -s <service_desc_json>
  • パラメーター

    • <service_name>: サービスの名前。

    • <service_desc_json>: サービスの記述ファイル。

      説明

      サービスを変更する場合は、サービスの説明ファイルで変更するパラメーターのみを変更でき、他のパラメーターは変更しません。 モデルファイル情報およびプロセッサ情報を変更すると, 新しいサービスバージョンが追加されます。

サービスのバージョンを追加する

  • 説明

    modifyコマンドを実行して、デプロイされたサービスのバージョンを追加できます。

  • 構文

    <eascmd64> modify <service_name> -s <service_desc_json>
  • パラメーター

    • <service_name>: サービスの名前。

    • <service_desc_json>: サービスの記述ファイル。

      説明

      サービスのバージョンを追加する場合は, サービスの記述ファイルにモデルファイル情報とプロセッサ情報を指定する必要があります。

サービスを停止する

  • 説明

    stopコマンドを実行して、実行中のサービスを停止できます。

  • 構文

    <eascmd64> stop <service_name>
  • パラメーター

    <service_name>: 停止するサービスの名前。

サービスを開始する

  • 説明

    startコマンドを実行して、停止したサービスを再起動できます。

  • 構文

    <eascmd64> start <service_name>
  • パラメーター

    <service_name>: 開始するサービスの名前。

サービスの削除

  • 説明

    deleteコマンドを実行すると、現在のリージョンのサービスを削除できます。

  • 構文

    <eascmd64> delete <service_name>
  • パラメーター

    <service_name>: 削除するサービスの名前。

  • 例:

    この例では、サービス名はsavedmodel_exampleです。 サービスを削除するには、次の手順を実行します。

    1. 次のコマンドを実行して、サービスを削除します。

      <eascmd64> savedmodel_example

      システムは次のような情報を返します。

      Are you sure to delete the service [savedmodel_example] in [cn-shanghai]? [Y/n]
    2. Yキーを押します。 システムは次のような情報を返します。

      [RequestId]: 1651567F-8F8D-4A2B-933D-F8D3E2DD****
      [OK] Service [savedmodel_example] in region [cn-shanghai] is terminating
      [OK] Service is terminating
      [OK] Service is terminating
      [OK] Service was deleted successfully

      されました

ブルーグリーンリリースの実装

  • 説明

    create -rコマンドを実行して既存のサービスに関連するサービスを作成し、releaseコマンドを実行してビジネス要件に基づいてサービスのトラフィック比率を調整できます。 この方法で、blue-greenリリースを実装できます。 新しいサービスに関する情報を記述するJSONファイルのnameパラメーターの値は、既存のサービスの値と同じである必要があります。 ビジネス要件に基づいて他のパラメーターを設定できます。 システムは、既存のサービス名にランダムなサフィックスを自動的に追加して、新しいサービス名を生成します。

    新しいサービスを削除すると、すべてのトラフィックが既存のサービスに送信されます。 既存のサービスを削除すると、すべてのトラフィックが新しいサービスに送信されます。 blue-greenリリース前の既存のサービスのエンドポイントは、以降のすべてのblue-greenリリースの繰り返しのトラフィック入口として機能します。 その後のblue-greenリリースの繰り返し回数に関係なく、次の例の {domain}/api/predict/savedmodel_exampleなどのエンドポイントは変更されません。 クライアント側のコードを変更する必要はありません。

    説明

    blue-greenリリースは、直接接続が使用されるシナリオには適用できません。

  • 構文

    1. 関連サービスを作成します。

      <eascmd64> create <service_desc_json> -r
    2. blue-greenリリースのサービスのトラフィック比率を調整します。

      <eascmd64> release <service_name> -w <weight>
  • パラメーター

    • <service_desc_json>: 新しいサービスに関する情報を記述するJSONファイル。

    • <service_name>: 新しいサービスの名前。

    • <weight>: 新しいサービスに送信されるトラフィックの割合。

  • 例 (この例では、サービス情報を記述するJSONファイルの名前はpmml.jsonです) 。

    1. 関連サービスを作成します。

      <eascmd64> pmml.json -r

      を作成する

      システムは次のような情報を返します。

      [RequestId]: 1651567F-8F8D-4A2B-933D-F8D3E2DD****
      +-------------------+----------------------------------------------------------------------------+
      | Intranet Endpoint | http://xxx.cn-shanghai.pai-eas.aliyuncs.com/api/predict/savedmodel_example_9c16a222 |
      |             Token | YjQxZDYzZTBiZTZjMzQ5ZmE0MzczZjIxMGZiNzZmMDBkY2VjMDg4****                   |
      +-------------------+----------------------------------------------------------------------------+
      [OK] Building image [registry-vpc.cn-shanghai.aliyuncs.com/eas/savedmodel_example_9c16a222_cn-shanghai:v0.0.1-20190224001315]
      [OK] Pushing image [registry-vpc.cn-shanghai.aliyuncs.com/eas/savedmodel_example_9c16a222_cn-shanghai:v0.0.1-20190224001315]
      [OK] Waiting [Total: 1, Pending: 1, Running: 0]
      [OK] Waiting [Total: 1, Pending: 1, Running: 0]
      [OK] Service is running

      です

      上記の出力は、savedmodel_example_9c16a22 2という名前のサービスが作成されていることを示しています。 新しいサービスと既存のサービスには独立したトラフィックの入り口があり、別々に呼び出すことができます。 既存のオンラインサービスに影響を与えることなく、新しいサービスを個別にテストできます。 テストが完了したら、サービスのトラフィックの割合を調整できます。

    2. blue-greenリリースのサービスのトラフィック比率を調整します。

      <eascmd64> release savedmodel_example_9c16a222 -w 20

      上記のコマンドは、トラフィックの20% が新しいサービスsavedmodel_example_9c16a22 2に行き、トラフィックの80% が既存のサービスsavedmodel_exampleに行くことを示します。 この場合、新しいサービスの独立したエンドポイント {domain}/api/predict/savedmodel_example_9c16a22 2は無効になります。 既存のサービスのエンドポイント {domain}/api/predict/savedmodel_exampleに流れ込むトラフィックの20% は、新しいサービスに行き、80% 既存のサービスに行きます。

      システムは次のような情報を返します。

      Confirmed to release this service at weight [20%]? [Y/n]
    3. Yキーを押し、次にEnterキーを押します。 システムは次のような情報を返します。

      [RequestId]: 9258EEDE-6F99-4C3B-841B-B6E9774F****
      [OK] Service [savedmodel_example_9c16a222] is weighted to 20% now

      20% に重み付けされています

サービスバージョンの切り替え

  • 説明

    descコマンドを実行して、サービスの現在のバージョンと最新バージョンを表示できます。 次に、versionコマンドを実行して、最新バージョンより前のバージョンに切り替えます。

  • 構文

    <eascmd64> version <service_name> <version_id>
  • パラメーター

    • <service_name>: サービスの名前。

    • <version_id>: 切り替え先のバージョンのID。

サービスリストの表示

  • 説明

    listまたはlsコマンドを実行して、現在のアカウント内にデプロイされているサービスを表示できます。

  • 構文

    <eascmd64> ls
  • パラメーター

    N/A

  • 例:

    <eascmd64> ls

    システムは次のような情報を返します。

    [RequestId]: 83945D4E-ED3E-4D35-A989-831E36BB****
    +---------------------------+-------------+----------+---------------------+---------------------+---------+--------+----------------------------------------+
    |        SERVICENAME        |   REGION    | INSTANCE |     CREATETIME      |     UPDATETIME      | STATUS  | WEIGHT |              SERVICEPATH               |
    +---------------------------+-------------+----------+---------------------+---------------------+---------+--------+----------------------------------------+
    | mnist_saved_model_example | cn-shanghai |        1 | 2019-02-21 16:35:41 | 2019-02-21 16:35:41 | Running |      0 | /api/predict/mnist_saved_model_example |
    +---------------------------+-------------+----------+---------------------+---------------------+---------+--------+----------------------------------------+

サービスの詳細を表示する

  • 説明

    descコマンドを実行して、デプロイされたサービスの詳細を表示できます。

  • 構文

    <eascmd64> desc <service_name>
  • パラメーター

    <service_name>: サービスの名前。

  • 例:

    <eascmd64> desc mnist_saved_model_example

    システムは次のような情報を返します。

    +---------------------+--------------------------------------------------------------------------------------------------------------+
    |              Status | Running                                                                                                      |
    |         ServiceName | mnist_saved_model_example                                                                                    |
    |              Region | cn-shanghai                                                                                                  |
    |          CreateTime | 2019-02-21 16:35:41                                                                                          |
    |          UpdateTime | 2019-02-21 16:35:41                                                                                          |
    |         AccessToken |                                                                                                              |
    |        PrivateToken | ZWNjMTNkNDExMmExNjZkYTM4YWQ5YTY0YmFjNjk3YWYzZTRjM2Y2****                                                     |
    |       TotalInstance | 1                                                                                                            |
    |     RunningInstance | 1                                                                                                            |
    |     PendingInstance | 0                                                                                                            |
    |                 CPU | 1                                                                                                            |
    |                 GPU | 0                                                                                                            |
    |              Memory | 1000M                                                                                                        |
    |               Image | registry-vpc.cn-shanghai.aliyuncs.com/eas/mnist_saved_model_example_cn-shanghai:v0.0.1-20190221163541        |
    |              Weight | 0                                                                                                            |
    |       LatestVersion | 1                                                                                                            |
    |      CurrentVersion | 1                                                                                                            |
    |             Message | Service start successfully                                                                                   |
    |       APIGatewayUrl | 1c3b37ea83c047efa0dc6df0cacb****-cn-shanghai.alicloudapi.com/EAPI_182848887922****_mnist_saved_model_example |
    |    APIGatewayAppKey | 2564****                                                                                                     |
    | APIGatewayAppSecret | 12562a7b8858bbba2c2e9c4517ff****                                                                             |
    |    IntranetEndpoint | http://pai-eas-vpc.cn-shanghai.aliyuncs.com/api/predict/mnist_saved_model_example                            |
    |       ServiceConfig | {                                                                                                            |
    |                     |   "generate_token": "false",                                                                                 |
    |                     |   "metadata": {                                                                                              |
    |                     |     "cpu": 1,                                                                                                |
    |                     |     "instance": 1,                                                                                           |                                                                                  |
    |                     |     "region": "cn-shanghai"                                                                                  |
    |                     |   },                                                                                                         |
    |                     |   "model_path":                                                                                              |
    |                     | "http://eas-data.oss-cn-shanghai.aliyuncs.com/models%2Fmnist_saved_model.tar.gz",                            |
    |                     |   "name":                                                                                                    |
    |                     | "mnist_saved_model_example",                                                                                 |
    |                     |   "processor":                                                                                               |
    |                     | "tensorflow_cpu"                                                                                             |
    |                     | }                                                                                                            |
    +---------------------+--------------------------------------------------------------------------------------------------------------+

サービスプロセスの表示

  • 説明

    showworkers(w) またはwコマンドを実行して、サービスで実行されているプロセスのステータスを表示できます。

  • 構文

    <eascmd64> w <service_name>
  • パラメーター

    <service_name>: サービスの名前。

  • 例:

    <eascmd64> w mnist_saved_model_example

    システムは次のような情報を返します。

    [RequestId]: B23BA8AC-CDEC-5704-935F-3CEC6606****
    +-------------------------------+-------------+--------------+---------------------+----------+---------+-------+--------+----------------------------------------------------------------------------------------------------------+
    |         INSTANCENAME          |   INNERIP   |    HOSTIP    |       STARTAT       | RESTARTS | STATUS  | READY | REASON |                                                LASTSTATE                                                 |
    +-------------------------------+-------------+--------------+---------------------+----------+---------+-------+--------+----------------------------------------------------------------------------------------------------------+
    | network-test-69cf5dd6c7-5**** | 10.240.XX.XX | 10.224.XX.XX | 2021-09-27 15:04:22 |        1 | Running | [1/1] |        | {"exitCode":247,"finishedAt":"2021-09-27T07:04:21Z","reason":"Error","startedAt":"2021-09-27T05:36:56Z"} |
    +-------------------------------+-------------+--------------+---------------------+----------+---------+-------+--------+----------------------------------------------------------------------------------------------------------+

    次の表に、出力のパラメーターを示します。

    パラメーター

    説明

    INSTANCENAME

    サービスを実行するインスタンスの名前。

    INNERIP

    インスタンスのイントラネット IP アドレス。

    HOSTIP

    インスタンスが属するノードのIPアドレス。

    STARTAT

    インスタンスの開始時刻。

    RESTARTS

    インスタンスが再起動された回数。 メモリ不足 (OOM) エラーまたはコードエラーによるクラッシュが発生するたびに、インスタンスが自動的に再起動します。 インスタンスが再起動されるたびに、RESTARTSパラメーターの値が1ずつ増加します。

    STATUS

    インスタンスのステータス。 Pendingの値は、インスタンスがリソースを待っていることを示します。 インスタンスがPending状態のままである場合、リソースが不足しているため、インスタンスを使用してサービスを実行できません。

    READY

    インスタンス内のコンテナーのステータス。 値の形式は [準備完了コンテナ数 /インスタンス内のコンテナの総数] です。

    READYパラメーターの値が [0/1] の場合、コンテナーが起動中であるか、コンテナーがヘルスチェックに失敗しました。 この場合、トラフィックはインスタンスに移動しません。

    サービスのすべてのインスタンスのパラメーター値が [0/1] の場合、サービスは使用できず、サービスが要求されたときに5xxエラーコードが返されます。

    REASON

    インスタンスのステータスの説明。

    LASTSTATE

    前回の再起動後のインスタンスのステータス。 LASTSTATEパラメーターのreasonフィールドの値がOOMKIlledの場合、インスタンスでOOMエラーが発生します。

ストレステストタスクの作成

  • 説明

    bench createコマンドを実行して、デプロイされたサービスのストレステストタスクを作成できます。

  • 構文

    <eascmd64> bench create <bench_desc_json>
  • パラメーター

    bench_desc_json: タスクのJSONファイル。 サンプルファイルの内容:

    {
        "service": {
            "serviceName": "servicename_example"
        },
        "data": {
            "content": "W1sxLDAsMCwwLDEsMSwwLDEsMCwxLDEsMCwwLDEsMCwxLDAsMSwwLDAsMSwxLDEsMCwxLDEsMCwwLDAsMSwxLDEsMCwxLDEsMSwxLDAsMSwxLDEsMCwxLDAsMCwwLDEsMSwwLDAsMCwxLDAsMSwwLDEsMCwwLDEsMCwwLDEsMCwxLDAsMCwxLDAsMCwwLDAsMSwwLDEsMCwxLDAsMCwxLDEsMSwwLDAsMSwwLDAsMCwwLDEsMSwxLDAsMSwxLDAsMCwxLDAsMSwwLDEsMSwxLDEsMCwxLDAsMCwxLDEsMSwxLDAsMCwwLDEsMSwwXV0K"
        }
    }
                    

    pathパラメーターをファイルに追加して、複数のOSSオブジェクトをストレステストデータとして指定できます。 次の構文は、サンプルファイルの内容を示しています。 複数のストレステストデータエントリを指定するには、圧縮zipファイルにエントリを追加し、JSONファイルのOSS: // XX.zip形式でファイルのossパスを指定します。

    {
        "service": {
            "serviceName": "servicename_example"
        },
        "data": {
            "path": "oss://examplebucket/test1.bin,oss://examplebucket/test2.bin"
        }
    }
                    

    JSONファイルのパラメーターの詳細については、「ストレステストタスクの作成」をご参照ください。

  • 例 (この例では、タスク情報を記述するJSONファイルの名前はbench.jsonです。)

    <eascmd64> bench create bench.json

    システムは次のような情報を返します。

    [RequestId]: DE240637-4976-59AF-A28C-BAA55C0A****
    [OK] Task [benchmark-servicename-example-b514] is creating
    [OK] [Agnet: 0/1]: Succeed to start benchmark master
    [OK] [Agnet: 0/1]: Succeed to start benchmark master
    [OK] [Agnet: 1/1]: Benchmark task is Running
    [OK] Benchmark task is Running
    [OK] Click the link http://127.0.0.1:18222/eas-benchmark/statsview to observe realtime visualization details, you can turn it off with CTRL+C.
    Turning off will not interrupt the benchmark test task, and you can reopen it by the visualize command:
    eascmd -c [config_file] bench visualize benchmark-servicename-example-b514

ストレステストタスクの管理

ストレステストタスクの表示

  • 説明

    bench listコマンド (またはbench ls) を実行して、現在のユーザーが作成したストレステストタスクを表示できます。

  • 構文

    <eascmd64> bench ls
  • パラメーター

    N/A

  • 例:

    <eascmd64> bench ls

    システムは次のような情報を返します。

    [RequestId]: 7F953F8E-8897-5785-808A-CA648302****
    +-------------------------+--------------------------+-------------+----------------+---------+---------------------+
    |        TASKNAME         |          TASKID          |   REGION    | AVAILABLEAGENT | STATUS  |     CREATETIME      |
    +-------------------------+--------------------------+-------------+----------------+---------+---------------------+
    | benchmark-xgb-test-7846 | eas-b-ql470xog6qeh25**** | cn-shanghai |              0 | Stopped | 2022-06-17 17:58:01 |
    | benchmark-xgb-test-b514 | eas-b-bdnzvwq0z0h3xq**** | cn-shanghai |              2 | Running | 2022-06-20 12:18:54 |
    +-------------------------+--------------------------+-------------+----------------+---------+---------------------+

ストレステストタスクの詳細を表示する

  • 説明

    bench descコマンドを実行して、ストレステストタスクの詳細を表示できます。

  • 構文

    <eascmd64> bench desc <benchmark_task_name>
  • パラメーター

    benchmark_task_name: ストレステストタスクの名前。

  • 例:

    <eascmd64> bench desc benchmark-demo-test-c7eb

    システムは次のような情報を返します。

    +----------------+------------------------------------------------------------------------------+
    |     TaskName   | benchmark-xgb-test-b514                                                      |
    |     TaskId     | eas-b-bdnzvwq0z0h3xq****                                                     |
    |    ServiceName | xgb_test                                                                     |
    |         Region | cn-shanghai                                                                  |
    |   DesiredAgent | 2                                                                            |
    | AvailableAgent | 2                                                                            |
    |         Status | Running                                                                      |
    |        Message | Benchmark task is running                                                    |
    |     CreateTime | 2021-10-20 12:38:35                                                          |
    |     UpdateTime | 2021-10-20 12:38:45                                                          |
    |         Config | {                                                                            |
    |                |   "base": {                                                                  |
    |                |     "agentCount": 2,                                                         |
    |                |     "concurrency": 40,                                                       |
    |                |     "duration": 1200,                                                        |
    |                |     "requestCount":                                                          |
    |                | 922337203685477****,                                                         |
    |                |   },                                                                         |
    |                |  ...                                                                         |
    |                | }                                                                            |
    +----------------+------------------------------------------------------------------------------+

ストレステストタスクのリアルタイム視覚化を有効にする

  • 説明

    bench visualizeコマンドを実行して、ストレステストタスクのリアルタイムの視覚化を有効にできます。 このコマンドを使用すると、オンプレミスのコンピューターのwebブラウザーを使用して、127.0.0.1を介してストレステストタスクのリアルタイム監視データを表示するwebページにアクセスできます。

  • 構文

    <eascmd64> bench visualize <benchmark_task_name>
  • パラメーター

    benchmark_task_name: ストレステストタスクの名前。

  • 例:

    <eascmd64> bench visualize benchmark-xgb-test-b514

    システムは次のような情報を返します。

    [OK] Click the link http://127.0.0.1:18734/eas-benchmark/statsview to observe realtime visualization details, you can turn it off with CTRL+C.
    Turning off will not interrupt the benchmark test task, and you can reopen it by the visualize command:
    eascmd -c [config_file] bench visualize benchmark-xgb-test-b514

    ブラウザを使用してhttp:// 127.0.0.1:18734/eas-benchmark/statsviewにアクセスし、リアルタイムのモニタリングデータを表示します。

ストレステストのタスクを停止する

  • 説明

    bench stopコマンドを実行して、実行中のストレステストタスクを停止できます。

  • 構文

    <eascmd64> bench stop <benchmark_task_name>
  • パラメーター

    benchmark_task_name: ストレステストタスクの名前。

  • 例:

    <eascmd64> bench stop benchmark-xgb-test-b514

    システムは次のような情報を返します。

    Are you sure to stop the benchmark task [benchmark-xgb-test-b514] in [cn-shanghai]? [Y/n]
    [OK] Task [benchmark-xgb-test-b514] is stopping
    [OK] [Agnet: 0/1]: Benchmark task is Running
    [OK] [Agnet: 0/1]: Benchmark task is Stopped
    [OK] Benchmark task is stopped

ストレステストタスクのレポートを取得します。

  • 説明

    bench reportコマンドを実行して、ストレステストタスクのレポートを取得できます。

    説明

    ストレステストタスクがStopped状態になると、タスクは完了し、タスクレポートはOSSに保存されます。

  • 構文

    <eascmd64>  bench report <benchmark_task_name>
  • パラメーター

    benchmark_task_name: ストレステストタスクの名前。

  • 例:

    <eascmd64> bench report benchmark-xgb-test-b514

    システムは次のような情報を返します。

    [OK] Benchmark task benchmark-demo-test-c7eb report url: http://eas-benchmark.oss-cn-chengdu.aliyuncs.com/summary/benchmark-demo-test-c7eb-10004.html

    出力に表示されるURLをブラウザのアドレスバーに入力して、タスクレポートを表示します。

ストレステストタスクを開始する

  • 説明

    bench startコマンドを実行して、停止したストレステストタスクを開始できます。

  • 構文

    <eascmd64> bench start <benchmark_task_name>
  • パラメーター

    benchmark_task_name: ストレステストタスクの名前。

  • 例:

    <eascmd64> bench start benchmark-xgb-test-b514

    システムは次のような情報を返します。

    Are you sure to start the benchmark task [benchmark-xgb-test-b514] in [cn-shanghai]? [Y/n]
    [OK] Task [benchmark-xgb-test-b514] is starting
    [OK] [Agnet: 0/1]: Succeed to start benchmark master
    [OK] [Agnet: 1/1]: Benchmark task is Running
    [OK] Benchmark task is Running
    [OK] Click the link http://127.0.0.1:18947/eas-benchmark/statsview to observe realtime visualization details, you can turn it off with CTRL+C.
    Turning off will not interrupt the benchmark test task, and you can reopen it by the visualize command:
    eascmd -c [config_file] bench visualize benchmark-xgb-test-b514

エージェントワーカー数と同時実行数を動的に変更する

  • 説明

    ストレステストモードを手動に設定した場合、bench updateコマンドを実行して、エージェントワーカーの数と同時実行性を動的に変更できます。

  • 構文

    <eascmd64> bench update <benchmark_task_name> -Doptional.concurrency=<attr_value> -Doptional.agentCount=<attr_value>
  • パラメーター

    • benchmark_task_name: ストレステストタスクの名前。

    • <attr_value>: 実際の値。

  • 例:

    <eascmd64> bench update benchmark-demo-b99c -Doptional.concurrency=2 -Doptional.agentCount=1

    システムは次のような情報を返します。

    [RequestId]: 9920C672-4D41-5CC4-8EC0-C690F76E****
    [OK] Running [TaskName: benchmark-demo-b99c, DesiredAgent:1, AvailableAgent: 1, Message: Benchmark task is Updating]
    [OK] Benchmark task benchmark-demo-b99c was updated successfully

    更新されました

ストレステストタスクの削除

  • 説明

    bench deleteコマンドを実行すると、ストレステストタスクを削除できます。 タスクが削除されると、OSSに保存されているタスクレポートも削除されます。

  • 構文

    <eascmd64> bench delete <benchmark_task_name>
  • パラメーター

    benchmark_task_name: ストレステストタスクの名前。

  • 例:

    <eascmd64> bench delete benchmark-xgb-test-b514

    システムは次のような情報を返します。

    Are you sure to delete the benchmark task [benchmark-xgb-test-b514] in [cn-shanghai]? [Y/n]
    [OK] Benchmark task benchmark-xgb-test-b514 is Deleting
    [OK] Benchmark task was deleted successfully

    削除されました

1つ以上のインスタンスを削除または再起動する

  • 説明

    deleteworkersまたはdwコマンドを実行して、サービスの1つ以上のインスタンスを削除できます。 1つ以上のインスタンスが削除されると、システムは自動的に新しいインスタンスを起動し、割り当てられたインスタンスの指定数に達します。 したがって、このコマンドを実行してインスタンスを再起動することもできます。

  • 構文

    <eascmd64> dw <service_name> <instance_names>
  • パラメーター

    • <service_name>: サービスの名前。

    • <instance_names>: 削除するインスタンスの名前。 複数のインスタンス名を指定できます。 複数のインスタンス名はコンマ (,) で区切ります。

  • 例:

    <eascmd64> dw mnist_saved_model_example mnist-saved-model-example-69cf5dd6c7-5 ****

    システムは次のような情報を返します。

    Are you sure to delete the instances [mnist-saved-model-example-69cf5dd6c7-5****] of service [mnist_saved_model_example] in [cn-shenzhen]? [Y/n]

    Yキーを押します。 システムは次のような情報を返します。

    [RequestId]: 564C8F56-D97A-555E-9E0B-22BE140A****
    [OK] Instance(s) [mnist-saved-model-example-69cf5dd6c7-5****] for service [mnist_saved_model_example] in region [cn-shenzhen] was deleted successfully

    されました

Python SDK環境の初期化

説明

この操作は、Linuxオペレーティングシステムでのみサポートされています。

  • 説明

    pysdk initコマンドを実行して、Python SDK環境を初期化できます。

  • 構文

    <eascmd64> pysdk init. /pysdk_demo
  • パラメーター

    N/A

  • 例:

    1. 次のコマンドを実行して、初期化操作を実行します。

      <eascmd64> pysdk init. /pysdk_demo

      システムは次のような情報を返します。

      [PYSDK] Please choose your python version [enter for 3.6]:
    2. 3.6と入力します。 次のような情報が表示されます。

      Collecting package metadata (current_repodata.json): done
      Solving environment: done
      ...
      [PYSDK] Installing python processor example app.py
      [PYSDK] Installing python service example app.json

      のインストール

完全な環境とコードを圧縮する

説明

この操作は、Linuxオペレーティングシステムでのみサポートされています。

  • 説明

    pysdk packコマンドを実行して、完全な環境とコードを圧縮できます。

  • 構文

    <eascmd64> pysdk pack ./<demo>
  • パラメーター

    <demo>: 環境またはコードを格納するディレクトリ。

  • 例 (この例では、環境またはコードを格納するディレクトリはデモです。)

    <eascmd64> pysdk pack ./demo

    システムは次のような情報を返します。

    [PYSDK] Creating package: /mnt/workspace/demo.tar.gz

リソースグループの表示

  • 説明

    resource listまたはresource lsコマンドを実行して、現在のアカウント内のリソースグループを表示できます。

  • 構文

    <eascmd64> resource ls
  • パラメーター

    N/A

  • 例:

    <eascmd64> resource ls

    システムは次のような情報を返します。

    +--------------------------+-------------+---------------+----------+----------+------------------+---------------------+---------------+
    |       RESOURCENAME       |  CLUSTERID  | INSTANCECOUNT | GPUCOUNT | CPUCOUNT |     OWNERUID     |     CREATETIME      |    STATUS     |
    +--------------------------+-------------+---------------+----------+----------+------------------+---------------------+---------------+
    | eas-r-lzo32vrdbtukr7te3i | cn-shanghai |             1 |        0 |       16 | 182848887922**** | 2020-03-18 13:09:24 | ResourceReady |
    +--------------------------+-------------+---------------+----------+----------+------------------+---------------------+---------------+

リソースグループの詳細を表示する

  • 説明

    resource descコマンドを実行して、リソースグループの詳細を表示できます。

  • 構文

    <eascmd64> resource desc <resource_id>
  • パラメーター

    <resource_id>: 表示するリソースグループのID。 IDは、resource listまたはresource lsコマンドの出力にあるRESOURCENAMEパラメーターから取得できます。

  • 例:

    IDがeas-r-lzo32vrdbtukr7te3iのリソースグループの詳細を表示します。

    <eascmd64> -c ~/.eas/shanghai2.conf resource desc eas-r-lzo32vrdbtukr7te3i

    -c ~/.eas/shanghai2.conf部分は、既定の構成ファイル ~/.eas/configの代わりにカスタム構成ファイルが使用されていることを示します。システムは次のような情報を返します。

    +---------+-----------------+----------------------------------------------------------+
    |   Basic | ResourceName    | eas-r-lzo32vrdbtukr7te3i                                 |
    |         | Region          | cn-shanghai                                              |
    |         | CpuCount        | 16                                                       |
    |         | GpuCount        | 0                                                        |
    |         | instanceCount   | 1                                                        |
    |         | CreateTime      | 2020-03-18 13:09:24                                      |
    |         | LastStatus      | ResourceReady                                            |
    |         | Message         | Resource is ready                                        |
    |         | RoleArn         | acs:ram::xxx:role/AliyunPAIAccessingENIRole              |
    | Network | VpcId           | vpc-uf6s9pv47nu03srne****                                |
    |         | VSwitchId       | vsw-uf6voq53e893k56ws****                                |
    |         | SecurityGroupId | sg-uf6c5twkfar8l06c****                                  |
    |         | DestinationCIDR |                                                          |
    |         | AuxVSwitchList  | []                                                       |
    +---------+-----------------+----------------------------------------------------------+

リソースグループ内のインスタンスの表示

  • 説明

    resource list_instanceまたはresource liコマンドを実行して、リソースグループ内のインスタンスと各インスタンスのリソース使用量を表示できます。

  • 構文

    <eascmd64> resource list_instance <resource_id>
  • パラメーター

    <resource_id>: 表示するリソースグループのID。 IDは、resource listまたはresource lsコマンドの出力にあるRESOURCENAMEパラメーターから取得できます。

  • 例:

    <eascmd64> resource li eas-r-lzo32vrdbtukr7te3i

    システムは次のような情報を返します。

    +------------------------------------+--------------+--------+----------------+----------------+-------------------+---------------------+----------------+------------+
    |            INSTANCENAME            |  INSTANCEIP  | STATUS | TOTAL/USED CPU | TOTAL/USED GPU | TOTAL/USED MEMORY |     CREATETIME      |  INSTANCETYPE  | CHARGETYPE |
    +------------------------------------+--------------+--------+----------------+----------------+-------------------+---------------------+----------------+------------+
    | cn-shanghai.i-uf6dj71ir6mh3gjmaz3a | 10.224.XX.XX | Ready  | 16/6           | 0/0            | 62240M/4200M      | 2020-03-18 13:09:34 | ecs.g6.4xlarge | PostPaid   |
    +------------------------------------+--------------+--------+----------------+----------------+-------------------+---------------------+----------------+------------+

リソースグループの直接接続を有効にする

  • 説明

    resource networkコマンドを実行して、リソースグループの直接接続を有効にします。 これにより、EAS仮想プライベートクラウド (VPC) とVPCの間に接続を確立できます。 ソフトウェアベースのロードバランサーへの直接接続を確立することで、VPCからEASのサービスを呼び出すことができます。 EASのプロセッサを使用して、VPC内のApsaraDB RDSやApsaraDB for Redisなどの内部ネットワークリソースにアクセスすることもできます。

  • 構文

    <eascmd64> resource network <resource_id> -s <network_cfg.json>
  • パラメーター

    • <resource_id>: 表示するリソースグループのID。 IDは、resource listまたはresource lsコマンドの出力にあるRESOURCENAMEパラメーターから取得できます。

    • <network_cfg.json>: ネットワーク設定ファイル。 次の情報は、ファイルの形式を示しています。

      {
        "Action":"create",
        "VSwitchId": "vsw-8vbsunr5bkcbyxh94****",
        "SecurityGroupId": "sg-8vbhwowdxzx5fjcx****",
        "VSwitchIdList": ["vsw-8xbsunr5abcbyqh93****", "vsw-8xbs1y7gu6cxbvqzw****"],
        "DestinationCIDR": "192.XX.XX.XX/16"
      }

      下表に、ファイルのパラメーターの説明を示します。

      パラメーター

      説明

      必須

      デフォルト値

      Action

      リソースグループの直接接続を有効にするかどうかを指定します。 有効な値:

      • create: 直接接続を有効にします。

      • delete: 直接接続を無効にします。 この場合、他のパラメータは必要ありません。

      N/A

      VSwitchId

      直接接続を有効にするプライマリvSwitchのID。 EASはvSwitchにelastic network interface (ENI) を自動的に作成します。 ENIを削除しないでください。 さもなければ、接続は失敗するかもしれない。

      N/A

      SecurityGroupId

      クライアントがデプロイされているECS (Elastic Compute Service) インスタンスが属するセキュリティグループのID。

      説明

      ECSインスタンスはこのセキュリティグループに属している必要があります。 さもなければ、接続は失敗するかもしれない。

      N/A

      VSwitchIdList

      ダイレクト接続を有効にするセカンダリvSwitchのID。 セカンダリvSwitchは、プライマリvSwitchと同じVPCに属している必要があります。 システムは、セカンダリvSwitchのCIDRブロックをEASのルーティングルールに自動的に追加します。

      不可

      空の配列 ([])

      DestinationCIDR

      直接接続を有効にするクライアントのCIDRブロック。 クライアントは、プライマリvSwitchと同じVPCに属している必要があります。 システムは自動的にCIDRブロックをEASのルーティングルールに追加します。

      不可

      空の文字列 ("")

      説明

      VSwitchIdListパラメーターは、DestinationCIDRパラメーターと同じように機能します。 両方のパラメーターは、EASクラスターとVPCの特定のCIDRブロックとの間の接続を確立するために使用されます。 指定した複数のvSwitchに接続する場合は、VSwitchIdListパラメーターを使用します。 VPC全体のCIDRブロックなど、大きなCIDRブロックに接続する場合は、DestinationCIDRパラメーターを使用します。 10.0.0.0/810.224.0.0/16、または10.240.0.0/16 CIDRブロックは使用しないことを推奨します。 そうしないと、ネットワークの競合が発生する可能性があります。 その他の要件がある場合は、アカウントマネージャーにお問い合わせください。

関連ドキュメント