ジョブスクリプトおよびデータファイルを Object Storage Service (OSS) バケットに格納することで、クラスターノードがジョブの送信時にこれらのファイルをプルできます。本トピックでは、ジョブファイルを OSS バケットにアップロードし、クラスターノードへダウンロードする手順について説明します。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
E-HPC クラスター。詳細については、「クラスターにログオンする」をご参照ください。
OSS がクラスターと同じリージョンで有効化されていること。詳細については、「OSS の有効化」をご参照ください。
クラスターノードに wget または curl がインストール済みであること。
OSS バケットへのジョブファイルのアップロード
OSS からクラスターへのジョブファイルのインポート
ご利用のクラスターにログインした後、以下のいずれかの方法を使用して、ジョブファイルを /ehpcdata ディレクトリへダウンロードします。
方法 1:OSS エンドポイント URL を使用したダウンロード
クラスターノードが VPC 内部エンドポイントまたはインターネット経由で OSS バケットへネットワーク接続可能な場合に、この方法をご利用ください。
バケットのエンドポイント URL を取得します。
内部エンドポイント:「内部エンドポイントを使用した OSS へのアクセス」をご参照ください。
パブリックエンドポイント:「パブリックエンドポイントを使用した OSS へのアクセス」をご参照ください。
ジョブファイルを
/ehpcdataへダウンロードします。wget が利用可能な場合:cd /ehpcdata wget http://<bucket>.<internal-endpoint>/test.py wget http://<bucket>.<internal-endpoint>/test.datawget が利用できない場合は、curl を使用します:
cd /ehpcdata curl -O http://<bucket>.<internal-endpoint>/test.py curl -O http://<bucket>.<internal-endpoint>/test.data
方法 2:署名付き URL を使用したダウンロード
バケットが非公開であり、クラスターノードに AccessKey を設定せずに特定オブジェクトへの期間限定アクセスを許可したい場合に、この方法をご利用ください。
署名付き URL は、設定した有効期間が過ぎると有効期限切れになります。ダウンロード期間をカバーする最短の有効期間を設定し、不正利用リスクを最小限に抑えてください。
各ジョブファイルに対して署名付き URL を生成します。「第三者ユーザーによるオブジェクトのダウンロード許可」をご参照ください。署名付き URL の形式は以下のとおりです。
http://<bucket>.<region>.aliyuncs.com/<object>?OSSAccessKeyId=<id>&Expires=<unix-time>&Signature=<signature>生成した署名付き URL を使用してジョブファイルをダウンロードします。wget が利用可能な場合:
cd /ehpcdata wget "http://<bucket>.<region>.aliyuncs.com/<object>?OSSAccessKeyId=<user access_key_id>&Expires=<unix time>&Signature=<signature_string>/test.py" wget "http://<bucket>.<region>.aliyuncs.com/<object>?OSSAccessKeyId=<user access_key_id>&Expires=<unix time>&Signature=<signature_string>/test.data"wget が利用できない場合は、curl を使用します:
cd /ehpcdata curl -O "http://<bucket>.<region>.aliyuncs.com/<object>?OSSAccessKeyId=<user access_key_id>&Expires=<unix time>&Signature=<signature_string>/test.py" curl -O "http://<bucket>.<region>.aliyuncs.com/<object>?OSSAccessKeyId=<user access_key_id>&Expires=<unix time>&Signature=<signature_string>/test.data"各プレースホルダーを、ステップ 1 で生成した署名付き URL の値に置き換えてください。