Rescale Software Publisher で独自のソフトウェアを導入する – 入門ガイド

概要

Rescale Software Publisher (「Software Publisher」または「Publisher」) は、組織が独自のソフトウェアを Rescale クラウド プラットフォームに導入できるようにするオプションの製品機能です。顧客には次の利点があります。

  • Rescale のソフトウェア カタログへのオンデマンド公開 - リクエストが手動で処理されるのを待たずに高速に実行
  • Rescaleでは、カスタム、プロプライエタリ、商用、オープンソース、ローカルツールやユーティリティなど、さまざまなソフトウェアを使用できます。 ワークフロー。
  • 使いやすく、高度なクラウド管理者アクセスや IT ネットワークやインフラストラクチャのスキルは必要ありません。Rescale は、顧客がプラットフォームにソフトウェアを自己公開するときに、すべての内部ストレージ、アクセス、セキュリティ、および特定のソフトウェア環境の依存関係を処理します。
  • に統合されています プラットフォームを再スケールし、他のばらばらのツールやインターフェース間でコンテキストを切り替えることなく、共通のルック アンド フィールを提供します。
  • すべての一元的な可視性、アクセス、管理 (HPC) ソフトウェア アプリケーションとパッケージ

Rescale Software Publisher の特徴と利点は次のとおりです。

  • Rescale Software Publisherは、以下の場所でライセンスを取得できます。 レベル、または組織レベルで、組織内のすべてのワークスペース アカウントにわたる可視性とアクセスを提供します。
  • お客様は、既存の Rescale ソフトウェア カタログを拡張して、組織内のユーザーがアクセスできるプライベート ソフトウェアを公開および管理できます。
  • バッチおよび ジョブは、Rescale ソフトウェア カタログ内の他の利用可能なソフトウェア パッケージやアプリケーションと同じように表示され、動作します。
  • ワークスペースごとに自己公開ソフトウェア バージョンの表示を制御し、使用されなくなった古いソフトウェア バージョンを削除できます。
  • サンドボックスはRescale Software Publisherによって導入された新しい概念で、公開前にソフトウェアをインストールしてテストするための一時的な作業環境です。サンドボックスのプロパティを選択できます。 使用するには、ウォールタイム、サンドボックスのサイズ、バッチまたはワークステーション ソフトウェア、MPI オプション、および Rescale ソフトウェア カタログに表示するオプションのサムネイル画像を指定します。
  • 自社で公開したソフトウェアは移植可能で、さまざまなコアタイプやクラウド リージョンで使用できます。
  • ソフトウェアを公開する際の新しい表示設定もあります。これについては、このドキュメントの後半で説明します。基本的に、公開したソフトウェアを他のユーザーと共有する準備ができたら、ワークスペース レベルで共有するか、すべてのワークスペースに表示される組織レベルで共有することができます。
  • Rescale Software Publisher を新規購入すると、専門家による HPC コンサルティング時間のパッケージがバンドルされ、新規ユーザーの公開プロセスや課題のトラブルシューティングを支援します。

以下の図は、公開プロセスの概要を示しています。

前提条件:

  • ユーザーは、ワークスペース レベルまたは組織レベルのいずれかで Rescale Software Publisher にアクセスするには、管理者ロール権限が必要です。
    • 組織管理者は、Publisher が有効になっているワークスペース内で公開したり、表示設定したりできます。
    • ワークスペース管理者は、Publisher の使用が有効になっているワークスペースに対してのみ、自分が管理するワークスペースを公開し、表示設定を行うことができます。
  • 会社または組織が Rescale Software Publisher にアクセスできるようにするには、Rescale の担当者が必要です。詳細については、Rescale チームにお問い合わせください。
  • 現時点では、Linux OS 上で実行できるソフトウェアのみ公開できます。Windows OS はセルフパブリッシングには対応していません。

UI アクセス:

管理者ユーザーとして管理ポータルにアクセスすると、上部に「ツール」メニューが表示されます。「ツール」メニューで、「ソフトウェア パブリッシャー」を選択します。

管理ポータルにこの新しい [ツール] メニューが表示されない場合は、Rescale ユーザー アカウントに必要な権限が設定されていない可能性があります。

Publisher に初めてアクセスすると、空のリストが表示されます。以下は、バッチとワークステーション (インタラクティブ)、過去に公開されたバージョンの数、最新バージョンなど、さまざまな属性を持つ、自己公開されたソフトウェアのサンプル リストです。ソフトウェアを名前で検索するための検索フィールドがあり、表示される各列は並べ替えることができます。「サンドボックス」という 2 番目のタブには、ワークスペースのアクティブなサンドボックスが表示されます。

新しいソフトウェア タイル

新しいソフトウェアを公開するには、まずソフトウェア アプリケーションまたはパッケージを登録する必要があります。これはソフトウェア タイルと呼ばれます。ソフトウェア タイルを作成したら、必要な数のバージョンを公開できます。新しいタイルを作成するときにソフトウェアをアップロードする必要はありません。

リスト テーブルの上にある [ソフトウェアの追加] ボタンを選択します。新しいソフトウェア タイルを作成するための次のページが表示されます。

新しいソフトウェアの名前と説明の必須フィールドを入力します。公開するソフトウェアを無人マシンで使用したい場合は、「バッチジョブ」または「ワークステーション」を選択します。 バッチジョブ または対話型ワークステーション経由でも使用できます。サムネイル画像の提供はオプションです。サイズは 100K 未満である必要があります。業界カテゴリ タグはオプションであり、必須ではありません。これらの業界タグは、UI でさまざまな業界カテゴリによってソフトウェアをフィルター処理するときにユーザーに表示される内容を制御します。

