IBM Cloud Object Storage(以降ICOS)へのファイル転送をブラウザ上で実施しようとすると200MBのファイル制限があります。
大きなファイルを転送したい場合、マニュアルに記載のCyberduckというツールを使用したことがあったのですが、WinSCPのほうが使い慣れていたので、WinSCPでファイル転送できたら便利だなと思っていました。
WinSCPがAWS S3に対応したということで、同じS3プロトコルを使うICOSにも使えるかどうか試してみました。
ICOS設定の確認
WinSCPに設定する必要のある下記4つを確認します。
・バケット名
・エンドポイント名
・サービス資格情報のアクセスキー
・サービス資格情報のシークレットアクセスキー
1.ICOS管理画面で、対象のバケットを確認します。
![]() |
---|
2.対象のバケットを開き、バケットの構成画面の「エンドポイント」の設定で「パブリック」の右側のクリップボードにコピーのアイコンをクリックして、情報をコピーします。
※後でWinSCPに設定します。
![]() |
---|
3.ICOSのサービス資格情報画面で、「新規資格情報」をクリックします。
※既に必要な資格情報を定義済みの場合は、この手順3と次の手順4は飛ばしてください。
![]() |
---|
4.名前と役割を設定し、Include HAMC Credentialにチェックを入れて、「追加」をクリックします。
![]() |
---|
5.作成された資格情報横の「資格情報の表示」をクリックして、内容を展開します。
※後でWinSCPに設定するので、access_key_id, secret_access_key をメモします。
![]() |
---|
これで、WinSCPに設定する必要のある4つの情報が確認できました。
WinSCPにICOS接続を登録する
1.WinSCPを起動します。
2.左側で「新しいサイト」を選択し、右側のセッション欄で以下を設定します。
- 転送プロトコル:AmazonS3 ←ICOSですが、プロトコルはAmazonS3を選択します。
- ホスト名:上記手順で確認したICOSのエンドポイント名
- アクセスキーID:上記手順で確認したICOSのaccess_key_id
- シークレットキー:上記手順で確認したICOSのsecret_access_key
3.「設定」をクリックします。
4.「環境」→「ディレクトリ」を開き、リモートディレクトリ欄にICOSのバケット名を入力し、「OK」をクリックします。
5.もとの画面に戻るので、「ログイン」をクリックしてICOSに接続します。
バケット内のファイルが表示されるはずです。
ファイルを転送してみる
PCローカルのC:\tmpにある約270MBのCSVファイルをICOSのバケットにアップロードしてみました。
WinSCPでは、左側のPCローカルから右側のICOSバケットに対して、ドラッグ&ドロップするだけです。
【転送前】
【転送後】
無事に200MBを超えるファイルもWinSCPを使ってアップロードできました!
参考リンク
WinSCPでS3にアップロードするための覚書
https://qiita.com/hirohiro77/items/86fbb0135d9e76ae1ca3
Transfer files using Cyberduck
https://console.bluemix.net/docs/services/cloud-object-storage/gui/cyberduck.html#transfer-files-using-cyberduck