OSS Connector for AI/ML が Object Storage Service (OSS) で認証を行い、トレーニングジョブを実行するには、アクセス認証情報ファイルとコネクタ設定ファイルの 2 つの設定ファイルが必要です。
前提条件
開始する前に、以下が完了していることを確認してください。
AI/ML 向け OSS コネクタがインストール済みです。「インストール」を参照してください。
アクセス認証情報の設定
OSS Connector は、/root/.alibabacloud/credentials から認証情報を読み取ります。Security Token Service (STS) からの一時的な認証情報と、永続的な AccessKey ペアの 2 種類の認証情報がサポートされています。
本番環境では、STS の一時的な認証情報を使用してください。一時的な認証情報は自動的に有効期限が切れるため、万が一漏洩した場合の影響を限定できます。永続的な AccessKey ペアには有効期限がなく、漏洩した場合のリスクが高くなります。
ステップ 1:認証情報ファイルの作成
mkdir -p /root/.alibabacloud && touch /root/.alibabacloud/credentialsステップ 2:認証情報の追加
認証方式に応じて、以下のいずれかのフォーマットを選択してください。
オプション 1:STS の一時的な認証情報 (推奨)
まず、STS から一時的な認証情報を取得します。詳細については、「STS が提供する一時的なアクセス認証情報を使用して OSS にアクセスする」をご参照ください。次に、以下の内容を認証情報ファイルに書き込みます。
{
"AccessKeyId": "STS.L4aB******************",
"AccessKeySecret": "wyLTSm*************************",
"SecurityToken": "************",
"Expiration": "2024-08-15T15:04:05Z"
}オプション 2:永続的な AccessKey ペア
Resource Access Management (RAM) コンソールから AccessKey ペアを取得します。詳細については、「AccessKey ペアの作成」をご参照ください。次に、以下の内容を認証情報ファイルに書き込みます。
{
"AccessKeyId": "LTAI************************",
"AccessKeySecret": "At32************************"
}以下の表に、認証情報ファイルのパラメーターを説明します。
| パラメーター | 必須 | 説明 |
|---|---|---|
AccessKeyId | はい | Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID。STS を使用する場合は、一時的な認証情報から取得した AccessKey ID を設定します。 |
AccessKeySecret | はい | Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey Secret。STS を使用する場合は、一時的な認証情報から取得した AccessKey Secret を設定します。 |
SecurityToken | いいえ | STS から取得したセキュリティトークン。一時的な認証情報を使用する場合に必須です。永続的な AccessKey ペアを使用する場合は、空のままにします。 |
Expiration | いいえ | 認証情報の有効期限を ISO 8601 フォーマット (例:2024-08-02T15:04:05Z) で指定します。有効期限が切れると、OSS Connector は認証情報ファイルを再読み取りします。このパラメーターを指定しない場合、認証情報は有効期限切れになりません。STS 認証情報を使用する場合は、コネクタが更新されたトークンを時間通りに取得できるように、このパラメーターを設定してください。永続的な AccessKey ペアの場合は、空のままにします。 |
ステップ 3:ファイル権限の制限
chmod 400 /root/.alibabacloud/credentialsこれにより、ファイル所有者に読み取り専用のアクセス権が付与され、他のユーザーが認証情報を読み取ることを防ぎます。
OSS Connector の設定
OSS Connector は、/etc/oss-connector/config.json からランタイム設定を読み取ります。ほとんどのセットアップではデフォルト値で動作しますが、特定のパフォーマンス要件やロギング要件がある場合にのみ変更してください。
ステップ 1:設定ファイルの作成
mkdir -p /etc/oss-connector/ && touch /etc/oss-connector/config.jsonステップ 2:設定の書き込み
{
"logLevel": 1,
"logPath": "/var/log/oss-connector/connector.log",
"auditPath": "/var/log/oss-connector/audit.log",
"datasetConfig": {
"prefetchConcurrency": 24,
"prefetchWorker": 2
},
"checkpointConfig": {
"prefetchConcurrency": 24,
"prefetchWorker": 4,
"uploadConcurrency": 64
}
}以下の表に、各パラメーターを説明します。
| パラメーター | デフォルト | 説明 |
|---|---|---|
logLevel | 1 | ログの詳細度。有効な値:0 (Debug)、1 (INFO)、2 (WARN)、3 (ERROR)。本番環境でログのボリュームを減らすには、2 に設定します。 |
logPath | /var/log/oss-connector/connector.log | OSS Connector のランタイムログのパス。 |
auditPath | /var/log/oss-connector/audit.log | 監査ログのパス。レイテンシーが 100 ミリ秒を超える読み取りおよび書き込みリクエストを記録します。 |
datasetConfig.prefetchConcurrency | 24 | データセットを使用して OSS からデータをプリフェッチする際の同時ダウンロードタスク数。 |
datasetConfig.prefetchWorker | 2 | データセットのプリフェッチ操作に利用可能な vCPU の数。 |
checkpointConfig.prefetchConcurrency | 24 | チェックポイントの読み取り時に OSS からデータをプリフェッチする際の同時ダウンロードタスク数。 |
checkpointConfig.prefetchWorker | 4 | チェックポイントの読み取り操作に利用可能な vCPU の数。 |
checkpointConfig.uploadConcurrency | 64 | OSS へのチェックポイントの書き込みにおける同時アップロードタスク数。 |
次のステップ
OSS Connector for AI/ML のインストールと設定が完了したら、PyTorch のトレーニングジョブでそれを使用します。
OssMapDataset — ランダムアクセス読み取り用のマップデータセットを構築します。詳細については、「OSS データを使用してランダム読み取り用の OssMapDataset データセットを構築する」をご参照ください。
OssIterableDataset — シーケンシャルストリーミング読み取り用の反復可能データセットを構築します。詳細については、「OSS のデータを使用してシーケンシャルストリーミング読み取りに適した反復可能データセットを構築する」をご参照ください。
OssCheckpoint — OSS でトレーニングチェックポイントの読み取りと書き込みを行います。詳細については、「OSS でチェックポイントを保存およびアクセスする」をご参照ください。