ライセンスに依存するソフトウェアを公開するオプションもあります。ソフトウェアタイルページの下部で、 ソフトウェアの実行に必要なプロパティ。これにより、自分で公開したソフトウェアは、Rescale ライセンス ホストまたは会社ライセンス プロキシ (CLP) を介して、Rescale のライセンス サービスのいずれかを使用できるようになります。

最後に、新しいソフトウェア タイルを作成する準備ができたら、[保存] ボタンをクリックします。

以下は、初期ソフトウェア タイルを作成した後、バージョンを公開する前の UI の例です。

新しいソフトウェアバージョン

ソフトウェア タイルを追加したら、1 つ以上のバージョンを公開できます。リストから作成したソフトウェア タイルを選択し、[ソフトウェア バージョン] セクションで [バージョンの追加] ボタンを選択します。Rescale Software Publisher では、新しいソフトウェア バージョンは、サンドボックスと呼ばれる一時的に分離された作業領域に作成されます。

新しいウィンドウが表示され、左側に「バージョン プロパティ」、「サンドボックス セットアップ」、「ハードウェア設定」の 3 つの選択オプションが表示されます。バージョン プロパティ ページから、必須フィールドに入力します。 

  • – ソフトウェアバージョンフィールドには、任意の英数字と、限られた特殊文字の組み合わせを使用できます。
  • Command – コマンド フィールドは、ユーザーが新しいジョブを作成して送信するためにこの公開バージョンを選択したときに、ソフトウェア カタログでユーザーに表示されるものです。
  • マウントベース – このフィールドは、ソフトウェアがジョブに配置されている、またはマウントされているパスになります。 実行時に、すべての自己公開ソフトウェアは「/software/」という名前のトップレベルディレクトリで始まります。通常、マウント ベースの新しい値を指定するときは、トップレベルディレクトリの下のソフトウェア バージョンを指定します。
  • 環境変数 – オプションで、公開されたソフトウェアがジョブ内で実行中に参照できる環境変数を提供することもできます。

ソフトウェア タイルのソフトウェア バージョン値を複製したり、重複するマウント ベース パスを作成したりすることはできません。

次に、「サンドボックスのセットアップ」ページに移動します。このページからソフトウェアをアップロードし、オペレーティング システムを指定し、ソフトウェアに MPI 依存関係があるかどうかを指定できます。プロジェクト フィールドはオプションであり、公開元の現在のワークスペースでプロジェクトの選択が必須に設定されている場合にのみ必要です。サンドボックスのサイズは、ソフトウェアとテスト ファイルをインストールしてテストするのに十分な大きさで、未使用のスペースを無駄にしないサイズを選択してください。

このサンドボックス セットアップ ページには、バージョン プロパティ ページのコマンドとは異なるオプションのコマンド フィールドがあります。このサンドボックス コマンド フィールドは、サンドボックス環境を最初に作成した後に、サンドボックス環境で自動化されたコマンドを実行する場合にのみ使用されます。サンドボックス環境へのアクセス準備が整ったら、後で直接ログインして、ソフトウェアを公開する前にビルド、テスト、検証するときにコマンドを実行したり、操作を実行したりできるようになります。

現在、サンドボックス環境の作成では Linux OS ディストリビューションのみがサポートされています。

次に、「ハードウェア設定」ページに移動します。ここでは、利用可能なさまざまなプロセッサ コア タイプから選択し、サンドボックスで実行するコアの数を設定することもできます。

創造する

すべてのページでサンドボックス情報の入力が完了したら、「作成」ボタンをクリックします。新しいサンドボックスを作成する前に、任意のセットアップ ページを確認するオプションがあります。左側に新しい「ステータス」エントリが表示されます。これを選択すると、サンドボックス作成の進行状況の詳細を監視できます。

アクティブなサンドボックスには管理ウィンドウも用意されています。これについては次のセクションで説明します。

有効

サンドボックスのセットアップが完了すると、UI に次の内容が表示されます。

  • サンドボックスの状態 – 現在のサンドボックスの状態が上部に表示されます - 「アクティブ」
  • 透明性 – サンドボックスがアクティブな間、すべての新しいソフトウェア公開セッションは、可視性の値「ドラフト」で開始されます。新しいソフトウェア バージョンを公開した後、管理者が設定できる追加の可視性設定があります。これについては後で説明します。
  • 接続ボタン– これは、以下に説明するリモートデスクトップ経由でサンドボックス環境にアクセスする方法の1つです。
  • 一時停止ボタン– アクティビティを一時停止する必要がある場合はサンドボックスを一時停止し、後で再開することができます
  • SSHコマンドのコピーボタン– これは、以下に説明するサンドボックス環境にアクセスする別の方法です。
  • – SSHセクション内のこれらのボタンは、サンドボックス環境へのブラウザ内SSHアクセスを提供します。
  • サンドボックスをキャンセルボタン– 公開前であればいつでも公開セッションをキャンセルできます。サンドボックスにアップロードされたファイルやソフトウェアは保存されません。
  • 公開ボタン– これは、ソフトウェアのアップロード、ビルド、テスト、検証のすべてのタスクが完了したときです。新しいソフトウェア バージョンを公開すると、サンドボックスのすべてのコンテンツが削除され、サンドボックス環境がシャットダウンされます。

