ホーム » 技術 » さくらのクラウド10年間を振り返る

さくらのクラウド10年間を振り返る

自分には、日常のどうでもいいスナップ写真を撮るという趣味というか癖みたいなものがある。毎日写真を撮っているわけではないのだが、きっと5年後、10年後に見返したら面白いだろうなと思えるときに目立たずサッと写真を撮るようにしている。

写真が気軽なものになったのはデジタルカメラが登場してからだと思う。自分はQV-10は持っていなかったが、CAMEDIAのごく初期の機種を持っていて、それで記録を残していた。そういうわけで20年前のさくらインターネット株式会社のオフィスや社員の様子を写した写真は、ほとんどすべて自分が撮ったものだ。これらは広報や総務に供出していて、イベントで利用されたりすることもある。その後、デジカメは広く普及し、ケイタイでも高画質化が進み、今では誰でも気軽にスナップが撮れるようになった。とはいえ日常を撮る趣味の人はそんなにいない。ということで今でも、社内のイベントの写真は自分で記録するようにしている。

さて、2011年11月15日は石狩データセンターの開所日かつさくらのクラウドサービスの開始日だった。自分は11月初旬からサーバのセットアップのために石狩に詰めていて、11月15日は東京に戻ってサービスローンチを指揮していた。そのデータセンターでの作業の様子は、もちろん写真に撮って残してある。10年後に見たら面白いだろうと思っていたのだ。

クラウド開発プロジェクト

12年ぐらい前、さくらは物理サーバを貸す会社だった。VPSが世の中に出てきて、アメリカからはAmazon EC2の話が聞こえてきて、仮想化は注目すべき技術だったが、さくら社内で正式にこれを担当する部門もチームも存在しなかった。ちょうど研究所を任されることになったタイミングだったので、じゃあ自分がやろうと始めたのがqemu/Linux KVMの検証だった。当時サーバ仮想化のハイパーバイザといえばXenが主流だったが、他と同じことをやるのはつまらないと思ってqemu/KVMを選んだのだ。クラウドサービスの研究調査と並行して、仮想サーバのオーバーヘッドとかサービス化をする場合のサーバ数見積もりなどをやって、qemuが有望というレポートを書いた。当時はまだqemuはLinuxに取り込まれる前だったので、この判断が間違っていなくてホッとしている。

そのあと仮想サーバサービスについては田中さんも取り組み始めて(社長が直々にプロトタイプを書いたw)、VPSサービスにつながっていく。2010年にVPSをリリースした時は大変注目を浴びて大いに売れたのだが、しかし社内ではVPSはクラウドじゃないという認識が強くあった。クラウドならあってしかるべき自由度がまったくなかったのだ。それはサーバの自由度、たとえばスペック変更が簡単とかディスクの容量が変えられるとかネットワークが自由に構成できるということだけでなく、時間課金の実装とかなんでも自由に設定できるコンパネのようなところまで及んでいた。白状すると、当時のさくらの課金システムは時間割、秒割の計算ができなかったのだ。そこで初期のVPSは、仮想サーバでありながら従来の物理サーバと同じ課金体系になっていた。しかしクラウドサービスを作るなら、サーバ・ストレージ・ネットワークは言うに及ばず、課金の仕組みから全部作らないといけないだろうと見積もっていた。

2011年の3月にEC2の東京リージョンが開所するというニュースが流れて、自分は社長と副社長に直ちに呼び出された。曰く「クラウド開発チームを担当してもらいたい」「少なくとも7月にはβサービスをリリースしてほしい」ということだった。なんで研究所の所長が開発チームをマネジメントするのかというと、本来クラウド開発に取り組み始めるべき技術部門はバックオーダーで溢れたVPSの対処と運用でてんてこ舞いになっていて、マネージャーどころか開発要員もいないという状況だったのだ。そこで手すきの研究所のメンバーと当時新規開発室と呼ばれていた事業サービスを担当していないエンジニアをあてがい、さくらのクラウドの開発が始まった。

