EC2(Amazon Linux AMI)上にRedisをインストールする

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
Salvatore Sanfilippo Ted Nyman Pieter Noordhuis
Oreilly & Associates Inc
売り上げランキング: 118741

コメント

  1. […] よ、と。   2年くらい前に↓こんなブログも書いたりしてたし、 EC2(Amazon Linux AMI)上にRedisをインストールする | shinodogg.com アドテク界隈にいた自分としては、数年前からAWSはチェックして […]

タイトルとURLをコピーしました