メインコンテンツへ移動

カスタムファイルオブジェクトストレージの有効化方法

HAPでは、デフォルトのストレージサービス(MinIOベース)に代わり、**カスタムファイルオブジェクトストレージ(S3標準に準拠、例:Alibaba Cloud OSS、Tencent Cloud COS、Huawei Cloud OBS、Qiniu Cloudなど)**を利用できます。以下の手順で有効化できます。


1. サーバー上でs3-config.json設定ファイルを作成​

Alibaba Cloud OSSを例としたテンプレートは以下の通りです。

{
"mode": 1,
"accessKeyID": "${Key}",
"secretAccessKey": "${Secret}",
"bucketEndPoint": "oss-cn-beijing.aliyuncs.com",
"bucketName": {
"mdmedia": "oss-mdtest",
"mdpic": "oss-mdtest",
"mdpub": "oss-mdtest",
"mdoc": "oss-mdtest"
},
"region": "oss-cn-beijing"
}

注意:
HAPシステムは現在4つのバケット(mdmedia、mdpic、mdpub、mdoc)を利用しています。設定ファイル内のbucketNameフィールドで、実際に使用するバケットとのマッピングを行ってください。


2. 設定ファイルのマウント​

スタンドアロンモードの場合、マイクロサービスアプリケーション用のdocker-compose.yamlで、s3-config.json設定ファイルをscコンテナ内の/usr/local/file/s3-config.jsonへマウントします。クラスターモードの場合は、ファイルストレージサービスに該当するyamlファイルを修正します。

sc:
volumes:
- ${ホスト上のs3-config.jsonファイルのパス}:/usr/local/file/s3-config.json

3. プリセットファイルの初期化​

各オブジェクトストレージベンダーが提供するツールを用いて、s3-config.json内のバケットマッピングに従い、**プリセットファイルパッケージ**をクラウド上の該当バケットへアップロードしてください。
例)HAPプライベートデプロイAlibaba Cloud OSS初期化ガイド

すでに運用中のHAPシステムでファイルストレージを移行する場合は、scコンテナ内でmcコマンドを利用し、MinIO内のバケットデータをs3-config.jsonのマッピングに沿ってオブジェクトストレージバケットへ移行してください。


4. HAPマイクロサービスの再起動​


これでカスタムオブジェクトストレージの有効化が完了します。