Amazon EC2 の t1.microインスタンスでMySQLがよく落ちる

POSTED: Jun 29, 2013, 3:19 pm
TAGS: , ,

EC2 の t1.microインスタンスにてWordPressを複数たててると、まーよくMySQLが落ちます。
しまいには起動もしなくなるので、MySQLのログを見てみます。

130629  5:46:48 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
130629  5:46:48 InnoDB: Completed initialization of buffer pool
130629  5:46:48 InnoDB: Fatal error: cannot allocate memory for the buffer pool
130629  5:46:48 [ERROR] Plugin 'InnoDB' init function returned error.
130629  5:46:48 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
130629  5:46:48 [ERROR] Unknown/unsupported storage engine: InnoDB
130629  5:46:48 [ERROR] Aborting

という感じでバッファが足りないと起こられてました。

問題のメモリをfreeで確認してみます。

$ free
             total       used       free     shared    buffers     cached
Mem:        608476     565044      43432          0       1284      53996
-/+ buffers/cache:     509764      98712
Swap:            0          0          0

えっ(;゚д゚) Swapゼロ。
t1.microインスタンスには613MBのメモリしか無い上にSwap領域も無いみたいなのでSwap領域を作ってあげると良いみたいですね。

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 32.7992 s, 32.7 MB/s

$ sudo mkswap /swapfile 
mkswap: /swapfile: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=219ec0fb-4c67-449b-a7bb-c082971b68d2

$ sudo swapon /swapfile

$ free
             total       used       free     shared    buffers     cached
Mem:        608476     601432       7044          0        824      88752
-/+ buffers/cache:     511856      96620
Swap:      1048572          0    1048572

うむ、これで安心ですね!

EOS 6D を導入しました

POSTED: Apr 19, 2013, 7:44 pm
TAGS: ,
IMG_9363 IMG_9366

サブ機としてEOS 6Dを購入しました!WiFiとGPSを搭載しながらボディを縮小、軽量化し、markIIIと同じ画質性能、防塵防滴仕様をもつあの6D。撮影しながらiPhoneに写真を転送して、お手軽にデジイチInstagramとかできちゃうデザイナー界隈で人気のあの6Dです。
マジのお散歩カメラてやつですね。

早速何度か仕事で使用してみての雑感。
事前情報どおりmarkIIIとの画質の差異はごくごくわずか。仕事で全く問題なく使えるレベル!
いくつか気に入らなかったのが、シャッター音、操作性、モニターの色味。

シャッター音については5DmarkIIIと比べるとなんだかチープな印象。どちらかというとEOS Kissとかに近い雰囲気のゆるい感じ。まだ7Dのほうがハギレ良くてプロっぽい音がします。連写性能もmarkIIIに比べると遅いので、ほんとうにEOS Kissって感じですね。よく言うと静かです。

操作性についてはこの小型化を考えるとしょうがないのかな。markIII比べるとかなり使いづらいです。ホワイトバランスのボタンが無くなってしまったのは残念。ISOボタンの位置がmarkIIIと違うので、2刀流していると間違えまくります。あと、いつも1点AFで使うことがほとんどなのですが、どういうわけか使っているうちにセレクト位置が変わってしまうのも気になりますね〜w

そしてモニターの色味、これが一番問題な気がします。何が問題かってmarkIIIとだいぶ違うのです。同じ設定で撮ると6Dのほうがだいぶ黄色味を帯びた感じに。。実際に現像するときはmarkIIIと変わりないのですが、モニターで見ている時点ではだいぶ違います。あまりにもmarkIIIと違うのでもしかしてこれは初期不良なのかな?(;゚д゚)

さて、いろいろ批判しましたが何はともあれこの画質性能をこの価格帯で手に入れられる6Dはオススメのデジイチですよー!
フルサイズを一度使うともう後には戻れないのでご注意を。

AWS EC2 Linuxにサクッとphp開発環境を作るシンプルなまとめ

POSTED: Apr 1, 2013, 9:14 pm
TAGS: , ,

細かい設定は抜きでとにかくガーーッと環境構築したいときのためにシンプルにまとめてみました。
レッツスタートぅ!

# Macのターミナルでsshの鍵やらも設定しておく。
vi ~/.ssh/config
# ~/.ssh/config
Host hoge
User ec2-user
HostName alpha.hoge.com
Port 22
IdentityFile ~/.ssh/hogehoge.pem
# らくらく接続〜(・3・)
ssh hoge
# rootのパスワードを設定。最近はパスワード強度判定がおせっかいなほど親切。
sudo passwd root
# ec2-userのパスワード設定、アップデート、php、mysql関連をインストール。
passwd ec2-user
yum update
yum install httpd mysql-server php php-pear php-mysql php-mbstring php-gd php-mcrypt php-pecl-apc
# タイムゾーンの設定。
cp -i /usr/share/zoneinfo/Japan /etc/localtime
# php.iniの設定。
vi /etc/php.ini
date.timezone = "Asia/Tokyo"
expose_php = Off
# webmasterユーザーを追加。公開ディレクトリを作成。
useradd webmaster
passwd webmaster
cd /var/www/
mkdir hoge.hogehoge.com
chown -R webmaster. hoge.hogehoge.com
# httpd.confの設定。
vi /etc/httpd/conf/httpd.conf
# httpd.conf
#ServerTokens OS
ServerTokens Prod

ServerName hoge.hogehoge.com:80

#Options Indexes FollowSymLinks
Options Includes ExecCGI FollowSymLinks

#AllowOverride None
AllowOverride All

#LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%!414r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

#ServerSignature On
ServerSignature Off

#AddDefaultCharset UTF-8

#AddHandler cgi-script .cgi
AddHandler cgi-script .cgi .pl

#Options Indexes MultiViews FollowSymLinks
Options MultiViews
# httpdの再起動。
/etc/rc.d/init.d/httpd start
chkconfig httpd on
# mysqlの設定。
vi /etc/my.cnf
# my.cnf
character-set-server = utf8
# mysqlの再起動。
/etc/rc.d/init.d/mysqld start
chkconfig mysqld on
# mysqlの設定。空ENTERとパスワード入力だけで、匿名ユーザー削除、リモートからのrootログイン禁止、testデータベース削除という感じ。
mysql_secure_installation

いちおうdone!

CORESERVERで手っ取り早くWordPressをインストール、使いやすくする方法

POSTED: Mar 25, 2013, 12:21 pm
TAGS: ,

ssh接続など細かい設定ができて汎用が効くので良く利用しているCORESERVER
デフォだとバージョンの古いphp、かつセーフモードで動いているのですが、これだと色々と不都合なことが多いですよね。
WordPressのファイル群にある.htaceessに下記の一行を加えてしまいましょう。

AddHandler application/x-httpd-php54cgi .php

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

これでプラグインのインストールやテーマのインストール、画像のアップロードなどなど、何も手を加えなくてもスムーズにできるようになるはず。