サンドボックスを作成した後、サンドボックスに直接接続するには、いくつかの方法があります。

  • 「接続」ボタンを選択して DCV デスクトップ エミュレーションを実行する
  • 「アクション」セクションの下をクリックしてブラウザ内 SSH 接続
  • ローカル ワークステーションからの SSH 接続。これはより高度なオプションであり、製品ドキュメントの「」で説明されています。ローカル ワークステーションからの SSH"

Publisher 内でソフトウェア バージョンの詳細を表示すると、左側からアクセスできるアクティブ サンドボックス用の管理ページがあります。管理ページでは、次の機能が利用できます。

  • サンドボックスに追加のファイルをアップロードします。デフォルトでは、これらは$HOME/workにコピーされます。
  • サンドボックスのウォールタイムを延長する
  • サンドボックスを他のユーザーやカスタマーサポートと共有する

公開するソフトウェアは、新しいサンドボックスを最初に作成するときに指定したマウント ベース パスの下に配置する必要があります。マウント ベース パスの外部にアップロードまたはコピーしたその他のソフトウェアまたはファイルは、新しいバージョンを公開するときに保持されません。

サンドボックスへの接続

この例では、「接続」ボタンを選択して続行します。仮想デスクトップ環境は、その下に Rescale Workstation を使用しています。シェル/CLI オプションのターミナル ウィンドウにアクセスするには、下部にあるターミナル エミュレータ ボタンを選択します。

新しいサンドボックスを作成するときにソフトウェアをアップロードすることを選択した場合、ソフトウェアはローカル ユーザーの $HOME/work ディレクトリに配置されます。ファイルをアップロードするときに、TAR ファイルを自動的に解凍して抽出するオプションが UI に用意されており、その内容はサンドボックス内のソフトウェアのマウント ベース ディレクトリに自動的にコピーされます。

このリモート仮想デスクトップの対話型モードでは、サンドボックスにログインし、SSH またはターミナル セッションを介してコマンドを実行できます。

あなたは走れる git() サンドボックスから直接ソフトウェアやその他のマテリアル (テスト データなど) を取得します。 HPC ソフトウェア パッケージ (SU2) のチュートリアル データを取得する例を次に示します。

ソフトウェアを Rescale サンドボックス環境に移動または転送するための他のオプションもあります。 sftp().

更新

既存の Publisher サンドボックスを更新できます。これには、追加ファイルのアップロード、ウォールタイムの延長、さらにはサンドボックス管理ページで選択した場合はアクティブなサンドボックスのキャンセルも含まれます。サンドボックスの管理ページについては、前のセクションを参照してください。

サンドボックス環境

デフォルトのサンドボックス環境変数が使用可能です。サンドボックス構成で指定するマウント ベースは、「RESCALE_MOUNT_BASE」という環境変数として使用できます。これは、バッチ ジョブまたはワークステーションを実行するために選択されたときに公開されたソフトウェアが存在する最上位ディレクトリであることを思い出してください。この環境変数には、サンドボックス内で使用する任意のローカル スクリプトまたはツールでアクセスできます。アクティブなサンドボックス環境に初めてログインするときに RESCALE_MOUNT_BASE 環境変数にアクセスする例を次に示します。

サンドボックスで注目すべきもう1つの環境機能は、 rescale_env.sh ファイルです。このファイルはPublisherによって自動的に作成され、更新され、 spub ヘルパーユーティリティについては、次のセクションで詳しく説明します。このファイルは、マウントベースディレクトリの「rescale/」というサブディレクトリにあります。 

[uprod_cRLAqe@ip-10-25-75-193 ~]$ ls -l $RESCALE_MOUNT_BASE/rescaletotal 4
-rw-rw-rw- 1 uprod_cRLAqe uprod_cRLAqe 171 Jan 31 01:31 draft_env.sh
-rw-rw-r-- 1 uprod_cRLAqe spub           0 Jan 31 00:53 rescale_env.sh
[uprod_cRLAqe@ip-10-25-75-193 ~]$ 

あなたは考えることができます rescale_env.sh ファイルをセカンダリ Bash ファイルとして使用します。このファイルの内容は、公開されたソフトウェア バージョンが使用されるジョブの起動時に自動的に取得されます。このファイルは、spub_validate などの一部の spub ツールによって自動的に更新されますが、必要に応じて自分で直接更新することもできます。

その rescale_env.sh 新しいサンドボックス内のファイル 最初は空です。ソフトウェアの構築、テスト、実行の過程でPATHの環境を変更したり、新しい環境変数を追加したりした場合は、 spub_validate コマンドはそれらのローカルの変更を拾い上げ、 rescale_env.sh このファイルは、公開されたソフトウェア バージョンが新しいジョブの実行対象として選択されたときに後で実行されます。

これは新しいサンドボックスインスタンスの例で、 rescale_env.sh ファイルは空で始まります。その後、$PATHを変更する変更が行われ、新しい環境変数が作成されます。 spub_validate これらの更新後にコマンドが実行され、rescale_env.sh ファイルに書き込まれる内容の前後を確認できます。

