3. リソースプラン

3.1. はじめに

本書では、Exastro Suite における リソースプラン設定 について説明します。
リソースプランの設定はシステム管理者のみ可能です(オーガナイゼーションユーザーからはアクセス出来ません)。

3.2. リソースプランとは

オーガナイゼーションごとに使用可能なリソース量を管理するためのものです。
プランに複数のリソースの上限値を設定しておき、オーガナイゼーション毎にプランを割り当てることで使用リソースを制限することができます。
表 3.19 リソースプラン設定例

オーガナイゼーション

リソースプラン

ワークスペース数

ユーザー数

ロール数

org1

スタンダードプラン

上限20

上限30

上限30

org2

プレミアムプラン

上限50

上限100

上限100

3.2.1. リソースプラン設定可能項目一覧

リソースプランで設定できる項目は以下の通りとなります。
表 3.20 リソースプラン設定可能項目一覧

項目名

既定値

最大値

説明

platform.roles
1000
1000
ロールの最大数
登録可能なロールの最大数を調整したい場合に設定してください。
platform.users
1000
1000
ユーザーの最大数
登録可能なユーザーの最大数を調整したい場合に設定してください。
platform.workspaces
100
1000
ワークスペースの最大数
登録可能なワークスペースの最大数を調整したい場合に設定してください。
ita.organization.ansible.execution_limit
25
1000
Ansible driver の Movement同時実行数の上限値
最大数を増やすことにより、パフォーマンスを向上させることが可能ですが、使用するリソースが増大しますので、リソースに見合った値を設定してください。
ita.organization.common.maintenance_records_limit
10000
100000
ITAにおけるレコード一括更新時の最大処理件数
API /api/{organization_id}/workspaces/{workspace_id}/ita/menu/{menu}/maintenance/all/
レコードの一括更新時のパフォーマンス(応答エラーになるなど)によって、値を調整してください。
ita.organization.common.upload_file_size_limit
104857600
107374182400
ITAにおけるファイルアップロード、Ansible処理におけるファイルサイズの最大サイズ(Byte)
お使いの環境に合わせてファイルのアップロード最大サイズを調整してください。
ita.organization.menu_export_import.buffer_size
1000
10000
ITAにおけるメニュー一括エクスポート・インポート時の非同期処理中に、データベースから一度に取得するデータ量の上限値
最大数を増やすことにより、パフォーマンスを向上させることが可能ですが、使用するリソースが増大しますので、リソースに見合った値を設定してください。

注釈

ita.organization.ansible.execution_limitについて

オーガナイゼーションごとの同時実行数上限は、設定した内容となりますが、Exastro システム全体での最大同時実行数があるため、システム設定値で設定されている値が同時実行数上限となります。
システム全体の最大同時実行数を超えるMovement実行は、実行待ちとなります。

注釈

ita.organization.common.maintenance_records_limitについて

Coudのファイルストレージを利用した環境下では、ファイルの扱いで処理件数が多い更新(削除)応答エラーになる場合があります。その際は最大処理件数を小さくすることで応答エラーを回避することも可能となります。

Tip

システムの上限値は、APIを利用して取得することができます。
APIの利用方法については 認証 を参照してください。
取得するAPIについては Exastro Platform API を参照してください。

3.2.2. リソースプラン設定手順

オーガナイゼーションへリソースプランを適用する場合は、あらかじめリソースプランを登録する必要があります。
登録したリソースプランを適用する方法は、 オーガナイゼーション作成 を参照してください。

3.2.3. 運用とシステムの動きについて

例) 1月まで「最大ワークスペース数=5のリソースプラン」、2月から「最大ワークスペース数=3のリソースプラン」に変更
運用とシステムの動き
  1. ユーザーから「最大ワークスペース数=3」へのリソースプラン変更申し込みがあった場合、登録済みデータが「ワークスペース数=4」であるため、2月からリミット値が超過することをシステム管理者から警告します。
  2. 登録済みデータが「ワークスペース数=4」であるため、リミット値であるリソースプランの「最大ワークスペース数=5」を超過せずユーザーはワークスペースの追加が出来ます。
  3. 登録済みデータが「ワークスペース数=5」であるため、リミット値であるリソースプランの「最大ワークスペース数=5」を超過したワークスペースの追加が出来ません(エラーになります)。
  4. 「最大ワークスペース数=3」を超過しているが、利用停止等のシステム的な規制はありません。
  5. 登録済みデータが「ワークスペース数=5」であるため、リミット値であるリソースプランの「最大ワークスペース数=3」を超過したワークスペースの追加が出来ません(エラーになります)。
  6. 登録済みデータを「ワークスペース数=5」から「ワークスペース数=2」に削除することが出来ます。
  7. 登録済みデータが「ワークスペース数=2」であるため、リミット値であるリソースプランの「最大ワークスペース数=3」を超過せずユーザーはワークスペースの追加が出来ます。