チーム最初のキックオフミーティングは、社長に命じられて1週間後だった(ついでにいうと大地震の前日だった)。初めて一緒に仕事をするエンジニアが多かったので、キックオフでのオリエンテーションには非常に気を使った。VPSの状況やクラウドの必要性などを説明した上で、こういうサービスが理想だと思う、手法はこれこれでどうか、みんなの得意を集めて開発に取り組みたい、まずは動くものを一緒に作ろう、と伝えた。そしてあらかじめ頼んでおいたエンジニアの一人に、まずネットワーク構成の設計のアイディアをプレゼンテーションしてもらった。エンジニアリングのミーティングであれば、みんなを引き込めると思ったからだ。それは無事うまく機能して、設計案に対していろいろな質問や提案が出てきた。ミーティングは成功した、と思う。メンバーの得意分野はある程度把握していたので、UI、API、ネットワーク、サーバ、ストレージ、課金と大まかに担当を定め、サービス開始に向けてそれぞれが担当分野の開発を始めた。ちなみにスケジュールについては「社長は7月と言っているけど自分は無理だと思う。まあその辺は自分が適当に調整するから、みんなは最速で出せるようにがんばってくれればいい」と伝えた。

開発は幸いにして順調に進んだ。思った通りβは7月には出せず9月になった。それで怒られるようなことはないよう調整したので問題は起こらなかった。ただ、β公開では予定していただけのユーザ数を集めることができなかった。βではシステムにどれぐらいの負荷が掛かるかを確かめ調整したいと思っていたので、十分な負荷をかけられなかったのが不安だった。しかしβサイトは期限付きで片付けないといけないし、いくら待ってもテストができるようにはならない。やむを得ず、本サービス開始に向けて動くことにした。

サービス開始まで

さくらのクラウドの開始日が11月15日に決まったのは、石狩データセンターの竣工日に合わせてのことだった。石狩データセンターの開所と同時にサービスローンチできれば、話題も集められるしキリがいいと思ったのだ。しかしこの思い付きのせいで後で大変な目にあうことになった。機材のセットアップは当然、開所前に行わなければならないのだが、開所前にはデータセンターは空っぽで従来のデータセンターであれば当てにできる運用部門のメンバーはおろか、サーバのセットアップに利用するインフラも何も存在していないということを計算に入れていなかったのだ。100台のサーバのセットアップを行う場合を例にとると、本来ならばサーバをラッキングしてネットワークに接続すると、ネットワークブートでインストールイメージを収めたストレージが見え、そこからコピーして起動するという一連の自動化フローが利用できるのだが、空っぽの石狩データセンターにはそんなものは存在しないのだ。ネットワークブートマシンを構築してもいいのだが、それはそれで時間がかかりすぎる。そこでやむを得ず、1台のディスクイメージを完成させた後それをマスターにしてディスクコピー器で倍々に増やしていくという原始的な方法で対応した。

しかも竣工前には施主であろうとも自由に建物には出入りできない、ということをスケジュールを組み始めたから知らされた。建物から作るデータセンターはこれが初めてだったので知らなかったのだ。11月15日のサービスローンチに対して、データセンターに立ち入れるのは11月1日、どんなにオマケしても10月31日と言われた。これで本サービス環境構築は2週間しか時間が取れないと決まってしまった。機材設置の物理作業は11月5日までの1週間で行い、残りの1週間はソフトウェアの調整に充てた。物理作業の1週間は、自分はまさに上述のサーバ構築とコピーを担当したのだが、まあなんとか寝る時間は確保できたという感じだった。しかも想定していたようなトラブルがまったく起こらず、予備日を残して機材セットアップは完了することができた。

セットアップを待つサーバ
作業スペースがなく通路に直置き
ディスクコピー器
SSDを倍々にするために大量に買い込んだ
ローンチ時のクラウドラック群

