2012.08.01

Amazon EC2のWindows Installメディアの場所

Configuring Windows Components on Amazon EC2
http://aws.amazon.com/articles/1802

見つかりにくいのでメモメモ。

2012.03.19

古いWindows Server 2008のAMIをVPCで利用する時の注意点

Amazonから提供されているWindows Server 2008のv1.02以前のAMIを利用して作成したサーバを
VPC内で利用しようとするとActivationを要求されます。
その対策。

1.VPCで起動したサーバのActivation先の変更
以下の2つのIPアドレスが提供されているらしい。

  • 169.254.169.250
  • 169.254.169.251 (backup)

上記IPを指すように手動で設定を変更。 ※Administratorで実行しよう

Slmgr.vbs /skms 169.254.169.250
Slmgr.vbs /ato

2.Ec2Configの設定変更
Ec2ConfigにActivation先が登録されているようで
今後VPCで起動するAMIはEc2Configの変更が必要。

C:\Program Files\Amazon\Ec2ConfigService\Settings\ActivationSettings.xml

<?xml version=”1.0″ encoding=”utf-8″?>
<ActivationSettingsTable>
    <!– 
        KMS Servers are searched for/activated against based on 
        settings in this file.  Each “methodSettings” section is
        attempted until a KMS server is found and instance is 
        successfully activated.
    –>
    <!– Try autodiscovery first… –>
    <!– NOTE: Autodiscover clears any KMS that is already set! –>
    <MethodSettings>
        <SetAutodiscover>true</SetAutodiscover>
        <TargetKMSServer/>    
        <DiscoverFromZone/>
        <ReadFromUserData>false</ReadFromUserData>
        <LegacySearchZones>false</LegacySearchZones>
        <DoActivate>true</DoActivate>
    </MethodSettings>
    <!– Try the first virtual IP for VPC instances –>
    <MethodSettings>
        <SetAutodiscover>false</SetAutodiscover>
        <TargetKMSServer>169.254.169.250</TargetKMSServer>
        <DiscoverFromZone/>
        <ReadFromUserData>false</ReadFromUserData>
        <LegacySearchZones>false</LegacySearchZones>
        <DoActivate>true</DoActivate>
    </MethodSettings>
    <!– Try the backup IP for VPC instances… –>
    <MethodSettings>
        <SetAutodiscover>false</SetAutodiscover>
        <TargetKMSServer>169.254.169.251</TargetKMSServer>
        <DiscoverFromZone/>
        <ReadFromUserData>false</ReadFromUserData>
        <LegacySearchZones>false</LegacySearchZones>
        <DoActivate>true</DoActivate>
    </MethodSettings>
    <!– 
        Now search the DNS suffix list.
        This should already have been set by the SetDNSSuffix plugin,
        controlled by the setting in the primary config file.
    –>
    <MethodSettings>
        <SetAutodiscover>false</SetAutodiscover>
        <TargetKMSServer/>
        <DiscoverFromZone/>
        <ReadFromUserData>false</ReadFromUserData>
        <LegacySearchZones>true</LegacySearchZones>
        <DoActivate>true</DoActivate>
    </MethodSettings>
    <GlobalSettings>
        <LogResultToConsole>true</LogResultToConsole>
    </GlobalSettings>
</ActivationSettingsTable>

以上です。

参考サイト
Release: Amazon Virtual Private Cloud on 2011-03-27

2011.06.04

Ubuntu 11.04 Firefox 4.0.1 で Elasticfox

ElasticfoxはFirefox4.0までしか入れられないし
Ubuntu11.04の環境のせいなのかバージョン騙してもうまく入らなかったので
その対応メモ。

まずはElasticfoxのソースコードを落とします。

$ svn co https://elasticfox.svn.sourceforge.net/svnroot/elasticfox elasticfox

プロジェクトのホームはここ。
http://sourceforge.net/projects/elasticfox/

次にバージョン制限を外すため
4.0が上限になっているので、適当に5.0とかに変えてあげます。

elasticfox/trunk/src/install.rdf

<em:maxVersion>4.0</em:maxVersion>

<em:maxVersion>5.0</em:maxVersion>

そしてxpiにします。
JAVA_HOME が必要なのでインストールして設定。

$ sudo apt-get install openjdk-6-jdk
$ echo “export JAVA_HOME=/usr/lib/jvm/java-6-openjdk/” >> ~/.profile

そして作成

$ cd elasticfox/trunk
$ ./make.sh

distディレクトリの中にできたxpiをFirefoxにインストールで動きました。

ap-northeast-1も最初から使えるのでgood。

