【「FFXI 20年の軌跡」を適当に補足】
5/8に放送されたFF11の20周年記念番組の「FFXI 20年の軌跡」を適当に補足しました。
「マイケル」
FF11としては本当に久々に登場となったマイケル。動画では10年ぶりぐらいではないでしょうか!20周年記念サイトと新オープニング曲の名称でもある「We are Vana'diel」の名付け親でもあります。
「イラスト:野村哲也」
このイラストは、スクウェアミレニアムのFF11ティザー映像の中で公開されたもの。
以降は公開されることがなく、長くこのイラストの正体は謎だったが、先日のWe are Vana'dielの中で野村哲也氏が描いたものであることが21年ぶりに明かされた。
※発表時の様子
■参考
FF11ティザー映像
プロデューサーセッション -WE DISCUSS VANA’DIEL- 第7回 野村哲也 パート2
「社内を複数ライン化しようという動きが・・・社長からの命令みたいな感じであったんで」
96年に旧スクウェアの社長に就任した武市社長は、FF7時代に「FFのグローバル化」に成功したが、以後の97年にホノルルスタジオ設立(映画の製作)、新規事業(デジキューブ・PlayOnline)、製造ラインを「FF」に集中、の施策を進めたが2000年に会長に退き、2001年には会長を辞任しスクウェアを離れている。以後は主に和田社長に引き継がれることになる。
和田社長就任後、選択と集中をやり直したことにより、業績はV字回復し、以後2013年まで和田社長時代が継続する。
※後年の和田元社長の当時の振り返りでは、新規事業の目の付け所は悪くなかったが、どの事業も稼ぐ体質になっておらず切り離さらざるをえなかったと述べている。中でも、集英社やavexに一度はPlayOnlineへの協力を求めたにもかかわらず、撤回する旨を各社に伝えた際に「最低な奴が来たって言われました」と当時のことを振り返っている。FF11は唯一残された事業で、非常にリスクだったが「MMORPGだけは齧りつこうと思いました。」としている。
■参考
【コンサルティングオフィス】(株)中田康雄事務所 武市智行 対談
そろそろ語ろうか(其の壱) (和田元スクウェア・エニックス社長)
「PlayOnlineの起動ムービー」
この有名なPlayOnlineの起動ムービーは、2004年2月17日のバージョンアップで削除されたため、公式サイトからダウンロード可能なクライアントでは見ることができない。(データとしては残っているが)
そのため、今も実機で確認できるのはWindows版かつ「初期パッケージ」「エントリーディスク」「オールインワンパッケージ2003」の3タイプの製品の初期インストール時のみである(一度でもPOLをバージョンアップすると見られなくなる)。
またPlayOnlineがWindows10等にも対応していない(インストール時にエラーが出る)ため、Windows XP以前(Windows 98まで!)のWindowsにインストールする必要がある。
(この映像は仮想環境にWindows XPを入れ、POLをインストールしてキャプチャしたものである。なんか上に数ピクセルほど白い線が入ってるのは、うっかりキャプチャ範囲を間違えたからである。放送時に気づいたが、見なかったものとしてご容赦いただきたい。)
ちなみに「グラブルのFF11コラボでTV放映されたPOL風CM」は中の映像がプリッシュ等に変わっていて、非常に手が込んでいる。
「坂口さんからジャンプとファミ通をPlayOnlineで読めるようにしたいと言われて」
集英社やavexとはかなり話が進んでいて、POLのイメージ映像の中にも登場するのだが、ファミ通とも話を進めていたようである。言及はないが、前出の「和田社長のお詫び行脚」に含まれていたのであろう。
「スノウ・クラッシュ」について
相場さんが言及されていた「スノウ・クラッシュ」は、1992年に発表されたSF小説。昨今流行りだした「メタヴァース」の語源となっている。Kindleで2,000円くらいなので覚えておこう。
あらすじ「連邦政府が無力化し資本家によるフランチャイズ国家が国土を分割統治する一方、オンライン上に仮想世界「メタヴァース」が築かれた近未来のアメリカ。アヴァター技術を開発した凄腕ハッカーにして、マフィアが経営する高速デリバリーピザの〈配達人〉ヒロ・プロタゴニストはある日、メタヴァースで出会った男に「スノウ・クラッシュ」なる謎のドラッグを手渡されるが……。本書が未来を書き換え、SFは現実と接続された。」
「PS2 BB Unitの生産量も鑑み、テスターを制限した」
「PlayStation BB Unit」は当初「PlayStation BB」サービスに対応したインターネットサービスプロバイダ経由でしか手に入れることができなかったため、入手難易度が高く、生産量も少なかったため、定価18,000円だったが、ヤフオクで50,000円程度で取引されることもあった。
「地獄の65時間」
今回初めて明かされたエピソードが多く含まれるために、改めて時系列で整理したい。
【βテスト時代】
時期不明 |
クレジットカード会社との決済処理の性能テストを実機で実施できなかったため、模擬ツールにより確認を実施した。(★問題点1) |
2001/12/17 ~ 2002/04/26 |
FF11βテストにて「同時接続5,000人」の検証が大きな問題なく完了した。(★問題点2) |
ここからは伊勢さんが2003年7月にJANOG(日本ネットワーク・オペレーターズ・グループ)で講演された際の資料を元に、一部推測を含めて確認していこう。
まずPlayOnlineを設計する上で「自前で作ってみましょうか」と選択した。
これは会員情報は自社で持ち(PlayOnline上に保持)、自社ではどうにもならない部分である
課金決済代行(クレジットカード・Webmoney)は社外に依頼している。
※「ISP重畳」は会員情報の管理と課金決済代行をISP(インターネットサービスプロバイダ)に全てお任せする形態とみられ、
会員情報の管理をしなくて楽だが、手数料は莫大なので選択されていない。
その結果生まれたのが、このような会員情報&決済システム(PlayOnlineの中核部分)である。
現在は「SQUARE‐ENIXアカウント」システムに移行しているため、PlayOnlineは不要のように思われるが、
FF11本体には会員認証システムと連携できる機能が統合されておらず、PlayOnlineのクライアントに依存しているため、いまだPlayOnlineは切っても切り離せない存在なのである。
ここで「プリペイド」が「WebMoney社のサーバ」、クレカGWが「クレジットカード会社(決済代行)のサーバ」と読み替えていいだろう。
伊勢さん「実際に運用するまでの間に負荷テストだけはやってとお願いして、実際にやってもらって1分間に何千件のトランザクションが可能というデータが出たのでOKとした」
トランザクションとは「分割できない作業を集めた処理のこと」で、どれかの作業がダメになると、途中の作業までOKだったとしても全てやり直ししなければいけない処理のことである。
例えば「ポーション」を買うとして、
・ポーションを買う。(作業A)
・ギルが財布から引かれる。(作業B)
・ポーションが自分のアイテムに増える。(作業C)
という操作があったとして、これを一連の作業(トランザクション)にしておかないと、作業Cがなんか上手くいかなかったときに、
「ギルだけが引かれてポーションが増えてない!?」なんてことになってしまい困ってしまう。この場合はギルを元に戻してあげないといけない。手間のかかる処理である。
伊勢さん「唯一、クレジットカード会社の決済回線を実際に使って相手のサーバまで実際にトランザクションを届けるというシミュレーションのみ実施できなかった。」
ギルならまだしも(よくない)、無くなるのがお金になってしまうと大変である。念入りにテストを行いたかったが、カード決済代行会社からこんなことを言われてしまう。
伊勢さん「「それをやられると、他の店舗さんに迷惑がかかるから、そんなことできません」と言われ」
実際、現在でも決済代行会社の注意事項を見ると、本番環境どころか、テスト環境ですら「負荷試験禁止」とされている。みんなが住んでるマンションで騒音実験するようなものなので、ルール上従うしかないのである。
では、どうしたのか。
伊勢さん「ダミーのレスポンダだけ作って、リクエスト行ったらすぐOKって帰ってくるシミュレーターで負荷試験をやっちゃったんですね」
本番環境での負荷試験ができなかったため、いわば魔法人形「自動応答くん」を社内で作り、それを負荷試験の代わりとした。一応、OKのように見えたが・・・結果は「本番」でわかることになる。
迎えた5/16(木)12時の「サービス開始」。伊勢さんたちの「地獄の65時間」が始まった。
2002/5/16(木)12:00 |
正式サービス開始 |
直後 |
開始直後からクレジットカード認証から先が進まない旨のトラブルおよびWebMoneyの決済異常が発生。 |
14:30頃 第1報 |
■アクセス集中による速度低下について
本日12時の正式サービス開始以降、現在までに多数のアクセスが集中している状況です。
このため、コンテンツIDの購入など、一部の画面表示が遅くなったり、 場合によってはタイムアウトなどが発生する場合が報告されております。
皆様には大変ご迷惑をおかけしておりますが、そのような場合にはしばらく時間をおいてから再度お試しいただけますよう、ご理解とご協力をよろしくお願いいたします。 |
開始直後からクレジットカード認証が通らず、先に進めない状況となるユーザーが多数発生する。
開始直後からクレジットカード認証が通らず、先に進めない状況となるユーザーが多数発生する。
その原因は、決済代行会社側のデータベースサーバにトランザクションを処理させようとしたところ、本番では自動応答くんとは比較にならないくらい処理時間がかかり、相手側のサーバの処理が停滞。その処理結果を待つ待機列(スクウェア側のキューイングシステム)も限界に達し、深刻な渋滞を引き起こしていた結果であったという。
WebMoneyの問題(コンテンツIDを購入できていないのに残額が減る)については言及されなかったが、WebMoney側の使用履歴は残っていて、スクウェア側で記録されていないという状況だったという当時の話から、おそらくキューイングシステムがやられた影響ではないかと考えられる。
~夜? |
障害原因1(決済)を特定? |
19:00頃 第2報 |
■アクセス集中による速度低下について:続報
先ほど告知させていただきましたアクセス集中による速度低下につきまして、現在も引き続き一部の画面表示が遅くなったり、場合によりタイムアウトなどが発生する症状が報告されております。
現在弊社技術スタッフにより、この状況を改善する作業などを行っており ますが、全面的な解決にはまだしばらくの時間を要する見込みです。
プレイオンラインの入会や、コンテンツIDの購入時などにエラーが表示されてし まった場合、その場で何度も連続してリトライするのではなく、一度ログアウトして回線を切断した上で、30分以上お待ちになってから再び接続されますよう、お願いいたします。 なお、入会・購入等が完了している場合にはこの影響は無く、快適にプレイオンライン並びに各コンテンツをお楽しみいただくことが可能です。
|
5/17(金)2:00頃 (地獄の始まり) |
全ワールドサーバが停止する。 |
日を跨いだ深夜、さらに予期せぬことが起こった。同時接続が5,000を超えたころ、今度は「20ワールドが全て落ちた」のである。
伊勢さん「現地に行ってサーバの状態をコンソールで調べて・・・」
通常であれば、サーバの状態はスクウェア社内からリモートで確認できるはずである。しかし、この時サーバに対してリモートから接続できなくなり、それはそれは焦ったであろうと推測ができる。
目黒アルコタワーの本社からタクシーを飛ばし、大手町にあると噂されるデータセンタに向かったのは間違いないだろう。タクシーで20分くらいの距離である。
伊勢さん「理由はわからないけど、サーバが自分自身でインターフェースを落としていることがわかって、とりあえずリブートしろと」
ここで「インターフェース」とはサーバのネットワーク機能や部品を意味する。なぜかサーバ自身でネットワーク機能をオフラインにしてしまい、外部からの接続を遮断する状態になっていたようである。まずは基本としてリブート(サーバ再起動)を実行する。
次の日の昼を迎え、ついに障害原因1(決済)の対策のため、サービス一時停止を決断する。
7:00頃 (障害発生から5h) 第3報 |
|
15:15 (障害発生から13h) 第4報 |
|
翌朝6時頃。予定時間より少し早くサービスは再開された。対策を行った障害原因1はほぼ解消された。
伊勢さん「一回サービス閉じて、そこ直して再開するんですけど、登録は上手く進むようになった」
5/18(土)6:00頃 (障害発生から26h) |
サービスが再開する。 |
朝 |
全国紙の朝刊に社長名義で謝罪広告が掲載される。 |
8:30 (障害発生から30.5h) 第5報 |
|
9:00頃 (障害発生から31h) |
ワールドが不安定になる。 |
しかし・・・・・・
伊勢さん「一旦再開したんですけど、また数時間で落ちた」
9:30頃 (障害発生から31.5h) |
再びメンテナンスに入る。 |
10:30頃 (障害発生から32.5h) 第6報 |
|
15:10頃 (障害発生から37h) 第7報 |
|
βテストでは同時接続5,000人規模で動いていたはずのシステム。本番では同時接続5,000人前後になると落ちてしまう・・・なぜなのか・・・?
伊勢さん「原因を調べてたんですけど、わかんなくて」
サービス開始から48時間超、全ワールド停止という深刻な障害発生からも24時間以上が経過し、関係者の疲労は相当なものだったはずである。
伊勢さん「私も座りながら寝ていましたけども、布団の上では一切寝れなかったですし、もちろん家にも帰れなかった。もちろんテーブルについて食事を取れる時間帯も無かった」
社長名義の謝罪広告も出てしまい、状況は追いつめられている。まさに「石の記憶」にあるような「終わりなき悪夢たち」そのものである。
だが、「嵐の夜を貫いて栄光の星が輝く」時が訪れた。
伊勢さん:「(サーバープログラマが)本番とβテストで変えたことはないか?と」
ここで遂に原因が判明する。また図を利用させていただくと・・・
ゲームサーバ(ワールド)はざっくりこのような構成になっていた。
伊勢さん「本番に移るときにセキュリティをきっちりするために、アクセスフィルタのリストを増やした」
伊勢さん「ゲームのトラフィックと、サポートなどのトラフィックを別々のOutgoingから出ていくように、ゲームのトラフィックに影響がないように変えた」
「(スイッチの)アクセスフィルタ」とは何か。つまりこれである。
*ダメじゃん・・・
「スイッチ」は通信部分を担当する機器であるが、その設定の一部である「アクセスフィルタ」とはここでいう黄門様のことで、良からぬう〇こ(通信)を遮断してくれるもの。
大変ありがたい黄門様なのだが、内容を細かく定義しすぎてしまうと、黄門様での検問に時間がかかってしまい、負荷が非常に上がってしまう。
「トラフィックを別々のアウトゴーイングから」という呪文があるが、何のう〇こなのか特定して、それを別々の出口に誘導しつつ・・・という意味である。出口を分けてやることで予期せぬ大量の別う〇こが来ても、ゲームう〇こには影響が出にくいという利点があるが、それを判断するという処理が加わるので黄門様にまたご苦労をかけるわけである。
セキュリティと可用性を高める(障害の影響を受けにくくする)仕組みを本番機で実装したが、検証環境で十分に検証ができなかったために、逆に予期せぬ問題が引き起こされてしまった。
伊勢さん「スイッチのアクセスリストをたくさんつけて、処理がしきれなくなったスイッチが自分で自分をリブートする。」
重要な部分を守っている黄門様は通常、正と副のお二人がいる。
片方が戦闘不能になったとしても、副の黄門様がメイン盾となり、大きな問題は発生しない。
ただその時に、正黄門様と通信できなくなったゲームサーバなどの機器は、他の機器との通信に必要な情報を、近場の人たちみんなに教えてもらおうとする動きをする。
伊勢さん「落ちたら落ちたで問題なかったんですけど、当時のスイッチって落ちたらそのままリブートしてくる。上がってくると待機系からまた元に戻っちゃうんですよね。」
再起動してまた黄門様が正になってくれればいいじゃん一見落着、という気もするが・・・
伊勢さん「サーバ側とスイッチ側で再接続をするために、いわゆるARPプロトコルっていうパケットを出すじゃないですか、あれが数百台のサーバーから一気に出ていて」
そもそもの問題(黄門様の働かせすぎ問題)が解決していないので、またしばらくすると正黄門様がダウンする・・・再起動する・・・復活する・・・ダウンする・・・を繰り返してしまうのである。そうこうしているうちに「他の機器との通信に必要な情報を、近場の人たちみんなに教えてもらおうとする動き」が何度も何度も繰り返され、ストームという無限通信地獄の状態に陥る。
伊勢さん「サーバがオレ無理取れないっていって、自分で全部インターフェースをダウンしていたというのが、2回目のダウンで判明」
黄門様だけでなくサーバの方にも多大な負荷がかかり、通信を遮断する動きに出てしまう。このようにして、障害原因2の「全ワールド強制切断」が発生したのであろう。
(余談だが・・・(急に用語事典風)はるか昔、超単純な原因でしたが自分もストームを発生させてしまい、全てのサーバのステータスランプが光りだしたときは焦りました・・・リリース前でよかったね!(よくない))
15:30頃 (障害発生から37.5h) 第7報 |
|
ついに根本原因に気づいた伊勢さんたちは、ここから怒涛のリカバリを実行に移したようである。ここでPlayOnlineのウェブサイトを落としたのは、おそらくアクセスリスト関連に手を入れ始めたのではないだろうか。
伊勢さん「じゃあやっぱり元に戻そうというのと、アクセスリストを1台でやるんじゃなくて、複数の段階でやらせて処理の負荷を減らそうという」
これまでは処理を上位の部長黄門様でやってもらってましたが、その下に所属するヒラ黄門様にも処理を分担して、働かさせすぎ問題を解消しようとしました。
21:00 (障害発生から43h) 第8報 |
|
23:55 (障害発生から46h) 第9報 |
|
5/19(日) 2:50 (障害発生から49h) 第10報 |
|
※途中でデータベースのメンテナンスも入っている。今回の原因とは直接の関係はないが、多量の登録があったためDBメンテナンスを実行しアクセス性能を改善させていたとみられる。
12:00 (障害発生から58h) 第11報 |
|
14:15 (障害発生から60h) 第12報 |
|
17:35 (障害発生から63h) 第13報 |
|
怒涛のメンテナンスラッシュ。
20:15 (障害発生から66h) 第14報 |
|
そしてついに、伊勢さんたちの「地獄の65時間」が・・・終わった。今までのメッセージとは異なる「なお今後もシステムの安定まで、監視作業を続けさせていただきます。」がそれを裏付けている。
伊勢さん「直して稼働させたのが翌週の月曜日の夕方だったんですよ」
実際には月曜ではなく、終わったのは「5/19(日)の夕方」であった。曜日感覚が消失するくらい過酷な現場であったことは疑いようがない。伊勢さんの「地獄の65時間」というのは、起点はサービス開始直後ではなく、翌日5/18深夜の予期せぬ全サーバ停止が起点であるようだ。
伊勢さん「常に世界を見ているというのがごく普通だった今から思うとちょっと異常な状況だった。
「世界で初めてのチャレンジ」というのが後にも先にも唯一の経験だったかなと」
今となってはもう過去の話だし、障害内容もあたり前の話かもしれない。でも思い出してほしいのは、これは、いちゲーム会社が20年前に行った前代未聞の挑戦だったのである。
「地獄の65時間」を乗り越えたFF11は様々な方々に引き継がれ、今年ついに20周年を迎えることとなった。
戻る