11月15日までは、東京に戻ってシステムの調整に費やした。現物のサーバを触れない中でのサービスローンチはこれが初めてだったので不安もたくさんあった。しかしメンバーが非常に優秀だったので、ローンチはまったく問題なく行うことができた。当日、石狩データセンターでは開所のセレモニーが行われ、テープカットやら来賓のあいさつやらで賑わっていた。一方クラウドのローンチは「公開しまーす」の掛け声だけで、キーボードから指示を出しただけで終わった。

その後、サービスにはいろいろなことが起こるのだが、それらは省略しておこうと思う。

チームマネジメント

初期の3年間にはいろいろあったが、システムが安定してサービスが成長期に入ると、マネジメントで問題が生じ始めた。個人的にもっとも辛かったのが、クラウドサービス担当チームのメンバー(の大半)は自分の部下ではなく、がんばっている社員に評価が与えられないということだった。むろん参考意見は出せるのだが、最終評価は普段業務を見ていない別のマネージャーが下すのだ。これが大いに悩みの種になった。そこでクラウド開発プロジェクトを開発室に格上げし、自分を(所長と兼務でいいから)正式なマネージャーにしてほしいと頼み込んだ。これでようやく「研究所・新規開発室のジョイントフォース」が、評価の可能な1つのチームになった。

ところがメンバーの評価に関われた期間は1年足らずだった。その後、さくらの技術開発部門を改革するという目的で、チームのマネジメントとエンジニアの評価を分離する制度が導入されてしまったのだ。クラウド開発チームのメンバーは技術部門所属となり、自分はプロジェクトのマネジメント担当ということになった。プロジェクトのマネージャーはプロジェクトしか見ないという建前で、メンバーの面倒は技術部門の別のマネージャーがやるというのだ。結局、当初のジョイントフォースと同じ体制に逆戻りした。

これをはじめとして、チームマネジメントが大変やりづらい状況に陥り、しかもそれを打破するうまい手が見つからなかった。サービスは順調でチームの雰囲気も悪くなかったが、やり辛さは常にあった。そして最終的に、この状況でチームを率い続けるのは無理と思って、2018年にクラウド開発チームから離れることにした。元々研究所所長以外の肩書はないので、専任に戻ると言うだけだった。

これは自分で決めたことだったのだが、チームから離れた直後に「あいつは辞めさせられた」といううわさが社内に立って実に閉口した。これまでもへんちくりんなうわさで困ったことはあったが、よもや辞めさせられたなんていう話が流布するとは思ってもみなかった。まあ当時のサービスの状況を考えたら自分から辞めるなんて正気じゃないと思われてもやむを得ないかもしれないが。ただ、辞めされられたと思われるぐらいの状況だったんだなと今振り返ってみると思わないでもない。

その後

というわけで、さくらのクラウドは10周年を迎えた。

10年前は現地で大々的にイベントをやったが、今日は特に何もないようだ。そこでこの記事を用意していたのだが、お昼ごろに突然10周年記念noteが公開になった。

10回に渡ってデータセンターを中心に連載されるようだが、自分はそちらに何も寄稿していない(写真は提供したのでもしかしたら被るかも)。なので、こちらはこちらで自分の視点で10年間を振り返ってみた。今この記事は石狩データセンターで書いている。

改めてデータセンター内を歩いてみたが、最初にセットアップしたサーバ群はサポート期限を超えたため撤去済みだった。サービスに関わっていたあいだ石狩データセンターで自分自ら設置したサーバの数は300台ぐらいになると思うのだが、それらは一つも残っていなかった。みんな新しい世代のサーバに切り替わっていて、しかもどこに設置されているのか分からず見つけられない。まあ、自分で作ったサーバではないし、今は担当チームがちゃんと面倒を見てくれているのだからいいかな、と思ってあきらめた。一応、10年目の石狩データセンターを記録するために思い付いた場所は全部写真に撮っておいた。かなり地味なので、10年後に披露するということはなさそうである。