2011.03.07

EC2 Tokyo region の PVGRUB AKIs

カスタマイズkernelを利用するときに必要なAKIで
先日できたばかりの東京リージョン(AP-northeast-1)が
まだ資料に載っていなかったので
その一覧。

aki-d209a2d3 ec2-public-images-ap-northeast-1/pv-grub-hd0-V1.01-i386.gz.manifest.xml
aki-d409a2d5 ec2-public-images-ap-northeast-1/pv-grub-hd0-V1.01-x86_64.gz.manifest.xml
aki-d609a2d7 ec2-public-images-ap-northeast-1/pv-grub-hd00-V1.01-i386.gz.manifest.xml
aki-d809a2d9 ec2-public-images-ap-northeast-1/pv-grub-hd00-V1.01-x86_64.gz.manifest.xml

hd0がS3 Instance用。
hd00がEBS Instance用。

※自分のkernelの利用手順はこちら
Enabling User Provided Kernels in Amazon EC2
http://aws.amazon.com/articles/3967

2009.10.30

Amazon RDS メモ

概要メモ

  • MySQL5.1
  • 普通に全機能使える
  • RDS 用の API ツールで起動、終了
  • 使用料金はEC2インスタンスよりも30%高い
  • ストレージ料金はEBSと同じ
  • ストレージのサイズは5GBから1TBまで
  • 稼働させたままスケールアップ/スケールダウンができる(接続はちょっと切れるみたい)
  • インスタンスクラスは自由に変更可能
  • ストレージ容量を増やす場合は使用中の容量より10%以上を指定する必要があるらしい
  • ストレージ容量の指定は最低でも今と同容量なので減らすことはできない
  • バックアップは自動
  • バックアップ領域はストレージサイズと同容量が無料
  • それ以上は追加料金 $0.15/GB
  • スナップショットも作れる
  • プレミアムサポートの対象

ついでにDBを使うときの選択指針みたいなものが書いてあった。

  • Amazon RDS
    • アプリケーションやツールでRDBが必要な人。
    • MySQL を利用したいが、インフラと DB の管理をしたくない人。
    • 処理性能やストレージ容量を柔軟に拡張して、使った分だけ利用料を払いたい人。
  • Amazon EC2 + DB
    • データベースエンジンを自由に選びたい人。
    • データベースサーバーを完全に管理したい人。
  • Simple DB
    • 複雑な RDB 処理よりも、検索を主に使う人。
    • データ構造管理の負担が嫌な人。
    • 利用者の介入なしで、自動でスケールアップやスケールダウンのサービスが欲しい人。
    • データのバックアップやソフトウェアのメンテナンスでもサービスの停止が許容できず、常に動いている環境が必要な人。

2009.10.29

Amazon RDS を使ってみた

|ω・) <放置しすぎて書きにくいんだよ

Amazon Relational Database Service という RDB サービスが開始されたので使ってみたよ。

1.使います!
RDSのサイトからサインアップして使います宣言をしてください。
http://aws.amazon.com/rds/

2.APIツールのダウンロード
まずはツールのダウンロード。
Amazon RDS Command Line Toolkit
このあたりにあった。
落としたファイルを適当な場所に展開。
うちはこんな場所へ。

C:\AmazonEC2\RDSCli-1.0.001

3.アクセスキーと環境変数の設定
アクセスキーとシークレットキーを指定してあげる必要がある。
展開したディレクトリの中に

credential-file-path.template

こんなファイルがあるはずなので、このファイルにアクセスキーとシークレットキーを指定。

AWSAccessKeyId=<Write your AWS access ID>
AWSSecretKey=<Write your AWS secret key>

templateじゃかわいそうなのでファイル名を適当に変更。

credential-file

次に環境変数の設定。

AWS_RDS_HOME=C:\AmazonEC2\RDSCli-1.0.001
AWS_CREDENTIAL_FILE=%AWS_RDS_HOME%\credential-file

RDSのホームと、さきほどのアクセスキーのファイルパスを指定。

準備完了。

4.起動してみる
コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin > rds-create-db-instance testdb01 -s 10 -c db.m1.small -e MySQL5.1 -u master -p

