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

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

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

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



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

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

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

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

関連記事

チャットツール用bot開発フレームワーク『Hubot』

iPhone x ロボットハッカソン~RomoのiPhone...

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

AmazonEC2のインスタンスをt1.microからt2....

UnityのGameObjectの向きをScriptで制御す...

OpenCVでカメラ画像から自己位置認識 (Visual O...

iPhoneをSSHクライアントとして使う

Web経由でRaspberry PiのGPIOを操作したい

PythonでBlenderのAdd-on開発

動的なメモリの扱い

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

Deep Fluids:流体シミュレーションをディープラーニ...

geometry3Sharp:Unity C#で使えるポリゴ...

Webスクレイピングの勉強会に行ってきた

Super Resolution:OpenCVの超解像処理モ...

まだ続くブログの不調

Math.NET Numerics:Unityで使える数値計...

UnityでLight Shaftを表現する

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

OpenGVの用語

ネームサーバとDNSレコードの話

Manim:Pythonで使える数学アニメーションライブラリ

UnityでARKit2.0

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

機械学習で遊ぶ

Raspberry PiでIoTごっこ

Caffe:読みやすくて高速なディープラーニングのフレームワ...

スクレイピング

viser:Pythonで使える3D可視化ライブラリ

AMIMOTO(PVM版)で作成したインスタンスをAMIMO...

Windows10でPyTorchをインストールしてVSCo...

Human Generator:Blenderの人体生成アド...

OpenCVで顔のモーフィングを実装する

プログラムによる景観の自動生成

クラスの基本

MPFB2:Blenderの人体モデリングアドオン

Raspberry Pi 2を買いました

Pythonの自然言語処理ライブラリ『NLTK(Natura...

Kornia:微分可能なコンピュータービジョンライブラリ

Mean Stack開発の最初の一歩

Pythonのソースコードに特化した検索エンジン『Nulle...

libigl:軽量なジオメトリ処理ライブラリ

コメント