ブログの復旧が難航してた話

先週末に起きたこのブログの動作不良の件、復旧になかなか手こずってしまった。PHPに関する知識不足と、作業時間があんまり取れなかったので放置状態が続いた。ここ一週間はこのブログがほとんど閲覧できない状態でした。

まだ完全に原因を特定できた訳ではないけど、何とか普通に運用できるようにはなった。サイトが何度もダウンしていたけど、EC2インスタンスのCPU使用率は30%ぐらいの負荷しかかかっていなかった。どうやら割とフロント側の問題で、Wordpressにインストールしているプラグインの組み合わせで起こっていた不具合の様子。

ブログがすぐにダウンしてしまうので、何とか動いている間にUpDraftPlusでバックアップを取って、新しいEC2インスタンスを作って復元を試しても、画面が真っ白になっちゃって、管理画面にもアクセスできなかった。少しずつプラグインを減らして何度もインスタンスを作成し直した。
この機会にブログをWordPress powered by AMIMOTO (HHVM)へ移行してしまった。多少パフォーマンスが上がったかな?



いずれにせよ今までインストールしていたプラグインをいくつか外さなきゃいけなかったから、良い機会なのでインストールしていたプラグインを少し整理することにした。
記事の訪問者数を表示するためにCount Per Dayを使っていたけど、負荷がものすごく大きいことが分かったのでアンインストール。
その他、ほとんど活用できていないダッシュボード拡張プラグインをいくつか外して、動作を軽くした。

割と便利だったJetpack by WordPress.comが上手く動かなくなったので外すことにした。以前までJetPackのportfolio機能を使っていたけど、代替手段を探さないといけない。特定のプラグインに依存したページは避けるべきだったと反省。

プラグインを減らしたら管理画面もサクサク動くようになって快適になった。
ググりながらちょっとずつ原因を探るという、とても帰納的なやり方で復旧したから、完全に直ったと確信できずとても不安(笑)
障害が出ることを前提に、小まめにバックアップを取らないとダメだな。

今回の件で知ったんだけど、Amazon EC2にはリザーブドインスタンスっていう料金プランがあるのね。1のインスタンスを長期運用するならリザーブドインスタンスの方がお得になるらしい。

関連記事

UnityでTweenアニメーションを実装できる3種類の無料Asset

Multi-View Environment:複数画像から3次元形状を再構築するライブラリ

iPhone x ロボットハッカソン~RomoのiPhone用SDKで目覚ましアプリを作る~

3Dグラフィックスの入門書

Unity MonoBehaviourクラスのオーバーライド関数が呼び出される順番

Raspberry Pi

第1回 3D勉強会@関東『SLAMチュートリアル大会』

SONYの自律型エンタテインメントロボット『aibo』

ブログをGoogle App EngineからAmazon EC2へ移行

Model View Controller

Polyscope:3Dデータ操作用GUIライブラリ

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハンズオンセミナーに行ってきた

Kubric:機械学習用アノテーション付き動画生成パイプライン

OpenCV 3.1のsfmモジュールのビルド再び

WordPressプラグインの作り方

UnityでOpenCVを使うには?

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『TouchScript』

Boost オープンソースライブラリ

C++の抽象クラス

Math Inspector:科学計算向けビジュアルプログラミングツール

TensorFlowでCGを微分できる『TensorFlow Graphics』

Unity ARKitプラグインサンプルのチュートリアルを読む

Unityからkonashiをコントロールする

OpenCV 3.1とopencv_contribモジュールをVisual Studio 2015で...

Cartographer:オープンソースのSLAMライブラリ

Faster R-CNN:ディープラーニングによる一般物体検出手法

BlenderのPython環境にPyTorchをインストールする

ブログが1日ダウンしてました

Python for Unity:UnityEditorでPythonを使えるパッケージ

ブログをSSL化

Unityで学ぶC#

法線マップを用意してCanvas上でShadingするサンプル

TorchStudio:PyTorchのための統合開発環境とエコシステム

OpenCV

ドットインストールのWordPress入門レッスン

Seleniumを使ったFXや株の自動取引

OpenCVのfindEssentialMat関数を使ったサンプルを読んでみる

ZScript

Deep Learningとその他の機械学習手法の性能比較

C#で使える遺伝的アルゴリズムライブラリ『GeneticSharp』

ROSの薄い本

OpenMesh:オープンソースの3Dメッシュデータライブラリ

コメント