DynamoDBをPHP(AWS SDK)で使う

今回はDynamoDBというNoDBのサービスを使ってみたいと思います。

これまでConfigFile類のキャッシュをMemcacheにさせていたのですが、Memcacheだとそのままだと冗長性がないことがあり、他のサービスを検討していく中で、DynamoDBが適しているのでは?という記事などを多く見かけたので使ってみることにしました。
続きを読む DynamoDBをPHP(AWS SDK)で使う

capistrano+gitでソースコードのデプロイサーバ構築⑤(post-receiveでプッシュと同時にデプロイ)

前回までに構築してきたcapistranoを使用したデプロイサーバーを使い、gitのプッシュを行ったと同時に本番環境にデプロイされる仕組みを構築したいと思います。

今まで私はSubversion(SVN)を使用してきました。
SVNではpost-commitという機能(設定)により、コミットと同時にスクリプトを実行する事ができますが、
gitも同様で様々なタイミングでスクリプトを実行することができるようです。
今回はその中で、リモートリポジトリ(今回はデプロイサーバがgitのリモートリポジトリとなります)にプッシュした直後にデプロイコマンドを実行したいので
そのための機能であるpost-receiveというものを使用して設定します。
続きを読む capistrano+gitでソースコードのデプロイサーバ構築⑤(post-receiveでプッシュと同時にデプロイ)

調査・投稿予定

※このページはメモ的なものです。

今後下記の内容を調べていきたいと思います。
当サイトで扱ってほしいものがあればコメントください。

・OpenLDAP+SSHで複数台のサーバのログイン認証を一元管理&鍵認証
・今まで設定ファイルの内容やセッション情報をmemcacheにさせていたものを、DynamoDBに移植(PHP)
・ELBを使用したSSL Terminationについて
・AmazonCloudWatchのメトリックスを個別にグラフ化
・オートスケーリングの設定方法

capistrano+gitでソースコードのデプロイサーバ構築④(capistranoの設定)

これまでにデプロイサーバにgitサーバのインストール、capistranoのインストールを行い、デプロイ先のWebサーバを構築してきました。

今回は、gitに登録されたファイルをデプロイサーバからWebサーバにcapistranoを使用してデプロイする簡単な設定を行います。
続きを読む capistrano+gitでソースコードのデプロイサーバ構築④(capistranoの設定)

ハマり【make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1】

rubyのインストールを行っている時に出たエラーです。

linking shared-object fiddle.so
/usr/bin/ld: ./libffi-3.2.1/.libs/libffi.a(raw_api.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
./libffi-3.2.1/.libs/libffi.a: could not read symbols: Bad value

BUILD FAILEDcollect2: error: ld returned 1 exit status
make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1
make[2]: Leaving directory `/tmp/ruby-build.20150102012253.761/ruby-2.2.0/ext/fiddle'
make[1]: *** [ext/fiddle/all] Error 2
make[1]: Leaving directory `/tmp/ruby-build.20150102012253.761/ruby-2.2.0'
make: *** [build-ext] Error 2
 (Amazon Linux AMI 2014.09 using ruby-build 20141225-3-g1c0509a)

Inspect or clean up the working tree at /tmp/ruby-build.20150102012253.761
Results logged to /tmp/ruby-build.20150102012253.761.log

Last 10 log lines:
make[3]: Leaving directory `/tmp/ruby-build.20150102012253.761/ruby-2.2.0/ext/fiddle/libffi-3.2.1'
linking shared-object fiddle.so
/usr/bin/ld: ./libffi-3.2.1/.libs/libffi.a(raw_api.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
./libffi-3.2.1/.libs/libffi.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1
make[2]: Leaving directory `/tmp/ruby-build.20150102012253.761/ruby-2.2.0/ext/fiddle'
make[1]: *** [ext/fiddle/all] Error 2
make[1]: Leaving directory `/tmp/ruby-build.20150102012253.761/ruby-2.2.0'
make: *** [build-ext] Error 2

続きを読む ハマり【make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1】