S3類似サービス

曇り今日の朝ごはんは「トリッチトラッチ」で本を読みながら食べていた。
モーニング

だが、9時40分くらいに会社の人から電話が。 まだ食事中だったのだが…… 先週から続いているさくらのオブジェクトストレージの障害になんとか対応する方法はないかとのことだった。
まさか不具合が週をまたいで解消されていないとは想定外。 木曜夜から続く不具合は、金曜深夜に瞬直ったような気がしたが、土曜の朝に改めて障害情報に載った。 土曜の朝からの障害が48時間経った今でもまだ直っていない。 障害もサーバーに接続不能という閲覧すらできない、一番まずい障害なのに、それが48時間も…… しかも「障害が発生しました」と書かれているのが48時間前の日時。 それからの続報も一切ない。
土日の間にお客さんから営業の人はクレームを受けまくっていたことが予想されるので、月曜の朝一番で電話してきたのだろう。
会社の方針としては、「さくらのオブジェクトストレージ」は捨てることになったので、代替サービスを探さなくてはならない。
候補としては「Amazon S3」「IDCFオブジェクトストレージ」「ConoHa」の3サービスかな。 他にも「Nifty」とか「NTTcom」とかあるけれど、全ては検証できないので。
とりあえず3サービスのアカウント登録をし、まずはIDCFオブジェクトストレージから試していく。 さくら用に作ったアブジェクトストレージのREST APIにコマンドを投げつけるプログラムを多少改造すればできそうだな。
そう思っていたが目論見が甘かった。 さくらではACLというアクセスさせる権限が、バケット単位で「private」「public-read」「public-read-write」に相当するものに設定ができる。
が、本家のS3ではバケット単位でも、仮想のディレクトリ単位でも、オブジェクト単位でもそれが操作できる。 REST APIでその部分を操作しようとしたが、headerにそれっぽい文言を入れて操作してもできず。
全てデフォルトの「private」になってしまう。 画像オリジンなので、「public-read」にしなくてはならない。
障害が起きているものをなんとかしなくてはならないので、あまり調査に時間もさけないので、Amazonから提供されているAWS SDK for PHPを使うことにした。 基本的にはAmazonのサービスに対して操作するプログラムだけど、類似のオブジェクトストレージはS3互換を謳っているので大抵使うことができる。
バージョンは2と3があり、普通は3なのだけど、さくらもそうだけど3には対応してないかもしれないので、2を選択することに。
一式アップロードして、操作方法を調べて、それを元にプログラムを組んでいく。 で、無事にIDCFオブジェクトストレージと連携することはできた。 文字で書くと簡単だけど、とりかかってから軽く5時間くらいかかっている……

次はAmazon S3。 本家なのでSDKは3を使う。 使い方はほぼ同じだけど、認証部分だけ違うのでそこの手直し。 それとAmazonのサービスはIamというユーザーや権限を管理する部分で操作ユーザーみたいなのを作成して、適切な権限を付与してあげなくてはならないので、その部分で苦労した。 Google検索をしまくってなんとか操作できるようになった。

2サービスを使えるようになった段階でタイムアップ。 ConoHaの調査は明日に持ち越すことに。 だが、お金が許されるのならAmazon S3一択だな。
そんなで21時半くらいに帰宅。 自分でアルゴリズムを考えて使っていくのはいいのだけど、既に用意されているツールをマニュアルや人のブログ記事を見ながら使えこなせるようになっていくのはなかなかしんどい。

今日は昨日の疲れもあるのでジョギングは無し。 今週末はいよいよウルトラマラソンの大会なので、今週はトレーニングも控えめにしなくてはいけない。
スプラトゥーン2で遊んで、26時位に就寝。

コメントを残す

メールアドレスが公開されることはありません。