[uprod_pUjfEe@ip-10-25-76-186 ~]$ cat $RESCALE_MOUNT_BASE/rescale/rescale_env.sh
[uprod_pUjfEe@ip-10-25-76-186 ~]$ export PATH=/tmp/tstdir:$PATH
[uprod_pUjfEe@ip-10-25-76-186 ~]$ export VARZ=NEW
[uprod_pUjfEe@ip-10-25-76-186 ~]$ spub_validate
Extracting and saving current environment settings
Finished checking environment, this sandbox can be published and this 
environment will be recreated on future Rescale jobs
[uprod_pUjfEe@ip-10-25-76-186 ~]$ cat $RESCALE_MOUNT_BASE/rescale/rescale_env.sh
export LD_LIBRARY_PATH=/software/samplesoftv3/lib:/usr/local/lib:$LD_LIBRARY_PATH
export VARZ=NEW
export PATH=/software/samplesoftv3/bin:/opt/amazon/efa/bin/:/usr/share/Modules/bin:/usr/local/sbin:/tmp/tstdir:$PATH
[uprod_pUjfEe@ip-10-25-76-186 ~]$ 

PATH値が調整されて、追加のディレクトリが含まれるようになったことに気づくでしょう。 /tmp/tstdir, spub_validate PATHの評価順序が保持されるため、 $RESCALE_MOUNT_BASE/bin 最初です。

編集することもできます rescale_env.sh ファイルに直接環境変数を追加することで、公開後にソフトウェアバージョンを実行するジョブで使用できるようになります。次の例は、新しい環境変数「LBIRD」を rescale_env.sh $RESCALE_MOUNT_BASE/rescale/ の下のファイル: 

まとめると、環境変数と値LBIRD=33が rescale_env.sh ファイル、そして spub_validate ソフトウェアバージョンを公開する前に実行されました。

ソフトウェア バージョンが公開された後にジョブで実行されるテスト コマンドは次のとおりです。

このテスト ソフトウェア バージョンが公開された後、新しいバッチ ジョブを実行するために選択されました。

ジョブで設定されている環境変数をテストした出力結果は次のとおりです。

この例では、サンドボックスレベルの環境変数が設定または記録されていることを示しています。 rescale_env.sh ソフトウェアバージョン経由で公開した後も保持されます キャプチャされ、ジョブ内でアクセスできます。

Spub ヘルパー ツール

Publisherサンドボックス環境には、セルフパブリッシングを支援するためのカスタムツールとユーティリティのセットが含まれています。これらは「spub」ツールと呼ばれています。これらは以下にあります。 /program/sxp-interactive/util さまざまなspubツールの詳細については、後のセクションで説明します。これらのツールの概要を確認するには、 spub_help コマンド、および spub_helper_list

常に実行する必要があります spub_validate ソフトウェアを公開する前に、サンドボックス環境からコマンドを実行してください。