パラメータの意味はこんな感じ。

  • testdb01って名前
  • ストレージは10GB
  • smallインスタンスで
  • MySQL5.1のエンジン使う(まだ他は選べないよね?
  • ユーザ名はmaster
  • パスワードは入力したやつ

結果

DBINSTANCE testdb01 db.m1.small mysql5.1 10 master creating 1
SECGROUP default active
PARAMGRP default.mysql5.1 in-sync

おおおお、creating されてます!

5.確認してみる
コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-describe-db-instances

結果

DBINSTANCE testdb01 db.m1.small mysql5.1 10 master creating us-east-1d 1
SECGROUP default active
PARAMGRP default.mysql5.1 in-sync

まだ creating 中!
ちょっと急ぎすぎた、おれ。

6.起動完了
再度確認コマンド。結果のヘッダも出力してみた。

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-describe-db-instances –headers

結果

DBINSTANCE DBInstanceId Created Class Engine Storage Master Username Status Endpoint Address
Port AZ Backup Retention
DBINSTANCE testdb01 2009-10-29T03:23:02.312Z db.m1.small mysql5.1 10
master available testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com 3306 us-east-1d 1
SECGROUP Name Status
SECGROUP default active
PARAMGRP Group Name Apply Status
PARAMGRP default.mysql5.1 in-sync

available きたこれ!

testdb01.cvircfsordtw.us-east-1.rds.amazonaws.comってアドレスに
ポート3306でつながるようです。

7.つないでみた
mysql でつないでみた(なぜかこれだけLinux)。

$ mysql -h testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com -P 3306 -u master -p

あれ。。。つながらない。

どうやらセキュリティの設定変更をしなければいけないらしい。

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-authorize-db-security-group-ingress default –cidr-ip 0.0.0.0/0 –headers

これでインターネットのどこからでもつながるぜ!
(ちゃんと使う人はこんなことしちゃいけないんだぞ

再度接続。

$ mysql -h testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com -P 3306 -u master -p

結果

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 34 to server version: 5.1.38-log

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> show databases;
+——————–+
| Database    |
+——————–+
| information_schema |
| innodb      |
| mysql      |
| tmp       |
+——————–+
4 rows in set (0.19 sec)

つながった!
見える!見えるぞ!

8.スケールアップしてみた
スケール変更ってすごくね?
smallからlargeへ変更を試してみた。

コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-modify-db-instance testdb01 -c db.m1.large –apply-immediately

結果

DBINSTANCE testdb01 2009-10-29T03:23:02.312Z db.m1.small mysql5.1 10
master available testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com 330
6 us-east-1d 1 db.m1.large
SECGROUP default active
PARAMGRP default.mysql5.1 in-sync

ん?何も変化がなさそうだぞ。

状態を確認。
コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-describe-db-instances

DBINSTANCE testdb01 2009-10-29T03:23:02.312Z db.m1.small mysql5.1 10
master modifying testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com 330 6 us-east-1d 1 db.m1.large
SECGROUP default active
PARAMGRP default.mysql5.1 in-sync

modifying。
しばし待たれよ。

7分くらい経過後。。。

コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-describe-db-instances

結果

DBINSTANCE testdb01 2009-10-29T03:23:02.312Z db.m1.large mysql5.1 10
master available testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com 330 6 us-east-1d 1
SECGROUP default active
PARAMGRP default.mysql5.1 in-sync

db.m1.large きたこれ!

ところで modifying 中ってどうなってるの?
再度mysqlで確認。

mysql> show databases;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect…
ERROR 2003 (HY000): Can’t connect to MySQL server on ‘testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com’ (111)
ERROR:
Can’t connect to the server

あ、切れた。

mysql> show databases;
No connection. Trying to reconnect…
ERROR 2003 (HY000): Can’t connect to MySQL server on ‘testdb01.cvircfsordtw.us-east-1.rds.amazonaws.com’ (111)
ERROR:
Can’t connect to the server

つながらない。

mysql> show databases;
No connection. Trying to reconnect…
Connection id: 173
Current database: *** NONE ***
mysql> show databases;

+——————–+
| Database    |
+——————–+
| information_schema |
| innodb      |
| mysql      |
| tmp       |
+——————–+
4 rows in set (0.19 sec)

つながった。
ちょっと(数分?)切れるけれど、アドレスの変更なくそのまま再開されるようです。

ちなみにスケールダウンもできました。

9.遊び終わったので終了
コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-delete-db-instance testdb01

結果

Once you begin deleting this database, it will no longer be able to accept
connections.
Are you sure you want to delete this database? [Ny]y
rds-delete-db-instance: Malformed input-FinalDBSnapshotIdentifier is required u
nless SkipFinalSnapshot
is specified.

スナップショットどうするか聞かれた。。。ごめん。
そのまま落とせないなんて親切なやつだな!

スナップショットとらないよオプション付きで実行。

コマンド

C:\AmazonEC2\RDSCli-1.0.001\bin>rds-delete-db-instance testdb01 –skip-final-snapshot

結果

Once you begin deleting this database, it will no longer be able to accept
connections.
Are you sure you want to delete this database? [Ny]y
DBINSTANCE testdb01 2009-10-29T03:23:02.312Z db.m1.small mysql5.1 10
master deleting us-east-1d 1
SECGROUP default active
PARAMGRP default.mysql5.1 in-sync

終了!

とりあえず
起動 -> スケールアップ -> 終了
まで試してみた。

かなり簡単です。
スケールアップもスケールダウンも自由自在です。
バックアップも勝手にしてくれるようです。

ちなみに11月1日からAmazon EC2のインスタンス料金が下がるんですが
下がったインスタンス料金と比較するとRDSは30%高いです。

いいサービスなんだが。。。高いか安いかはまた考えよう。

2009.06.05

Amazon EC2でX Window (VNC)

Amazon EC2のLinuxでX Windowを使うべく設定。

最初はX11 fowardingでなんとかなるんじゃないかと思ったんですが
うまくいかなかったです。。。

そんなわけでVNCに逃げ。

テストにはamazon公式のfedora8(32bit) v1.08を使用しました。

1.インストール
必要パッケージをさくっとインストール。

# yum install vnc-server
# yum groupinstall “X Window System” “GNOME Desktop Environment”

とりあえず一度vncserverを起動させてパスワードと設定ファイル作成。

# vncserver

設定ファイルの修正。
/root/.vnc/xstartup

xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &
twm &

をコメントアウト。

exec gnome-session &

を追加。

vnc serverを一度止めて

# vncserver -kill :1

再起動

# vncserver

これで使えるようになります。

ポート番号の話だったりは適当にその他vncの解説を見てください。

2.トラブル発生と対応
ただこのままだと再起動をしたりAMIに保存して起動させようとすると
カーネルパニックが起きました。

Kernel panic – not syncing: Attempted to kill init!

ログを読んでみると原因はSELinuxの様子。

デフォルトではSELinuxは無効になっているんですが
“X Window System”をインストール時にSELinuxのポリシーがインストールされて有効になります。
このロードに失敗して起動中止しているみたいです。

そんなわけでSELinuxを無効化。
/etc/selinux/config

SELINUX=enforcing

SELINUX=disabled

に変更。

これで再起動可能になりました。

2009.05.12

インスタンスのメタデータ

Amazon EC2で起動したインスタンスが自身の情報を取得するために
メタデータが利用できるようだ。

ami-id
ami-launch-index
ami-manifest-path
block-device-mapping/
hostname
instance-id
instance-type
local-hostname
local-ipv4
placement/
public-hostname
public-ipv4
public-keys/
reservation-id
security-groups

この辺の情報が169.254.169.254に対してHTTPのGETで取得できる。

使うにはこんな感じ。

# echo `curl -s http://169.254.169.254/latest/meta-data/public-ipv4`

起動時のAMIをいじるには必要な情報ネ。。。

AWSデベロッパーガイド:
Amazon Web Service – Instance Metadata

2009.04.23

UbuntuにEucalyptusが載ってRightScaleが使いやすくした

本日正式リリース予定のUbuntu9.04。
これにはAmazon EC2クローンであるEucalyptusが入るんですが
これにあわせてAmazon Web Service関連ベンチャーの大手
RightScaleがEucalyptusの対応を先日発表していました。

[RightScale + Ubuntu + Eucalyptus = cloud in a box]
http://blog.rightscale.com/2009/04/20/rightscale-ubuntu-eucalyptus-cloud-in-a-box/

RightScale自体はAmazon EC2などのサービスの
管理コンソールをメインにオートスケーリングやロードバランサーなど付随サービスを提供してたりします。

で、今回は
自分でマシンかき集めてEucalyptusでIaaS環境を作って
それをRightScaleに登録することで
RightScaleの管理コンソールを使って
自分のクラウドを人に使わせることができるようです。

プライベートクラウドが構築しやすくなりそうですねぇ。

Amazon EC2でIBM

2009年4月22日付でアナウンスされてました。

「Amazon EC2 Running IBM Now Available」

IBMがサポートを表明していた製品がAMIで提供されたようです。
価格は前情報にあった通り、上乗せの従量課金みたいですね。

以下、提供製品

  • DB2
  • Informix Dynamic Server
  • WebSphere sMash
  • Lotus Web Content Management

これでOracleに続き
IBMの製品も中の設定ファイルをどういじればいいか調べることができますね!

http://aws.amazon.com/ibm/

Next »