2010幎11æ以æ¥ãAmazonã¯æå°éã®ã¯ã©ãŠããã¹ãã£ã³ã°ããã±ãŒãž
ãç¡æã§æäŸããŠããŸãïŒ1幎éãæ°èŠãŠãŒã¶ãŒã®ã¿ïŒã é·ãéãç§ã¯ãããäœã§ããããæããã€ããã§ããããããŠãæ¯åã¯æåŸã®ããã§ããã å°çšãµãŒããŒå
šäœã§ãç§ã¯äœãããããšããããŸããã§ããã Ruby on Railsã«èå³ããããããã»ãã®æ°ãæåã«Linuxã«ç§»ããŸããã奜å¥å¿uriousçãªãã£ãŒãããã®åèäŸã§ãã ãã®èšäºãç§ã®ãããªãããŒã®ã¯ã©ãŠããžã®çæ³çãªå
¥ãå£ã«ãªãããšãé¡ã£ãŠããŸãã
Amazon Web Servicesã«ãµã€ã³ã¢ããããã®ã¯ç°¡åãªããã»ã¹ã§ãã ã€ã³ã¿ãŒãããçšã®æ¯æãã«ãŒããããå Žåã¯ããã©ãŒã ã«èšå
¥ããã ãã§ãã ããã§ãªãå Žåã¯ããVisa virtuonãe-cardãinternet cardãbanksãïŒ
your country nameïŒ
ããªã©ã®ãªã¯ãšã¹ããã°ãŒã°ã«ã§æ€çŽ¢ããçµæãèªãã åŸãéè¡ã«è¡ããŸãã ç§ã®å®¶ã«äžçªè¿ãã®ã¯ãã©ããã¯ã¹éè¡ã®æ¯åºã§ãã€ã³ã¿ãŒããããã³ãã³ã°ã¯ãããŸãããããã®æ¡ä»¶ã¯ååã«åãå
¥ããããŸãã ã«ãŒãã®ã¡ã³ããã³ã¹è²»çšã¯å¹Žé3ãã«ã§ãæäœæ®é«ã¯5ãã«ã§ãã 3æ¥åŸã«ã¢ã¯ãã£ããŒãããŸãããã¢ã«ââãŠã³ããžã®ãªã³ã¯ã«å€±æããåŸãéè¡ã®ãããã©ã€ã³ã«é»è©±ããŠ
CVV2ãªãã§èªèšŒã
èš±å¯ããå¿
èŠããããŸãã ã 5ååŸãæåã®ãµãŒããŒãèµ·åããŸããã
AWSã®ç¬¬äžå°è±¡-ããŸãã«ãå€ãã®ãã®-ãããç解ããããšã¯ãããŸããïŒ å€æ°ã®FAQãããã¥ã¢ã«ãã¿ããæ°ãããããŸããªçšèªã äœãããããªã³ã¯ã«ãžã£ã³ãããã®ã§ã¯ãªãã
ãã®ããã¥ã¢ã«ã®å¯Ÿè§ç·ã«æ²¿ã£ãŠèªãããšã§å©ããããŸããã 269ããŒãžãããŸãããå€ãã¯æåã«ã¹ãããã§ããã®ã§ãå¿é
ããªãã§ãã ããã
AWSãšã¯äœãããŸãAWSã®åããŒããã©ã®ããã«çžäºæ¥ç¶ãããŠããããç解ããããã®æãçç£çãªã¡ã¿ãã¡ãŒã¯ãããŒã¿ã»ã³ã¿ãŒã§ãã ã¢ã«ãŠã³ãã³ã³ãããŒã«ããã«ã¯ãå
±æãã¹ãã£ã³ã°ãŸãã¯ã·ã§ã«å°çšãµãŒããŒç®¡çè
ãšããŠã§ã¯ãªããã¯ã©ãŠãããŒã¿ã»ã³ã¿ãŒã§ã¯ãªããéåžžã®äœæ¥ãèªååãããœãããŠã§ã¢ãšããŠæãããæ³åãããŸãã ã€ãŸãã管çè
ã«é»è©±ããŠãµãŒããŒãåèµ·åããããåã3ã€ãã€ã³ã¹ããŒã«ããããããŒããŠã§ã¢ãã¢ããã°ã¬ãŒãããããã代ããã«ããã¿ã³ãã¯ãªãã¯ãããšããã¹ãŠãæ°æéãŸãã¯æ°æ¥ã§ã¯ãªãæ°åã§èªåçã«è¡ãããŸãã
ã€ã³ã¹ã¿ã³ã¹ã¯ãµãŒããŒã©ãã¯ã§ãã AMIã¯ãããŒã¿ã»ã³ã¿ãŒã«ã€ã³ã¹ããŒã«ã§ããã«ã¹ã¿ãã€ãºããããµãŒããŒã€ã¡ãŒãžã§ãã ããªã¥ãŒã -ä»»æã®ãµãŒããŒã«æ¿å
¥ã§ããããžã ã¹ãããã·ã§ãã-ããžã®ããã¯ã¢ããã ã»ãã¥ãªãã£ã°ã«ãŒã-1ã€ãŸãã¯è€æ°ã®ãµãŒããŒãé衚瀺ã«ã§ãããã¡ã€ã¢ãŠã©ãŒã«ã
ã©ã®ããã«æ©èœããŸããïŒ ãã®ãã¹ãŠã®ã¯ã©ãŠãã®è±å¯ãã®äžå¿çãªãªããžã§ã¯ãã¯ãAmazon Machine ImageããŸãã¯AMIã§ãã AMIã«ã¯ãS3ããã¯ã¢ãããšEBSããã¯ã¢ããã®2ã€ã®ã¿ã€ãããããŸãã EBS-backedã¯ãä»®æ³ããž
-EBSããªã¥ãŒã ãåããä»®æ³ãã·ã³ã€ã¡ãŒãžã§ãã S3-backed-ããžã®ãªããã·ã³ãAmazonã«EBSããªãããã¹ãŠã®ãã¡ã€ã«ãS3ã«ä¿åããå¿
èŠããã£ãæ代ã®å°é£ãªéºç£ã S3ããµããŒããããµãŒããŒã¯ãå€æ¹ã«ãªãïŒåæ¢ïŒã«ããããšã¯ã§ããŸããããŸããç¿æ¥ã®ååäžã«ãªã³ïŒéå§ïŒã«ã§ããç Žæ£ïŒçµäºïŒã§ããŸããå¿
èŠã«å¿ããŠãæ°ããïŒèµ·åïŒãäœæã§ããŸãã S3ã«ä¿åãããªãã£ãããŒã¿ã¯ãã¹ãŠå€±ãããŸãã EBSã«è£æã¡ãããAMIã䜿çšããæ¹ãã¯ããã«ç°¡åã§ãããããããã«ã€ããŠæ·±ãæãäžããããšã¯ããŸããã§ããããŠãŒã¶ãŒã®èŠ³ç¹ããã¯ãé£ã®éšå±ã®ã©ããã«ç«ã€å®éã®ãã·ã³ãšéãã¯ãããŸããã
Amazonã®ãµãŒããŒã«ã¯ããããã奜ã¿ã®æ°çŸã®ãµãŒããŒã€ã¡ãŒãžãæ ŒçŽãããŠãããã»ãšãã©ãã¹ãŠã®ãµãŒããŒOSãšããªã€ã³ã¹ããŒã«ãœãããŠã§ã¢ã®ãªãã·ã§ã³ãå€æ°ãããŸãã
ãã¢Ubuntu Server 10.04ã®
å
¬åŒã€ã¡ãŒãžãéžæããŸããã æè¡çã«ã¯ããããã®AMIã¯ãã¹ãŠ
XEN æºä»®æ³ãã·ã³ã§ãã ååãšããŠããã®ãããªã€ã¡ãŒãžãæåããèªåã§äœæã§ããŸãããç§ã«ãšã£ãŠãµãŒããŒã¯Ruby on Railsã®åãªãã¹ã¿ã³ãã«éããªããããæéãç¡é§ã«ããŸããã§ããã äœæ¥ãéå§ããåã«ãããŒã«ã«ãã·ã³ã«ec2-api-toolsããã±ãŒãžãã€ã³ã¹ããŒã«ããå¿
èŠããããŸãïŒ
sudo apt-get install ec2-api-tools
ãµãŒããŒã¯SSHã«ãã£ãŠå¶åŸ¡ããããŠãŒã¶ãŒåã¯ubuntuãå€éšIPã¢ãã¬ã¹ãšãã¡ã€ã³åã¯ããã«ãŸãã¯ec2-describe-instancesã³ãã³ãã®åºåã«è¡šç€ºãããŸããããŒã¯AWSãããžã¡ã³ãã³ã³ãœãŒã«ã§æãç°¡åã«çæãããããŒã«ã«ãã·ã³ã«ä¿åãããŸãïŒ ããããŒãæãç°¡åã§ãããã³ãã³ãã©ã€ã³ã®Jediã¯ããŒã«ã«ã§ããŒã䜿ãæ
£ããã³ãŒãã䜿çšããŠAmazonã«ã¢ããããŒãããæ¹ãç°¡åãããããŸããã ãã¡ã€ã¢ãŠã©ãŒã«ïŒã»ãã¥ãªãã£ã°ã«ãŒãïŒã¯ããã©ã«ãã§ãã¹ãŠãéãããããæ¥ç¶ãè©Šã¿ãåã«
22çªç®ã®ããŒããéãå¿
èŠããããŸãã éçIPãããå Žåã¯ãã»ãã¥ãªãã£ã匷åããããã«ããœãŒã¹ïŒIPãŸãã¯ã°ã«ãŒãïŒãã£ãŒã«ãã§æå®ã§ããŸãã SSHã»ãã·ã§ã³ãçµäºãããšãã«ãã·ã³ãåæ¢ããã«ã¯ãsudo poweroffãæžã蟌ãã ãã§ãåæ¢ã¢ãŒãã«ãªããŸãã åŒãç¶ãåäœããããå Žåã¯ãexitãèšè¿°ããŸãã
ããã«æ³šæããå¿
èŠãããæåã®èœãšãç©Žã¯ãç¡æããã±ãŒãžã«10 GBã®EBSããªã¥ãŒã ãå«ãŸããŠãããæšæºã®Amazon AMIã«ã¯ããã©ã«ãã§
15ã®ã¬ãã€ãã®ããžãæèŒãããŠããããšã§ãã ãã®å Žåããã¢ã·ã¹ãã ã®æèŠæéã¯1Gæªæºã§ãã ã€ã³ã¿ãŒãããã«ã¯ãEBSã»ã¯ã·ã§ã³ãæ¡åŒµããæ¹æ³ã«é¢ããèšäºããããããããŸããããããæžããæ¹æ³ã«é¢ããè³¢æãªèšäºã¯ãããŸããã ååãšããŠãããžå
šäœãæ°ããå°ããªããŒãã£ã·ã§ã³ã«ååæããããšããå§ãããŸããããã以éã¯ã·ã¹ãã ãèµ·åã§ããŸããã§ããã ç§
ã¯ããã€ãã®ããã°ã®ã³ã¡ã³ãã®ã©ããã«è§£æ±ºçãèŠã€ããŸããã ãããŠãç§ã¯ãããã¹ããã¯ã«ä¹ããŸããïŒ å®éãç§ã¯ç§ã®äººçã§åããŠ
ddã䜿çšããŸããã ãã¡ããããããã¯ãµã€ãºãæå®ããã®ãå¿ããŸããïŒããã©ã«ãã§ã¯512ãã€ãã®ã¿ïŒã ããã«ãã·ã¹ãã ãã¡ã€ã«+ 9.3ã®ã¬ãã€ãã®ãŒããé·æéã³ããŒãããããšãç解ããããã®ã€ã³ããªãžã§ã³ã¹ãããããã¡ã€ã«ã·ã¹ãã ã®ãµã€ãºã1Gã«åæžããŸããã ããããddã«ãããéç¥ããã ãã§ã¯ååã§ã¯ãããŸããã ãããŠã圌ã¯ãã¡ã€ã«ã·ã¹ãã ãæ°ã«ããã
10ã®ã¬ãã€ãã®ããŒãã£ã·ã§ã³ãçµäºãããšãã«ã®ã¿åæ¢ããŸããã 512ãã€ãåäœã®10ã®ã¬ãã€ãã¯åè«ã§ã¯ãããŸããããEBSããªã¥ãŒã ã®I / Oæäœã®ç¡æã®æéå¶éã¯1,000,000ã ãã§ãã ããã«ã2å°ç®ã®ãµãŒããŒãæ¥ãã§èµ·åãããšãã«ãæšæºAMIïŒm1.smallã以äžã®ãããªãã®ãåç
§ïŒã®ããã©ã«ãæ§æãt1.microã«å€æŽããã®ãå¿ããŸãããããããç¡æã§ã¯ãããŸããã åèšïŒddããã22ã»ã³ãã1æéããã10ã»ã³ãã®m1.smallã€ã³ã¹ã¿ã³ã¹ã
ãããã®æäœã®åŸã
10ã®ã¬ãã€ãã®ããžã§AMIã®ç¬èªããŒãžã§ã³ãä¿åããŸããïŒã€ã³ã¹ã¿ã³ã¹ã®ã³ã³ããã¹ãã¡ãã¥ãŒã§1ã¯ãªãã¯ïŒã AMIãäœæãããšãã·ã¹ãã ã®ã¹ãããã·ã§ãããèªåçã«äœæãããŸãã å®éã«ã¯AMI-ããã¯ã¹ãããã·ã§ããã§ãããä»®æ³ãã·ã³ãšããŠã®ã¿ç»é²ãããami-xxxxxxxxãšãã圢åŒã®èå¥åãæã¡ãŸãã EBSããªã¥ãŒã ãšã¯ç°ãªãããã¡ã€ã«ã®å®éã®äœ¿çšéã«é¢ä¿ãªããå
šé¡ã«å¯ŸããŠæ¯æããè¡ãããŸãããã¹ãããã·ã§ããã¯å§çž®åœ¢åŒã§ä¿åãããå¢åçã«äœæãããŸãã ãã®ãããS3ã§ã¯ã»ãšãã©ã¹ããŒã¹ãåããŸããã 1ã€ã®AMIããè€æ°ã®ã€ã³ã¹ã¿ã³ã¹ãå®è¡ã§ããããããã«ç¬èªã®ããžããããŸããããšãã°ãMySQLããŒã¿ããŒã¹ãªã©ã®ã¢ããªã±ãŒã·ã§ã³ããŒã¿ãä¿åããã«ã¯ãããã«å¥ã®ãµãŒããŒãå¿
èŠã«ãªããŸããããã§ã«è²»çšãããããŸãã WebãµãŒããŒãšããŠã®ãã·ã³ã å°çšã®ããŒã¿ããŒã¹ãµãŒããŒã®å Žåããã¥ãŒãã³ã°ã«ç
©ãââãããããšãããããŸãã;
Amazonã«ã¯æ¢è£œã®ãã®ããããŸãã ããäžã€ã®éèŠãªãã€ã³ãã ãã·ã³ãäœæããããšãEBSããªã¥ãŒã ãäœæãããç Žæ£ããããšïŒã€ãŸããåæ¢ã§ã¯ãªãçµäºããŸãïŒïŒãããã©ã«ãã§ç Žæ£ãããŸãã ããã¯è«ççã§ã-圌ãã¯ãµãŒããŒãã©ãã¯ããæãåºããããžãæ®ããŸããã 確ãã«ããã·ã³ã®é»æºããªã³ã«ãªã£ãŠãããã©ããã«é¢ä¿ãªããEBSã®ããªã¥ãŒã ããšã«ãéã滎ããŸãã ãã ããå¿
èŠã«å¿ããŠããµãŒããŒããããžã
åãåºããŠèªå®
ã«çœ®ããŠããããšãã§ããŸãã
次ã«ããããã®m1.smallãšt1.microã®æå³ã«ã€ããŠè©³ãã説æããŸãã 䜿çšå¯èœãªãã¹ãŠã®æ§æã®
ãªã¹ãã次ã«ç€ºããŸãã t1.microã«ã¯ã
ma-a-a-a-a-a-lazyã®ãã¥ã¢ã³ã¹ã1ã€ãããŸãã ä»ã®ãã¹ãŠã®ã¿ã€ããšã¯ç°ãªãããã€ã¯ãããã»ããµã®ãªãœãŒã¹ã¯å¯å€ã§ãã 觊ãããŸã§ã¯m1.smallã®2åã§ãããè² è·ãããããšããã«ç²ããŠããŒã¹ããŒãã®äžã«èœã¡ãŸãã ã€ãŸããcronãæªçšãããããããªãå€æããããæ¯åæ°å件以äžã®èŠæ±ã®ããŒã¯è² è·ã§ãããžã§ã¯ããç¶æããããšãããããªãã§ãã ããã æåã®æ°ç§éã¯ã¹ããŒãã«æ©èœããŠããããã«æããŸãã-ãµã€ããžã®ãªã¯ãšã¹ããè€æ°ã®ãªã¯ãšã¹ããäžåºŠã«åŠçããã«ã¯ååã§ãããRubyã€ã³ã¿ãŒããªã¿ãŒã®ã³ã³ãã€ã«ã«ã¯éåžžã«é·ãæéãããããŸããã Midnight Commanderãå°ããªå®ç³ãªã©ã®å°ããªãã±ãããè¶
é«éã§ã€ã³ã¹ããŒã«ããããšãWebãµãŒããŒã¯ThinkPad X100eããã3åéãèµ·åããŸãã ç§ã®æèŠã§ã¯ãããã¯éåžžã«åççãªåŠ¥åæ¡ã§ãã ããã§äººã
ã¯ãã¹ããè¡ããŸããããé床ã¯äœäžããŸããããéã®ããã«
ãã€ã¯ãã€ã³ã¹ã¿ã³ã¹ã¯ã¹ã¢ãŒã«ã€ã³ã¹ã¿ã³ã¹ã®1.5åã¯ãŒã«ã§ãã
ãµãŒããŒãšã·ã¹ãã ã®ããŒããŠã§ã¢ãåŠçããåŸãRuby on Railsã«é²ã¿ãŸãã ã©ããããããã
RVMãšã¯é¢ä¿ããããŸããã§ãããæåã¯é·ãéã€ã³ã¹ããŒã«ã§ããŸããã§ããããããã€ãã®gemã«ãã°ããã£ããããããŒã«ã«ãã·ã³ã®ãœãŒã¹ããRuby 1.9.2-p0ãã€ã³ã¹ããŒã«ããŸããã ã ããç§ã¯ããã§ãã£ãã åæã«ãã€ãã«ãUbuntu 10.04ã«Rails3 + Ruby 1.9.2 + MySQLãã€ã³ã¹ããŒã«ããããã«å¿
èŠãªãã¹ãŠãå±±ç©ã¿ã«ãªããŸããã
sudo apt-get install libxml2 libxml2-dev libxslt1-dev gcc g++ build-essential libssl-dev libreadline5-dev zlib1g-dev linux-headers-generic libsqlite3-dev mysql-server libmysqlclient-dev libmysql-ruby
wget ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p0.tar.gz
tar -xvzf ruby-1.9.2-p0.tar.gz
cd ruby-1.9.2-p0/
./configure âprefix=/usr/local/ruby
make && sudo make install
export PATH=$PATH:/usr/local/ruby/bin # .bashrc
sudo ln -s /usr/local/ruby/bin/ruby /usr/local/bin/ruby
sudo ln -s /usr/local/ruby/bin/gem /usr/bin/gem
echo «gem: âno-ri âno-rdoc» > $HOME/.gemrc
sudo gem install tzinfo builder memcache-client rack rack-test erubis mail text-format bundler thor i18n sqlite3-ruby mysql2 rack-mount rails
ruby -v
rails -v
ç§ã¯æ¬ç©ã®æ¬çªãµãŒããŒãæã€ãšããã¢ã€ãã¢ã«è§ŠçºãããApachãNginxãLighttpdããããŠMongrelã¯ã©ã¹ã¿ãŒãSmart Railsã®æ¬ã«æžãããŠããããã«ã€ã³ã¹ããŒã«ããæºåãããŸããã WEBrickã¯ãå®éã«ã¯ãå®éã®å®çšŒåãµãŒããŒã§ã¯åäœããŸããïŒ èŠããå¿
èŠããããŸãã ããããPhusion Passengerã¯ãçµå±ã®ãšãããApacheãªã©ã§æ
è¡ããåãªãä¹å®¢ã§ã¯ãããŸããã ã¹ã¿ã³ãã¢ãã³ã¢ãŒãã§ã¯ãnginxãå«ãŸããŸãã å®éãsudo gem install passengerãç¥ã£ãŠããå¿
èŠããããŸãã 圌èªèº«ãã¢ããªã±ãŒã·ã§ã³ã®å ŽæãèŠã€ããèšå®ãéžæããââã«ã¢ããªã±ãŒã·ã§ã³ãèµ·åããŸãã
ãŠãŒã¶ãŒããã¥ã¢ã«ã¯ãç°¡åã«è§ŠããŠããŸãã ãã ããDTSTTCPWïŒ
çµæã¯äœã§ããïŒ ä»ãç§ã¯åŸã
ã«ã¢ããŸã³ãŠã§ããã§ã€ã¹ã®ãªã³ã¯ããec2-api-toolsã«çªã£èŸŒãã§ããŸãã ããã§ã¯ãååãšããŠãè€éãªãã®ã¯ãããŸãã-ec2-describe / run / start / stop / terminate-instancesãec2-describe / create / delete-volumesãªã© æ瀺ã§ã¯ããã¹ãŠãã€ã³ããªãžã§ã³ãã«èšè¿°ãããŠããŸãã Amazonã®
äŸ¡æ Œèšç®æ©ã¯ãç¡æã®ããã±ãŒãžãæ¯æãããå Žåãæã«çŽ20ãã«ãããããšã瀺ããŠããŸãã ç¬èªã®å°çšãµãŒããŒã«å ããŠã2ããŒã¹ã®ãµãŒããŒããã¡ã€ã¢ãŠã©ãŒã«ãããŒããã©ã³ãµãŒããã®ä»ã®ã°ããºãåããããŒã¿ã»ã³ã¿ãŒå
šäœã§1ãããŒãè©Šãããšãã§ããŸãã æ°åã§ãããªãã¯AMIã®åœ¢ã§å©çšå¯èœãªOSããã¹ãŠäžããŠããããçããŠãããšæããèœåã åãæ°åã§æ°åã®ã³ã¢ãšæ°çŸã®ã¬ãã€ãã®ã¡ã¢ãªãåããã¯ã©ã¹ã¿ãŒãæã¡äžããŠé§åããæ©èœ-1æéããããããæ°ãã«ã èŠããã«ãç§ã¯æºè¶³ããŠããŸãïŒ
updïŒã¹ãããã·ã§ããããAMIãäœæãããšãã«ããã®ãããªäžå
·åããããŸãããã€ã³ã¹ã¿ã³ã¹ã¯èµ·åããŠããããã«èŠããŸããããæ¥ç¶ã¯ãããŸããã§ããã ã·ã¹ãã ãã°ã®æåŸã«ããã®çš®ã®è¡ãããã€ããããŸããã
modprobe: FATAL: Could not load /lib/modules/2.6.16-xenU/modules.dep: No such file
AMIãäœæããå Žåã次ã®ãããªã«ãŒãã«ãæ瀺çã«æå®ããå¿
èŠãããããšãããããŸãã
ec2-register -n image_name -d image_description --root-device-name /dev/sda1 -b /dev/sda1=snap-XXXXXXXX::false --kernel aki-XXXXXXXX
å¿
èŠãªã«ãŒãã«ã€ã¡ãŒãžãèŠã€ããæ¹æ³ ãµãŒããŒã®æ§ç¯ã«åºã¥ããŠãæããã«åäœããŠããå
ã®ãããªãã¯ã€ã³ã¹ã¿ã³ã¹ãå®è¡ããec2-describe-instancesã³ãã³ãã§ã«ãŒãã«ããŒãžã§ã³ã確èªããŸãã