ヤマムギ

growing hard days.

*

WordPressで発生した「No space left on device」に対応

   

CloudWatch Logsメトリクスフィルターで「No space left on device」を検知

前回、WordPressにアクセスできなくなったときに、Nginxのエラーログに「write() to “/var/log/nginx/access.log” failed (28: No space left on device) while logging request」とエラーが出力されていました。
ディスク容量がなくなってアクセスできなくなったようです。

CloudWatch Logsのメトリクスフィルターで「No space left on device」文字列を検知してアラームからSNSでメール送信するように設定していました。

そしてアラームが届きましたので、逼迫しているディレクトリを確認しました。

Amazon Linux2で逼迫しているディレクトリを確認

AMIから起動したてのEC2インスタンスと比較してみました。

状況の確認(df)

まず状況を確認しました。

  • 障害発生インスタンス

  • 起動したてのインスタンス

EBSボリュームで設定している8GBを100%利用していました。

ディレクトリごとに確認(du)

次にディレクトリごとに確認してみました。

  • 障害発生インスタンス

  • 起動したてのインスタンス

/usrディレクトリでした。

  • 障害発生インスタンス
    3.3G /usr/share/nginx

  • 起動したてのインスタンス
    777M /usr/share/nginx

ということはNginxが使用しているディレクトリだろうと想定できました。
そしてディレクトリを調べていきましたところ、cacheディレクトリのデータで逼迫されていることがわかりました。

ElastiCache Memcachedを使用

W3 Total Cacheプラグインを使用しています。

WordPress W3 Total Cache のDatabaseCacheをAmazon ElastiCacheのmemcachedに格納する
以前設定して、コストとのトレードオフでやめてたのですが、検証目的でまた再開することにしました。

キャッシュの保存先をMemcachedにしてみて、状況を確認してみます。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

試したい事があるのでAWS でとりあえずAmazon Linuxのサーバを作る

1年間の無料キャンペーン期間中に検証する とある勉強会でせっかくAWSのアカウン …

「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く未来~」に行ってきました

「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く …

Amazon VPCでIPv6を使用する

VPCのIPv6を設定してみました。 設定 [Amazon 提供の IPv6 C …

AWS Transit GatewayのAcceleratedサイト間VPN接続確認

Transit GatewayでVPN接続を作成するときに、Global Acc …

Amazon WorkSpaces Web Accessを有効化する

仕事がら、Amazon WorkSpacesをディレクトリも含めて一時的にセット …

S3 VPCエンドポイント設定前と設定後を確認

S3のVPCエンドポイントを設定した際に、S3バケットのAPIエンドポイントへの …

ある意味マネジメントコンソールで生成された署名付きURL

マネジメントコンソールにS3オブジェクトの[開く]というボタンがいつのまにか出来 …

RDSの拡張モニタリングを有効にしました

RDS for MySQLです。 変更メニューで、[拡張モニタリングを有効にする …

WordPress W3 Total Cache のDatabaseCacheをAmazon ElastiCacheのmemcachedに格納する

このブログのアーキテクチャは現在こちらです。 データベースは、Amazon Au …

AWS Certificate Manager証明書とAmazon Route 53でAmazon API GatewayのAPIのカスタムドメイン名前解決する

AWS Certificate ManagerとAmazon Route 53と …