EC2のインスタンスは↓のように立てました。
Amazon EC2を使ってみる(http://shinodogg.com/?p=3370)
以前UbuntuにRedisをいれたときは↓のようにやりました。
RedisをインストールしてSET/GETする(http://shinodogg.com/?p=3233)
今回はAmazonのLinux上にRedisを入れます。
ダウンロードしてきて
# wget http://redis.googlecode.com/files/redis-2.2.2.tar.gz --2011-03-16 03:15:25-- http://redis.googlecode.com/files/redis-2.2.2.tar.gz Resolving redis.googlecode.com... 209.85.175.82 Connecting to redis.googlecode.com|209.85.175.82|:80... connected. - 略 -
解凍して
# tar zxvf redis-2.2.2.tar.gz redis-2.2.2/ redis-2.2.2/.gitignore redis-2.2.2/00-RELEASENOTES redis-2.2.2/BUGS redis-2.2.2/CONTRIBUTING redis-2.2.2/COPYING - 略 -
make叩きます。
# make cd src && make all make[1]: Entering directory `/usr/local/redis-2.2.2/src' cd ../deps/hiredis && make static ARCH="" make[2]: Entering directory `/usr/local/redis-2.2.2/deps/hiredis' cc -c -std=c99 -pedantic -O3 -fPIC -Wall -W -Wwrite-strings -g -ggdb net.c make[2]: cc: Command not found make[2]: *** [net.o] Error 127 make[2]: Leaving directory `/usr/local/redis-2.2.2/deps/hiredis' make[1]: *** [dependencies] Error 2 make[1]: Leaving directory `/usr/local/redis-2.2.2/src' make: *** [all] Error 2
どうもCのコンパイラが入ってないみたいですね。
↓確かにないです。
# which cc /usr/bin/which: no cc in (/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin:/opt/aws/bin)
↓みるとパッケージ管理はyumって事なので、
http://aws.amazon.com/jp/amazon-linux-ami/
yumでgcc入れます。
# yum install gcc Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile amzn | 2.1 kB 00:00 Setting up Install Process - 略 - Installed: gcc.i386 0:4.1.2-48.14.amzn1 Dependency Installed: cpp.i386 0:4.1.2-48.14.amzn1 glibc-devel.i686 0:2.12-1.2.21.amzn1 glibc-headers.i686 0:2.12-1.2.21.amzn1 kernel-headers.i686 0:2.6.34.7-56.40.amzn1 libgomp.i686 0:4.4.4-5.18.amzn1 Complete!
入りました。って事でもっかいmakeです。
# make cd src && make all make[1]: Entering directory `/usr/local/redis-2.2.2/src' - 略 - make[1]: Leaving directory `/usr/local/redis-2.2.2/src' # echo $? 0
無事入ったみたいです。
シンボリックリンクでも貼ったりしつつ起動してみます。
(まぁ起動するのにsrc配下にってのもアレですが。)
# /usr/local/redis/src/redis-server /usr/local/redis/redis.conf [20453] 16 Mar 03:34:50 * Server started, Redis version 2.2.2 [20453] 16 Mar 03:34:50 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. [20453] 16 Mar 03:34:50 * The server is now ready to accept connections on port 6379 [20453] 16 Mar 03:34:50 - 0 clients connected (0 slaves), 539440 bytes in use
別窓立ち上げてSETしてGETしてみます。
$ /usr/local/redis/src/redis-cli redis> set amazon ec2 OK redis> get amazon "ec2"
ちなみに、ポート番号の設定とか、デーモンにしてプロセス番号をファイルに保持とか、
どのくらいの頻度でファイルに書きだすのか?ってのはredis.confで設定する事になります。
redis.confのコメントは全て英語で記載されていますが、
↓にて日本語訳を見ることができます。
http://redis.shibu.jp/admin/config.html
#といいますか、これからhttp://redis.shibu.jp/を読み込もうと思います。。
#こんなナイスなコンテンツの存在知りませんでした。。
Redis: the Definitive Guide: Data Modeling, Caching, and Messaging
posted with amazlet at 11.03.16
Salvatore Sanfilippo Ted Nyman Pieter Noordhuis
Oreilly & Associates Inc
売り上げランキング: 118741
Oreilly & Associates Inc
売り上げランキング: 118741
コメント
[…] よ、と。 2年くらい前に↓こんなブログも書いたりしてたし、 EC2(Amazon Linux AMI)上にRedisをインストールする | shinodogg.com アドテク界隈にいた自分としては、数年前からAWSはチェックして […]