3.3. リソースプラン設定

3.3.1. 前提条件

本作業には下記のコマンドが必要となるため、事前にインストールをしてください。
  • 作業クライアントに必要なアプリケーション

    • curl

    • git

    • jq

注釈

画面からリソースプランを作成する際は、前提条件は必要ありません

3.3.2. 事前準備

オーガナイゼーションの作成を行います。
オーガナイゼーションの詳細については、 Organization (オーガナイゼーション) を参照してください。

注釈

画面からリソースプランを作成する際は、事前準備は必要ありません

3.3.3. リソースプラン設定の流れ

リソースプランを登録する流れは以下の通りとなります。

※リソースプランの適用は、 オーガナイゼーション作成 または 変更 をご参照ください。

3.3.4. 現状のリソースプラン項目確認

リソースプラン項目の確認方法には、下記の3通りの方法があります。
リソースプラン項目確認の画面操作はありません。
リソースプラン作成時に、設定が必要な項目が表示されます。

3.3.5. リソースプラン登録

リソースプランの登録方法には、下記の3通りの方法があります。
メニューより リソースプラン管理 を選択します。
../../_images/plan_menu.png
リソースプラン一覧が表示されますので、作成 ボタンを押下して、新しいリソースプランを登録することができます。
../../_images/plan_list_0_v1_9.png
  • リソースプラン登録
    • 登録するリソースプランのjsonファイルを設定
      取得した toolsフォルダ配下にある、 add-plan.sample.json を コピーして使用してください。
    ../../_images/plan_create_v1_9.png
    表 3.21 項目説明

    項目名

    説明

    リソースプランID

    リソースプランに割り当てる一意のIDを指定します。
    ここで指定した ID を使って、オーガナイゼーションへのリソースプランを紐づけることができます。

    リソースプラン名

    リソースプランに割り当てる名前を指定します。

    説明

    リソースプランの説明を記載します。

    リソースプラン制限値設定

    オーガナイゼーションにおける、リソースの制限を指定します。
    各項目の最大値、既定値は以下の通り
    ita.organization.ansible.execution_limit:【最大:1000】【既定:25】
    ita.organization.common.upload_file_size_limit:【最大:107374182400】【既定:104857600】
    platform.roles:【最大:1000】【既定:1000】
    platform.users:【最大:10000】【既定:10000】
    platform.workspaces:【最大:1000】【既定:100】

3.3.6. リソースプラン確認

リソースプランの確認方法には、下記の3通りの方法があります。
メニューより リソースプラン管理 を選択します。
../../_images/plan_menu.png
リソースプラン一覧が表示され、登録されているリソースプランを確認することができます。
../../_images/plan_list_1.png

Tip

現在リソースプランの変更や削除は未対応となっております。

注釈

作成したリソースプランの適用は、 オーガナイゼーション作成 または 変更 を参照してください。

3.3.7. 使用状況確認

オーガナイゼーション毎のリソース使用状況(ワークスペース数、ユーザー数、ロール数)を確認できます。
リソース使用状況の確認方法には、下記の2通りの方法があります。

Tip

オーガナイゼーション毎の使用状況確認の画面操作はありません。
「設定ファイルとスクリプトによる実行」または「Rest APIによる実行」をご利用ください。

以下の手順で実行

  • オーガナイゼーション毎の使用状況確認
    • コマンド
      ./get-usage-list.sh
      
    • コマンド実行後に入力(入力例)
      organization id : 取得するorganization idを入力します(省略時は全オーガナイゼーション)
      
      your username : システム管理者自身のユーザー名を入力します
      your password : システム管理者自身のパスワードを入力します
      
    • 成功時の結果表示
      "result": "000-00000" が、成功したことを示しています。
      < HTTP/1.1 200 OK
      < Date: Mon, 30 Jan 2023 08:18:57 GMT
      < Server: Apache/2.4.37 (Red Hat Enterprise Linux) mod_wsgi/4.7.1 Python/3.9
      < Content-Length: 432
      < Content-Type: application/json
      <
      { [432 bytes data]
      * Connection #0 to host platform-auth left intact
      {
        "data": [
          {
            "organization_id": "org1",
            "usages": [
              {
                "current_value": 0,
                "id": "platform.workspaces"
              },
              {
                "current_value": 1,
                "id": "platform.users"
              },
              {
                "current_value": 0,
                "id": "platform.roles"
              }
            ]
          }
        ],
        "message": "SUCCESS",
        "result": "000-00000",
        "ts": "2023-01-30T08:18:57.887Z"
      }