サンドボックス インスタンスにログインすると、作業環境への完全なルートまたは sudo アクセスは得られません。マウント ベース パス (/software/*) の下では完全な読み取りおよび書き込みアクセス権が与えられますが、オペレーティング システムの場所やその他の制限されたシステム レベル領域にファイルやコンテンツを直接更新したり書き込んだりすることはできません。spub ヘルパー ツールは、ルートまたは sudo アクセスを必要としない方法で、依存するソフトウェア パッケージ、ユーティリティ、コンパイラ、ライブラリなどをインストールするのに役立つ 1 つの方法です。

パブリッシュ

公開の準備ができたら、公開前に必要なソフトウェアファイルとバイナリがすべてマウントポイントベースに配置されていることを確認し、ソフトウェアの実行に不要な一時ファイルを削除してクリーンアップします。これにより、ソフトウェアバージョンの合計ストレージサイズを削減できます。必要なソフトウェアテストを実行し、 指定されたマウントベースディレクトリの下にあるソフトウェアで spub_validate 公開前の最後のステップとしてコマンドを実行します。

公開前にサンドボックス内でソフトウェアをテストする例を次に示します。

UI から、ステータス ページの下部にある [公開] ボタンを選択します。最初に確認して承認する必要があるという確認プロンプトが表示されます。次に、ページの上部にあるステータス値が最初に [公開キューに登録] に変わり、次に [公開中] を含む一連の状態が続き、最後に [公開済み] の状態になります。

また、Publisher のメインホームページの「サンドボックス」ページから、ワークスペース内のすべてのアクティブなサンドボックスのステータスを表示することもできます。

注意: このソフトウェア バージョンを登録して使用可能にするために、バックグラウンドで複数のアクティビティが実行されるため、公開手順には数分かかることがあります。新しいソフトウェア バージョンごとにウイルス対策セキュリティ スキャンが実行されるため、ソフトウェア イメージのサイズが大きい場合は公開に時間がかかります。

ソフトウェア バージョンの公開アクションが完了すると、バージョン ステータスが「公開済み」に更新されます。ソフトウェア バージョンが正常に公開されると、サンドボックスはクリーンアップされ、すべてのサンドボックス接続が無効になります。また、ソフトウェア バージョンが公開されると、可視性が自動的に「管理者非公開」に設定され、サンドボックスを操作する管理ページ機能が無効になります。これは、公開が成功した後は一時的なサンドボックスが存在しなくなるためです。また、ソフトウェア バージョンが公開されると、UI 内に新しいページ「許可されたワークスペース」が表示されます。これについては、後ほど説明します。

ローカル ワークスペース内に新しいジョブまたはワークステーションを作成して、新しく公開されたソフトウェア バージョンにアクセスし、テストおよび検証できるようになりました。

透明性

公開されたバージョンの詳細を表示するときに、「表示」メニューがあります。管理者は、ソフトウェア バージョンを最初に公開した後、ステージ間で宣伝するために複数の表示設定を設定できます。設定は次のとおりです。

可視性設定/段階 詳細説明
ドラフト新しいバージョンの公開セッションを開始する初期状態。この公開状態ではサンドボックスが存在します。どの Rescale コンピューティング環境にも物理スナップショットはまだ存在せず、組織内のどのワークスペースの Rescale カタログにもソフトウェアは表示されません。
管理者プライベート物理スナップショットは、新しいジョブまたはワークステーションによって選択されたときに、公開のこの段階で最初に作成されます。サンドボックスは削除されます。ソフトウェアは、カタログから管理者のみが表示およびアクセスできます。通常のユーザーは、表示が管理者プライベートに設定されているバージョンを表示できません。
プライベートワークスペースこれは、公開したソフトウェア バージョンを他のユーザーと共有するためのデフォルトのオプションです。公開したソフトウェアの可視性を Workspace Private に昇格すると、選択した名前付きワークスペースで利用できるようになります。共有するワークスペースの組織管理者権限を持っているか、ワークスペース管理者である必要があります。
組織 非公開これは、公開されたソフトウェア バージョンを他のワークスペースと共有するためのもう 1 つのオプションです。このオプションは、Publisher が組織レベルでライセンスされている場合にのみ使用できます。公開されたソフトウェアの可視性を組織プライベートに昇格すると、ソフトウェア フィルターの制限が適用されている限り、組織内のすべてのメンバーがすべてのワークスペースでソフトウェアを表示できるようになります。

UI から、公開されたソフトウェアの可視性を初期状態(デフォルトでは常に「管理者プライベート」から始まる)から設定する方法は次のとおりです。

管理者プライベート

ソフトウェアが初期状態 (管理者プライベート) に公開されると、管理者であるあなたと、公開されたワークスペースで適切なアクセス権を持つ他の管理者は、ジョブを作成するときに、Rescale ソフトウェア カタログからこの新しいソフトウェア タイルとバージョンにアクセスして使用できるようになります。この段階での表示は、管理者のみに制限されています。

以下は、ソフトウェアが表示されるワークスペースの Rescale ソフトウェア カタログに、新しく公開されたソフトウェア バージョンがどのように表示されるかを示した例です。ソフトウェア カタログに既に存在する他のソフトウェア バージョンと同じように表示され、動作します。

このソフトウェア バージョンが正常に動作することをテストして検証したら、組織内の他のユーザーと共有できるようになります。

REMINDER: 公開されたソフトウェアを他の人が利用できるようにする前に、必ずテストと検証を行ってください。

新しく公開されたバージョンを他のユーザーと共有する場合、XNUMX つの公開オプションがあります。

  • バージョンの可視性をワークスペースに公開する(ワークスペースは非公開)
  • 組織内のすべてのワークスペースにわたる可視性を公開します (組織のプライベート)
    • このオプションは、Publisher が組織レベルでライセンスされている場合にのみ使用できます。

プライベートワークスペース

組織が Rescale Software Publisher のライセンスを取得している方法と、ロール管理者のアクセス権限に応じて、公開されたソフトウェア バージョンをワークスペース間で共有するオプションがあります。ソフトウェア タイル ページで、公開したバージョン番号を選択します。ページ上部の「公開済み」ステータスの横にあるメニューを選択し、「ワークスペース プライベート」を選択して、公開されたソフトウェア バージョンをワークスペースの名前付きリストに表示します。次に、左側で「許可されたワークスペース」を選択し、このソフトウェア バージョンを共有するワークスペースを選択します。

管理者としてアクセスできるワークスペースのみを選択できます。

「許可されたワークスペースを更新」ボタンをクリックして選択プロセスを完了します。

組織 非公開

公開されたソフトウェア バージョンの表示を「組織プライベート」に変更する場合、前述の手順と同様の手順に従います。このオプションを UI で選択できるようにするには、組織管理者の役割を担う必要があり、組織レベルで Publisher のライセンスを取得している必要があることに注意してください。ユーザーに単一のワークスペースへの管理者アクセスのみが付与されている場合、公開されたソフトウェアの表示を組織プライベートに設定することはできません。

削除

公開したソフトウェアの個々のバージョンを削除できます。また、ソフトウェア タイルまたはパッケージ全体とそのすべてのバージョンを UI から削除することもできます。使用されなくなった個々のソフトウェア バージョンを削除するには、バージョン リストでゴミ箱アイコンを選択します。

公開されたソフトウェア バージョンの詳細を表示するには、「バージョンの削除」ボタンも使用できます。

サンドボックスの保存

デフォルトでは、ソフトウェアバージョンの公開後、サンドボックスは削除され、公開済みのソフトウェアバージョンの内容は変更できません。新しいバージョンを公開する前にサンドボックスを保存するオプションがあり、これにより、バージョンの公開後もサンドボックスが保持されます。この機能は、新しいバージョンを作成せずに、最近公開されたソフトウェアバージョンの反復的な更新と修正を行いたい管理者にとって便利です。サンドボックスを保存することを選択すると、インスタンスはアクティブなままになり、アップロードおよびビルドしたソフトウェアも保持されます。

サンドボックスの保存を有効にするには、管理セクションに移動し、「サンドボックスの保存」セクションの下のボタンを選択します。

サンドボックスの保存が有効になっている場合、アクティブなサンドボックスと一時停止中のサンドボックスの両方において、公開されたバージョンのサンドボックスのステータス値に「(公開済み)」という文字列が追加されます。

サンドボックスの保存を有効にした場合、不要になったら手動で削除する必要があります。保存されたサンドボックスは、削除されるまでコストが発生するため、アイドル状態のままにしたり、長期間停止したりしないように注意してください。管理者が保存されているサンドボックスの存在を忘れた場合に予期せぬコストが発生するリスクを最小限に抑えるため、保存されたサンドボックスのウォールタイムを厳密に設定することをお勧めします。サンドボックスを保存するオプションは、ソフトウェアバージョンの公開後は利用できません。

保存された砂場の利点保存された砂場の欠点
以前に公開されたバージョンを更新する機能保存されたサンドボックスがアクティブまたは一時停止されている間、追加コストが発生します。
バージョン更新の反復を高速化管理者がサンドボックスを忘れる可能性は、公開後も残ります。
バージョンの公開に使用された以前のファイルと作業はすべて保存されます。

ソフトウェアの移植性とヘルパー機能

独自のソフトウェアを Rescale プラットフォームに持ち込む場合のベスト プラクティスは、ソフトウェア アプリケーション、パッケージ、またはツールを可能な限り移植可能にすることです。 これは、Rescale プラットフォームが、マネージド コンピューティング クラスター上で実行されるソフトウェアが基盤となるハードウェアおよびオペレーティング システムから切り離されるように設計されているためです。 これにより、お客様は、ハイ パフォーマンス コンピューティング ワークロードを実行するためのコア ハードウェア オプションとターゲット環境を選択する際に、最大限の柔軟性が得られます。 HPC ソフトウェアが基盤となるオペレーティング システムと絡みすぎたり、他のハードコーディングされた依存関係がある場合、時間の経過とともにソフトウェア ソリューションが脆弱になり、OS パッチのような単純な更新では、ソフトウェアを再インストールしてテストする必要が生じる可能性があります。そのような変化が起こるとき。

これが、Rescale サンドボックスの設計上、セキュリティ上の理由から、スーパー ユーザーや管理者権限 (root ユーザー アカウントや sudo アクセスなど) を許可しない理由です。 ただし、そのような昇格されたアクセスを必要とせずに、Rescale が制御するホスト環境内でソフトウェアを正常にインストール、実行、テストできる可能性は依然としてあります。 Rescale は、作成されるすべてのサンドボックスに、ソフトウェアのインストールとテストに役立つ一連のユーティリティを提供し、ソフトウェアの移植性と柔軟性を高めます。 これらのヘルパー関数は、 yum install から python pip まで、通常 root または sudo アクセスを必要とする多くの一般的なインストール コマンドとパッケージに対応します。 以下は、公開されたソフトウェアが移植可能であり、推奨されるベスト プラクティスに従っていることを確認するために使用できる Rescale ヘルパー関数とユーティリティの概要です。

Spub ヘルパー ユーティリティの使用

大まかに言うと、サンドボックス内のオペレーティング システム (OS) イメージは、インストールされたソフトウェアを実行するクラスターを表します。 ただし、プラットフォーム上でソフトウェアを公開および実行するための Rescale 設計では、公開するソフトウェアが基盤となる OS から切り離されていることに注意することが重要です。 公開されたソフトウェアと OS は、XNUMX つのボリュームまたはスナップショットとして一緒に保存されません。 この設計は、Rescale カタログで公開されているソフトウェアの移植性を最大限に高め、公開されているソフトウェアをさまざまなハードウェア プラットフォームおよび環境で実行できるようにすることを目的としています。

HPC ソフトウェア パッケージ、アプリケーション、およびその他のサポート ツールを専用のローカル環境でインストール、構成、実行することに慣れている多くのユーザーは、オペレーティング システム内で root または管理者権限を持ち、任意の場所にファイルを直接追加および変更できます。ソフトウェアを Rescale プラットフォームで使用できるようにする際のアプローチを調整するため。 Rescale プラットフォームでソフトウェアを公開する際の主なパラダイム シフトは、ソフトウェアのマウント ポイントまたはマウント ベースと呼ばれる、指定されたディレクトリ領域内にすべての依存関係が自己完結するようにソフトウェアをパッケージ化する必要があることです。 Rescale カタログで公開されるソフトウェアは移植可能である必要があるため、さまざまなハードウェア コア タイプやさらにはさまざまな CSP にわたるジョブで実行するように選択できます。ベスト プラクティスとして、OS 領域にファイルを直接インストールしたり変更したりしないでください。 。 コンパイラや MPI ライブラリなど、Rescale が自動的に提供する一般的なソフトウェアの依存関係がいくつかあります。これらは、公開されたソフトウェアの移植性を確保するために、マウント ベース ディレクトリ内の一貫した場所で利用可能になります。 さらに、次の Spub ヘルパー ツールも、Rescale プラットフォームでソフトウェアを公開しているユーザーに提供されます。これについては、後で詳しく説明します。

仮想サンドボックスでソフトウェアのアップロード、インストール、構成、検証を行う場合、公開時に VM 全体が保存されません。 代わりに、マウント ベース ボリュームと関連する環境設定のスナップショットがキャプチャされます。 これはインストールの移植性に影響するため、慎重に扱う必要があります。 一般に、必要なバイナリ、スクリプト、ライブラリなどがすべて、ソフトウェアに指定したマウント ベースの下に配置されていることを確認することをお勧めします。

例として、パス「/software/my-great-software” をマウントベースとして使用すると、次のようになります。

  • /software/my-great-software
  • /software/my-great-software/bin
  • /software/my-great-software/scripts
  • /software/my-great-software/lib

移植性の高いインストールを確保し、ユーザーの負担を軽減するために、Rescale は、UI で選択されたマウント ベースにインストールをポイントするように事前設定およびデフォルトで設定されている多数のヘルパー機能を提供します。 これらの関数には接頭辞が付けられます。 spub_* クラスタ上のターミナルから次のコマンドでリストおよび説明できます。 spub_helper_list。 ザ・ spub_help 新しいヘルパーが追加されると、関数には常に最新の命令セットが含まれます。   
これらの Spub ヘルパー関数の場所は、作成されたすべての Publisher サンドボックスのデフォルトの場所にインストールされます。 このディレクトリは /program/sxp-interactive/util と呼ばれる SPUBUTILS このドキュメントの参照用。 コンテンツのディレクトリのリストは次のとおりです。

次のファイルを参照すると、使用可能な spub ヘルパー関数の概要が表示されます。 

> $SPUBUTILS/spub_helper_list | more

ヘルパー関数を対話的に実行する場合、現在のシェルへの PATH の追加や環境変数の設定など、インストーラーによって実行する必要があるアクションが多くの場合あります。 これらは、シェル内のメッセージを通じてユーザーに通知されます。 例えば 

************************************************** ***************

*********************** 重要 **************************

************************************************** ***************

続行する前に、シェルで次のコマンドを実行してください。

    ソース/program/my-great-software/venv/bin/activate

組み込みヘルパーを使用する必要がある場所を強調する使用例がいくつかあります。 

yum: spub_yum_install 

通常、yum、dnf などのサードパーティのパッケージ管理システムを使用する場合、システム レベルでインストールするように設計されています。 これには、クラスターに対する管理者権限と、公開された分析に引き継がれない場所にインストールされたライブラリの両方が必要です。 模倣するラッパー yum install rpm をダウンロードしてマウントベースにインストールする機能が提供されています。 走るというよりも sudo yum install cowsay ヘルパーを使用すると、コマンドは次のようになります spub_yum_install cowsay 

実行後にメッセージが表示される場合があります spub_yum_install シェル内の環境変数をエクスポートします。 表示される指示に従ってください。

パイソン: spub_add_python_venv

一般に、多数の外部パッケージ (numpy、pandas など) を必要とする Python コードを実行する場合は、仮想環境を作成することをお勧めします。 Rescale パブリッシング サンドボックスでこれを実現するには、ユーティリティ spub_add_python_venv 使用すべきです。 これにより、バージョンを選択して Python 仮想環境がセットアップされ、サンドボックスの公開時に pip 経由でインストールされたパッケージが利用可能になることが確認されます。 

注: 常に source コマンドは最後に指定されます。 spub_add_python_venv 完了します:

>source /{YOUR_MOUNT_BASE}/venv/bin/activate

何らかの理由でこのヘルパー関数の実行中に問題が発生した場合は、次のコマンドを実行して元に戻すことができます。 spub_remove_venv そして最初からやり直してください。 このコマンドはサンドボックス内で XNUMX 回だけ実行する必要があります。

Python には次のような既知の制限があります。 spub_add_python_venv は、リポジトリに手動で追加される非標準パッケージのインストールをサポートしません。 このような Python パッケージの回避策は、サンドボックス内のソース コードからビルドすることです。

gccの: spub_update_gcc

のデフォルトバージョン gcc 現在 Publisher サンドボックス マシン イメージに提供されているものはかなり古いものです。 spub ユーティリティ spub_update_gcc を使用して、新しいバージョンにアップグレードします。 現在、この spub ヘルパー関数ではバージョン 7 または 8 のみがサポートされています。 新しいバージョンが必要な場合は、サンドボックス環境内に手動でインストールする必要があります。

: spub_validate

サンドボックスがまだ実行されている間に、ソフトウェアが正しく構成されていることを確認するために、いくつかの小さなテストケースを実行することをお勧めします。バイナリが実行され、すべてのライブラリが見つかった場合は、公開する準備ができているはずです。最終検証の準備ができたら、  spub_validate 環境変数があるかどうかを確認するために提供されています。 PATHs ホーム ディレクトリを参照するものは、将来の Rescale クラスターには引き継がれません。 これらは最終的には無害である可能性がありますが、一方で、スクリプト/ライブラリなどの場所をマウント ベースに移動するなどのアクションによって修正する必要がある場合もあります。 例えば

[uprod_eqrCUc@ip-10-25-10-6 ~]$ spub_validate 

現在の環境設定を抽出して保存する

::: 警告: このサンドボックス内の一時的な $HOME を参照する ENV VAR が定義されています。 

          名前: BAD_VAR

          値: /enc/uprod_eqrCUc/foo

環境を確認した後、このサンドボックスを公開でき、この環境は今後の Rescale ジョブで再作成されます。 spub_validate の実行出力は、指定したソフトウェア インストール ポイントの下のディレクトリ $MOUNT_BASE/rescale に書き込まれます。 XNUMX つのファイルが作成されます。

  • command_history.txt – シェル内で実行されるすべてのコマンドをキャプチャします
  • draft_env.sh – 中間ファイル(セッションが途中で終了した場合は、次回のログイン時に再開されます)
  • rescale_env.sh – このファイルには、段階的に追加または変更された ENV のみが表示されます。 Rescale が生成するデフォルトの ENV は、このファイルには含まれません。

成功した場合の出力例を次に示します。 spub_validate 走る :

この例では、テストおよび検証しているソフトウェア バージョンに新しい環境変数の名前と値を Publisher UI から直接追加する手順が示されています。

その他にも、Rescale クラスター上で最適に実行される方法で構築するように設計されたパッケージ インストーラーであるヘルパー関数が多数あります。 これらは、次の命名規則に従います。 spub_add_<pkg>、例えば。 spub_add_R。 ユーザー入力によって上書きできるデフォルトのバージョンが記載されています。 パッケージの構築に加えて、追加の R ライブラリのインストールなどのアクションが正しく保存され、公開された分析で使用できるようにする方法についても説明します。 

よくある質問

  • サンドボックスのデフォルト バージョンではない特定のバージョンの Python をインストールする必要がある場合はどうすればよいですか?

使い方 spub_add_python_venv ヘルパー関数を使用すると、サンドボックス環境にインストールする Python のバージョンを指定できます。 これは最初に表示されるプロンプトです。

成功すると、Python バージョンがマウント ベース ディレクトリにインストールされたことを示すメッセージが表示されます。

Installed Python-3.8.16 to /{YOUR_MOUNT_BASE}/pyenv/versions/3.8.16

重要: このファイルをソースするには、このヘルパー関数の実行の最後に表示される指示に従ってください。

>source /{YOUR_MOUNT_BASE}/venv/bin/activate
  • サンドボックス内で直接 root または sudo ユーザー アクセスを必要とせずに Python pip インストールを実行するにはどうすればよいですか?

まず、上記の例に従って、Publisher サンドボックス内に Python 仮想環境を作成する方法を示します。 spub_add_python_venv 。 その後、必ずsource コマンドを実行してください。  source /{YOUR_MOUNT_BASE}/venv/bin/activate  。 これらの手順を完了すると、現在 PATH から参照している Python バイナリとツールが次の場所にあることを確認できます。 /{YOUR_MOUNT_BASE}/venv/bin .

bash-4.2$ source /program/SWBASEDIR/venv/bin/activate
(venv) bash-4.2$ which pip
/program/acecast2/venv/bin/pip
(venv) bash-4.2$ which python
/program/SWBASEDIR/venv/bin/python
(venv) bash-4.2$ 

走ることも忘れずに spub_validate .

これで、次のような pip install コマンドを実行できるようになります。

ピップインストール <pkg-name>

  • 新しいバージョンの gcc を入手するにはどうすればよいですか?

上記のヘルパー ユーティリティを参照してください。 spub_update_gcc

  • spub* ヘルパー関数の使用中に、「デバイスに空き容量がありません」というエラー メッセージが表示されました。どうすれば回復できますか?

1 GB のサイズでサンドボックスを作成した場合、Python pip install を実行すると、サンドボックスのディスク制限サイズに達する可能性があります。 現時点では、サンドボックスのディスク サイズを動的に増やす方法はありません。 回避策としては、この公開セッションをキャンセルし、より大きなサンドボックス ディスク サイズで新しいソフトウェア バージョンを作成する必要があります。

「」を実行できますdf -H」コマンドを使用して、MOUNT BASE ディレクトリの下の利用可能なスペースを表示します。

高度なユースケース

のMPI – 

目的の分析に MPI が必要な場合は、さらに考慮する必要があります。 ビルド サンドボックスの UI を通じて選択できる、事前構成された MPI フレーバーがいくつかあります。 Rescale は通常、最新バージョンまたはごく最近のバージョンを構成します。 理想的には、これらはほとんどのアプリケーションに適していますが、最新の MPI の多くは下位互換性があることに留意してください。 さらに、さまざまなフレーバー間で ABI 互換性があり、Rescale は、ABI 互換 MPI (MPICH など) でコンパイルされたコードで使用できる Intel MPI を提供します。 MPI はソースから、または Spack などのパッケージ管理システムを通じてインストールできますが、これはお勧めできません。 

サンドボックスの MPI バージョンを選択すると、インストールを可能な限り移植可能に保つために、Rescale が提供する MPI ラッパー スクリプトが追加されます。 コマンド mpirun にはエイリアスが付けられており、将来ソフトウェアが実行されるハードウェアの種類に応じて、必要なライブラリとフラグがデフォルトで追加されます。 この抽象化を適切な場所に保持することをお勧めします。これは、デフォルトとは異なる mpirun を指す PATH が明示的に設定されていない限り行われます。 これは、Rescale HPC によって公開されたソフトウェアと自己公開の分析全体で正規の動作を維持するのにも役立ちます。  

ソースからコードをコンパイルする場合は、適切な MPI の場所への構成を指定する必要がある可能性があります。 MPI のバージョンに関係なく、場所は環境変数 MPI_ROOT に保存されます。 従来の make パラダイムの構成ステップは次のようになります。  

      $./configure --with-mpi=$MPI_ROOT --prefix=/program/my-great-install … 

インテル コンパイラー – 

Rescale は、Intel oneAPI ツールキットをサンドボックス OS の一部として /opt/rescale/oneapi で提供します。 これは、Publisher でソフトウェアの新しいバージョンを公開するときにオプションとして選択できます。サンドボックス バージョンのページで、MPI バージョンとして「Intel MPI 2019」を選択します。 PATH 内でインテル コンパイラー コンポーネントを使用できるようにするには、サンドボックス内で次のファイルを入手する必要があります。

  • source /opt/rescale/oneapi/setvars.sh

あるいは、コンパイラ アーティファクトへの絶対パス名を使用することもできます。

既知の制限事項

  • Windows OSで動作する公開ソフトウェアはサポートされていません
  • サイズの大きいソフトウェアイメージは、新しいバージョンの公開に時間がかかります。
  • 新しいソフトウェア バージョンを使用して初めてシミュレーション ジョブを実行する場合、キャッシュの遅延が発生し、ジョブの開始が遅くなる可能性があります。
  • コマンドライン インターフェイス (CLI) 現時点では直接APIアクセスはサポートされていません