クラウドストレージを使用¶
クラウドストレージの要件¶
OpenVINO モデルサーバーは、さまざまなクラウド・ストレージ・オプションをサポートしています。一般に、モデル・リポジトリーには “読み取り” 権限と “リスト” 権限が必要です。
Azure クラウドストレージ¶
Azure ストレージのパスを model_path として追加し、Azure ストレージの資格情報を Docker コンテナに渡します。
モデルへの Azure ストレージパスをサポートする Docker コンテナを起動するには、AZURE_STORAGE_CONNECTION_STRING 変数を使用します。この変数には、AS 認証ストレージアカウントへの接続文字列が含まれています。
接続文字列の例は次のとおりです。
AZURE_STORAGE_CONNECTION_STRING="DefaultEndpointsProtocol=https;AccountName=azure_account_name;AccountKey=smp/hashkey==;EndpointSuffix=core.windows.net"
blob ストレージ az://<container_name>/<model_path>:
を使用したコマンドの例
docker run --rm -d -p 9001:9001 \
-e AZURE_STORAGE_CONNECTION_STRING="${AZURE_STORAGE_CONNECTION_STRING}" \
openvino/model_server:latest \
--model_path az://container/model_path --model_name az_model --port 9001
file ストレージ azfs://<share>/<model_path>:
を使用したコマンドの例
docker run --rm -d -p 9001:9001 \
-e AZURE_STORAGE_CONNECTION_STRING="${AZURE_STORAGE_CONNECTION_STRING}" \
openvino/model_server:latest \
--model_path azfs://share/model_path --model_name az_model --port 9001
プロキシー・クラウド・ストレージ接続用の docker run コマンドに -e "http_proxy=$http_proxy" -e "https_proxy=$https_proxy"
を追加します。
デフォルトでは、https_proxy
変数が使用されます。http_proxy
を使用する場合、AZURE_STORAGE_USE_HTTP_PROXY
環境変数を任意の値に設定し、コンテナに渡します。
Google クラウドストレージ¶
Cloud ストレージのパスを model_path として追加し、Cloud ストレージの資格情報を Docker コンテナに渡します。例外: GKE Kubernetes クラスターを使用する場合、これは必要ありません。GKE Kubernetes クラスターは認証を処理します。
モデルへの Google ストレージパスをサポートする Docker コンテナを起動するには、GOOGLE_APPLICATION_CREDENTIALS 変数を使用します。この変数には、GCP 認証ストレージキーが含まれています。
gs://<bucket>/<model_path>
のコマンド例:
docker run --rm -d -p 9001:9001 \
-e GOOGLE_APPLICATION_CREDENTIALS="${GOOGLE_APPLICATION_CREDENTIALS}" \
-v ${GOOGLE_APPLICATION_CREDENTIALS}:${GOOGLE_APPLICATION_CREDENTIALS} \
openvino/model_server:latest \
--model_path gs://bucket/model_path --model_name gs_model --port 9001
Amazon S3 と MinIO ストレージ¶
S3 パスを model_path として追加し、認証情報を環境変数として Docker コンテナに渡します。S3_ENDPOINT
は、Amazon S3 ストレージではオプションですが、MinIO およびその他の S3 互換ストレージタイプでは必須です。
s3://<bucket>/<model_path>
のコマンド例:
docker run --rm -d -p 9001:9001 \
-e AWS_ACCESS_KEY_ID="${AWS_ACCESS_KEY_ID}" \
-e AWS_SECRET_ACCESS_KEY="${AWS_SECRET_ACCESS_KEY}" \
-e AWS_REGION="${AWS_REGION}" \
-e S3_ENDPOINT="${S3_ENDPOINT}" \
-e AWS_SESSION_TOKEN="${AWS_SESSION_TOKEN}" \
openvino/model_server:latest \
--model_path s3://bucket/model_path --model_name s3_model --port 9001
上記のコマンドの S3_ENDPOINT
パラメーターは、Minio ストレージの場合にのみ必要です。AWS_SESSION_TOKEN
変数は、AWS の一時認証情報が使用される場合にのみ必要です。
パブリック S3 パスへの匿名アクセスを使用することもできます。
コマンド例: s3://<public_bucket>/<model_path>:
docker run --rm -d -p 9001:9001 \
openvino/model_server:latest \
--model_path s3://public_bucket/model_path --model_name s3_model --port 9001
または、AWS 名前付きプロファイルで説明されている Docker イメージでプロファイル認証情報ファイルをセットアップします。
コマンド例: s3://<bucket>/<model_path>:
docker run --rm -d -p 9001:9001 \
-e AWS_PROFILE="${AWS_PROFILE}" \
-e AWS_REGION="${AWS_REGION}" \
-e S3_ENDPOINT="${S3_ENDPOINT}" \
-v ${HOME}/.aws/credentials:/home/ovms/.aws/credentials \
openvino/model_server:latest \
--model_path s3://bucket/model_path --model_name s3_model --port 9001