2021年12月28日、日本HPが京都大学のスーパーコンピューターに対して、バックアップ処理を行うソフトウェアのアップデートを実施したところ、ソフトウェアの不具合で77TBものデータを意図せず削除してしまうという事故を発生させてしまったことを発表しました。この結果、同コンピューターに保存されていた数日分の研究データが失われてしまったとのことです。
- スーパーコンピュータシステムのファイル消失のお詫び | お知らせ | 京都大学情報環境機構
- (PDFファイル)Lustre ファイルシステムのファイル消失について - 日本ヒューレット・パッカード
- Botched HPE software update deletes 77TB of supercomputer files
- 77TB of Research Data Lost Because of HPE Software Update | Tom's Hardware
京都大学の発表によると、意図せず削除されたデータは「2021年12月14日 17時32分 ~ 2021年12月16日 12時43分」にかけて生成された14の研究グループが作成したファイルのうち、2021年12月3日 17時32分以降更新のなかった約3400万ものファイルが削除されてしまったそうです。なお、このうち4つの研究グループが作成したデータについてはバックアップからの復旧ができなかったため、完全に消失したと説明しています。
日本HPは今回の事故が発生した原因について「バックアップ処理で行われる『ファイルの削除処理』に対して、今後のメンテナンス性を高めるため更新を適用したシェルスクリプトを準備していました。そして、旧スクリプトを新スクリプトに更新する際に反映手順の考慮不足があり、事故が発生してしまいました」と説明しています。
同社によると、更新用スクリプトの設置手順は「スーパーコンピューター内に設置されている古いスクリプトを新しいものに上書きする」内容となっていたとのこと。しかし、当時は対象のスクリプトが実行中であることを知らずに新しいものに上書きしてしまいました。
本来、更新後のスクリプトは最初から実行していれば問題ないものだったのですが、このスクリプトが変なタイミングで上書きされた結果、途中から実行される形となったそうです。結果的に「ファイルの削除期間を表す内容」が空白となってしまい、対象ディレクトリ(/LARGE0)内に保存されていた本来削除されるべきではないファイルもすべて削除されてしまったようです。
記事作成時点において、京都大学はスーパーコンピューターでのバックしアップ処理を停止しており、2022年1月末までには再発防止策を適用して再開する予定であるとしています。
スクリプト更新前はファイル削除期間を「コマンドにベタ書き」、更新後は「変数化してメンテナンス性を向上した」という内容だと勝手に読み取っていますが、関係者の方がもしこのブログを見ていて、内容に誤りや問題があれば指摘いただけると幸いです。