「技術」カテゴリーアーカイブ

EC2の/bootを含む/(root)のEBSボリュームを拡張したい

Micro Instanceに入れたAmazon Linuxが10GBで、ちょっと手狭になってきたので拡張した時の手順。

  1. instanceをstopする
  2. 停止したインスタンスにatachされているEBS Volumeのsnapshotをとる
  3. snapshotから新しいEBS Volume(ここでサイズを指定できる)
  4. instanceからEBS Volumeをdetachする
  5. 新しいEBS Volumeを/dev/sda1にatachする
  6. instanceをstart
  7. resize2fs

ポイントはあせらないことw

MySQLのtmpdirをtmpfsにしてusing filesortのSQLも高速化?

未検証だけど、動きそうな気がする。

ただし、レプリケーションしているときのslave側はちょっと注意が必要で、「MySQLがテンポラリファイルを格納する場所」を読む限りダメって書いてあるんだけど、「レプリケーションスタートアップオプション」を読むと、–slave-load-tmpdir=filename に揮発しないストレージを指定すればよさそう。

MongoDBの起動スクリプト

10genのドキュメントを見ながらCentOS, Fedora用のリポジトリを追加してインストールしたら、mongodの起動スクリプトはパッケージに含まれてたけど、mongosの起動スクリプトがなかった。

mongodのを参考に作ったんだけど、起動してみるとpidファイルが無い。。mongodは起動するとdatadirにmongod.lockを作るのでこれでpidが特定できてるんだけど、mongosはどこに出るの?と思ったら、起動時に –pidfilepath で指定しないとどこにも出ないようなので /var/run/mongo/mongos.pid とか指定すればオッケーでした。

CentOS 5.5(64bit) + Apache 2.2 + PHP 5.1でメモリー約1.7GBの壁

バッチ処理的なものを書いてたらぶち当たったのでメモ。

32bit環境だったらわかるんだけど、64bit環境でも部分的に32bitな部分が残ってるんだかなんだか、メモリーが約1.7GBしか確保できなくてエラーが出た。

大量にメモリーを使わないように書きなおして回避できたけど、なんだかちょっと納得行かない感じ。まぁそもそもそんなにメモリー使う実装はどうなのよ?というのもあるけど。。