クラウドインフラ構築記

現在AWSの構築支援に携わっております。今注視しているのは、GKE、BigQuery、Google Dataflowなどサービスを展開しているGoolge Cloud Platformです。

2013年12月3日
から hiruta
0件のコメント

Amazonの人によるre:Invent出張報告会に参加しました。

Amazonの人によるre:Invent出張報告会に参加しました。

場所:AWS目黒オフィス 16F

時間: 19:00 – 21:00

セミナーの内容、新サービスの概要を公開します。(まだ不足している内容がありますが、随時更新します。)

CloudTrail

AWSアカウントへの操作をロギングするサービス

管理コンソールではとれなかった。

管理コンソールを使っていても、S3パケットを確認する場合でも List CALLをバックグランドで行っている。
だから、S3パケットが飛ぶので、多少転送料で課金されている。微々たるものですが。
上記の場合も、Cloud Tailsで把握することが可能。

出力先はS3(ユニークなファイル名を自動的につけられる) SNS(メール)

現在ログ出力に対応しているのは以下サービス
EC2/EBS/VPC/RDS/IAM/STS ※まだまだ発展途上のサービスので、他のサービスのログにも順次対応される。S3については、すでにログを取れるようになっている。形式は違いますが。

SNSを使わないほうがいいとのこと。多量のメールが届くし、SNSの内容だけでは詳細はわからない。
(S3のファイル名が送られてくるだけ)

Cloud Tailsのログ形式は、「JSON」。そのままみるものではない。

CloudTails Partner で肩代わり

sumologic http://www.sumologic.com/
※500MBまでの処理は無料で使用できます。

Stackdriver  http://www.stackdriver.com/

※計10リソースまでは無料で使用できる。

Amazon Workspaces

エンドユーザコンピューティングが変化

ワークスタイル(働き方)の変化

iPad, など多種多様のモバイルデバイスが使われている
BYOD(ライセンス持ち込み)
ユーザ数が時期により変わる
といろいろな要求ももとめられている現状、VDIが必要になっている。

VDIをオンプレで実現する方法は、あるが。
現状インフラの投資もかなりになる
実現するまで一年くらいかかる

と問題がある。

そこで、Amazon workspace
多様なデバイス(iPad/Kindle Fire HD/PCなど)に対応
業務アプリが使える
管理者に負荷をかけない
画面転送のプロトコル PCoIPプロトコル 細い帯域でも動くようにチューニング

同じ回線から同時にアクセスした場合どの程度まで耐えられるかは不明。

ADで認証 ※preview limit版では未対応
各種アプリケーション(Office/Firefox/AcrobatReader/アンチウィルスソフト)に対応しています。
自動的にスナップショットでS3にバックアップされる。

preview limitへの申請(request)が殺到しているようで、順次使用できるようになっているとのこと。なお、来年にはパブリックベータが公開されるとのこと

Amazon Workspacesの料金については、未確定な部分がありますが、月途中でユーザを追加した場合も、なんらかで課金される回答がありました。課金されるタイミングは未定。(日割りになるかは詳細は決まっていない模様)

Amazon Kinesis

現在流れているデータの処理を行えるのが、Amazon Kinesis。
e.x. twiiterのタイムライン、アクセスログなど

アプリケーションへの組み込みが必要。出張報告会では、twitterのサンプルfeedを処理して文字のカウントを延々に表示させるデモがされていました。

Stream を作って、Shard で 流れてきたデータへの処理を行う。Shardの数は管理コンソールから設定可能。

スループット等も自動計算されて管理コンソールで確認可能。

メトリックやオンライン広告KPIのリアルタイムな生成に使えるのでは。

ECサイト等で他の利用者がリアルタイムで見ている商品等の表示(recommend)「拡販ツール」、ユーザの行動分析すを必要とするスマホアプリに利用できるのではと思われます。

C3 EC2 Instance

  •  C3 + Enhanced Network使って初めて、C3のパフォーマンスを最大限に出すことができる。
    • m1.mediumとc3.largeの値段がほぼ同じなので、c3.largeがお勧め。

現在供給が重要に追いついていないようで、場合によってはインスタンスをLaunchすることができない場合がある模様。サーバー増設を行っているので、しばしお待ちくださいとのこと。

  •  I2 ※現在はまだ公開されていない

SSD搭載 I/O性能最適化インスタンス
Xeon E5-2670v2 N/W改善
高速なIOPSを使う用途に適している。

  •   G2

NVIDIA GRID
Sandy Bridge 5GiB 60GiB SSD
現在、USリージョンとEUリージョンのみなので、レイテンシの関係上、DaaSとしては期待した処理が行えないかもしれない。工夫が必要。東京リージョンにくれば、この辺のことは解決すると思われます。

RDS PostgreSQL

他のRDBと同様、基本的な機能は対応しているとのこと。バージョンは、9.3。ただし、リードレプリカは現在未対応

Amazon AppStream

リソースを大量に使うアプリケーションのストリーミング

EC2でアプリケーションを実行し、ストリーミングをデバイスに配信する

通信プロトコルは、Amazon独自のAmazon STXプロトコル(STreaming eXperience)を使用している。
H.264 形式で、UDPで送信しているとのこと。

2013年12月1日
から hiruta
0件のコメント

11/30 JAWS-UG千葉の勉強会

11/30 JAWS-UG千葉の勉強会に参加しました。勉強会の一部を記載します。

cloudfrontのキャッシングについて

11/30のJAWS-UG千葉 勉強会でcloudfrontのキャッシュを更新をapiでしている話があったのですが、ネット上で調べてみました。

CloudBuddy Personalのツールでキャッシュを無効にすることもできます。デフォルトでは1時間からしか設定できない。

CloudFrontのInvalidation機能
http://blog.flect.co.jp/cto/2010/09/cloudfront-00d5.html


Amazon Silk

Kindle Fireには、Amazon Silkというブラウザが搭載されていますが、重たいレンダリング処理等をクラウド(AWS)で処理させて、処理した結果を配信することで、端末スペックを抑えつつ、高品質なコンテンツが見れる仕組みを取っているとのこと

上記に相当するものが最近発表されたAppStreamで構築できると思われます。
AppStreamの場合、モバイル端末に合わせて、適切なコンテンツ配信の仕組みが作れると思います。

AWSは、laaS +PaaSレイヤのクラウド事業者に

AWSには、AppStream以外にもJointして使えるサービスが数多くある(Storage gateway etc)ので、これらを利用してシステムを構築することで、納期、構築費用等を抑えてユーザ企業に提供が可能になると思います。

また、11/30 JAWS-UG千葉の勉強会で紹介されていた書籍を載せておきます。

クラウド化する世界

イノベーションのジレンマ―技術革新が巨大企業を滅ぼすとき

2013年11月24日
から hiruta
0件のコメント

Engine Yard試用レポート

12月9日のEngine Yard Cloud入門編セミナーに参加する下準備として、Engine Yard トライアルアカウントで試してみました。

ここ に記載してある通りに、サンプルアプリケーション(Todo Application )をデプロイすることができます。デプロイするまで、かなり掛かります。github.comからインポート(デプロイ)することも可能です。

Engine Yard Cloud - Environment todo_production of application trial

Engine Yard自体、AWSのインフラ基盤を使用していることは、デプロイする画面をみれば一目瞭然。

デプロイする画面に、Applcation Instanceとして、High CPU Medium (64 bit)と書かれています。

インスタンスタイプといて、c1.mediumてことか。リージョンは、USリージョンを使用しています。Custom ConfigurationでProvisioned IOPSとか、変更はできるようだが、リージョンについては指定できなそう。

Engine Yard Cloud - Usage Graphs

うまく起動できれば、下記のように画面が表示されると思います。

Getting Things Done with Engine Yard Cloud

アプリケーションを再起動しても、内容は保存されています。

Application用のインスタンスにもSSH接続が可能です。sshの秘密鍵のファイル名がid_rsaだと、Permission diedとなり、接続に失敗しました。

id_engineyardをファイル名としました。

Engine yardのダッシュボードからssh公開鍵を登録。

コンフィグを変更するなどすると、Applyしないと反映されない場合があります。ApplyしてSSH接続できるようになりました。

2013年11月17日
から hiruta
2013年冬モデル CF-SX3YEABRを購入しました。 はコメントを受け付けていません

2013年冬モデル CF-SX3YEABRを購入しました。

使用していたCF-W5の液晶が一部欠損したなど、カスタマイズ(HDD→SSD)を行ってきましたが、2013年冬モデルであるCF-SX3YEABR(Corei5-4200U+HDDモデル)をソフマップ秋葉本店にて、昨日購入しました。

プリインストール時は、Windows 8 Proでしたので、ストアよりWindows 8.1 Proにアップデート

※Windows 8.1 Proアップデートの過程で、Microsoft アカウントに切替ないと先に進めなかった。(画面だとセットアップCDで行う方法もあるが、こちらがMicrosoftアカウント切替なしでいくかは不明)Microsoftアカウントは後でローカルアカウントに戻すことも可能。

ストアからアプリをインストールする場合、Microsoftアカウントは必要です。ローカルアカウントからネットワークアカウントに切替を推奨していますが、ローカルアカウントのままでも大丈夫です。

Windows 8.1にすることで、左下Windowsアイコン(?)を右クリックすることで、プルダウンからシャットダウンできるようになっています。

CF-W5と同様、バッテリをフルにしないで、80%で抑えてバッテリ寿命を長くするECOモードに対応しています。

Windows 8だとインストールしているアプリケーション一覧は、スタートパネル画面の左下の方にある下矢印で表示されます。

2013年11月2日
から hiruta
0件のコメント

SSD 4Gプランへの切替を行いました。

SSD 4Gプランを追加契約を行い、nginx、postfix、growthforecast等の設定を行い、先ほどSSD 4GのサーバーへのDNS振替(Route53)を実施致しました。

なお、本記事が閲覧できる場合は、新サーバーを参照できております。

新機能(SSDによるパフォーマンス確認、IPv6、ローカル接続)についても随時検証をしていきたいと考えております。

2Gから4Gにメモリ増えたのも要因かもしれませんが、SSDプランの方が体感的に速いような。

bonnie++ -d /tmp/ -n 256:4096:512:16 -s 2048 -r 1024でのDisk IOの結果。

元サーバー さくらのVPS 2G(v3) 

Version 1.96 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
www3098uf.sakura 2G 608 99 190242 94 93940 23 3408 92 409826 32 4841 65
Latency 16680us 447ms 232ms 53524us 31293us 71657us
Version 1.96 ------Sequential Create------ --------Random Create--------
www3098uf.sakura.ne -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
 256:4096:512/16 26553 88 110301 97 43831 95 31650 90 46157 60 21811 67
Latency 386ms 15156us 116ms 52726us 237ms 179ms

さくらのVPS (v3) SSD 4G


Version 1.96 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
ns.xxxxxxxxxxxx 2G 677 99 818825 99 616886 84 4800 99 1665045 99 +++++ +++
Latency 17014us 1054us 79376us 2527us 90us 7077us
Version 1.96 ------Sequential Create------ --------Random Create--------
ns.totalsolution.bi -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
 256:4096:512/16 39736 84 128410 98 53087 95 38316 83 63253 57 24045 59
Latency 85345us 3742us 117ms 83003us 109ms 153ms

VPSの場合、ファイアウォールで仮想マシンで行うようになるので、パケット自体は仮想マシンまで流れてきてしまいます。
その反面、AWSのセキュリティグループは、仮想マシンの上位でブロックしてくれるので、仮想マシンへの負荷はその分下がられると思われます。

2013年10月23日
から hiruta
契約中のドメインに関して、Route53に切り替えました。 はコメントを受け付けていません

契約中のドメインに関して、Route53に切り替えました。

今まで、さくらのVPSでDNSサービスを立ち上げていましたが、BIND9サービスの脆弱性が頻繁に発見されていることから、VPSのセキュリティリストを最小限にするので、AWSのRoute53に本日切り替えました。

IPv6用のAAAAレコードにも対応していますし、Route53の運用コストがかなり安価(ネット上の情報だと1$を超えることはほぼない)

さくらのVPS側のDNSサービスについては、インバウンド(IN BOUND)ポートの遮断し、ローカルのDNSキャッシュサーバーとして利用するようになります。

 

2013年10月19日
から hiruta
AWSを操作できるコマンドラインツール はコメントを受け付けていません

AWSを操作できるコマンドラインツール

Amazon EC2 API tools ( 以降ec2-tools)というものがありますが、新しいコマンドラインツールawscliも使えます。ec2-toolsとは微妙にアクセスキーとかの環境変数名が異なりますので、注意が必要です。

Linuxの場合、python(2.6が必要)がインストールされていることが第一条件。

契約中のさくらのVPS 2Gにインストールしてみました。

まず、setuptoolsのインストール。

wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python

次に、pipのインストール

easy_install pip

目的であるawscliのインストール

pip install awscli

使う前に、.aws/configに、アクセスキー、シークレットキー、指定リージョンとか記載する必要があります。環境変数にすることも可能です。awscliはprofile切替ができるので、複数AWSアカウントを管理する場合も簡単にAWSにアクセスできると思われます。


[default]

aws_access_key_id = XXXXXXXXXXXXXXXXXXXXXXXXX

aws_secret_access_key = YYYYYYYYYYYYYYYYYYYY

region = ap-northeast-1

以下コマンドで、EC2に登録されているインスタンスなどが帰ってくれば成功です。結果はJSONフォーマットで返されます。

aws ec2 describe-instances

2013年10月10日
から hiruta
AWSリージョン v.s. さくらのVPSのレイテンシ比較 はコメントを受け付けていません

AWSリージョン v.s. さくらのVPSのレイテンシ比較

Cloud Days Tokyo 2013に昨日行ってきました。

AWS,nifty クラウド,biglobe クラウドなどのブースを主に回りました。nifty クラウドのブースで、「nifty クラウドのネットワークがAWSより上」という話がありましたので、PINGのレイテンシを実際比較してみました。niftyクラウドの契約がありませんので、さくらのVPS、AWS各リージョンの比較になります。

下記条件のもと、利用しているプロバイダー(OCN)からAmazon Web Serviceのレイテンシを計測してみました。

インスタンスタイプ t1.micro
AMI Amazon Linux AMI 2013.09 64bit

結果、さくらのVPS(大阪リージョン)とAWS東京リージョンはほぼ同程度のレイテンシの結果になりました。

まずは、東京リージョン

ping ec2-54-250-xxx-xxx.ap-northeast-1.compute.amazonaws.com
ec2-54-250-xxx-xxx.ap-northeast-1.compute.amazonaws.com [54.250.xxx.xxx]に ping を送
信しています 32 バイトのデータ:
54.250.xxx.xxx からの応答: バイト数 =32 時間 =20ms TTL=46
54.250.xxx.xxx からの応答: バイト数 =32 時間 =23ms TTL=46
54.250.xxx.xxx からの応答: バイト数 =32 時間 =21ms TTL=46
54.250.xxx.xxx からの応答: バイト数 =32 時間 =19ms TTL=46

次に、シンガポールリージョン

ping ec2-54-254-xxx-xxx.ap-southeast-1.compute.amazonaws.com

ec2-54-254-xxx-xxx.ap-southeast-1.compute.amazonaws.com [54.254.xxx.xxx]に ping を送
信しています 32 バイトのデータ:
54.254.xxx.xxx からの応答: バイト数 =32 時間 =95ms TTL=47
54.254.xxx.xxx からの応答: バイト数 =32 時間 =94ms TTL=47
54.254.xxx.xxx からの応答: バイト数 =32 時間 =94ms TTL=47

米国(California)

ping ec2-54-215-xxx-xxx.us-west-1.compute.amazonaws.com

ec2-54-215-xxx-xxx.us-west-1.compute.amazonaws.com [54.215.xxx.xxx]に ping を送信し
ています 32 バイトのデータ:
54.215.xxx.xxx からの応答: バイト数 =32 時間 =118ms TTL=50
54.215.xxx.xxx からの応答: バイト数 =32 時間 =106ms TTL=50
54.215.xxx.xxx からの応答: バイト数 =32 時間 =106ms TTL=50
54.215.xxx.xxx からの応答: バイト数 =32 時間 =109ms TTL=50

さくらのVPS(大阪リージョン)

ping www.xxxxx.biz

www.xxxxx.biz [219.94.xxx.xxxx]に ping を送信しています 32 バイトのデータ
:
219.94.xxx.xxxx からの応答: バイト数 =32 時間 =18ms TTL=50
219.94.xxx.xxxx からの応答: バイト数 =32 時間 =17ms TTL=50
219.94.xxx.xxxx からの応答: バイト数 =32 時間 =19ms TTL=50
219.94.xxx.xxxx からの応答: バイト数 =32 時間 =16ms TTL=50

niftyクラウドは、国内のみしかリージョンがないので、海外展開拠点に合わせてサーバーを準備する必要がある場合においては、AWSに優位になるかと思います。BCPの観点から、国内をプライマリ、海外をバックアップという使い方も、AWSでは実現が可能です。

なお、niftyクラウド、biglobeクラウドはAWSとは異なるクラウドプラットフォーム(vmware)を利用しています。

2013年10月7日
から hiruta
私事ですが はコメントを受け付けていません

私事ですが

最近2年間は、専用サーバーの構築、運用保守、仮想専用サーバー(VPS)の構築、運用保守、クラウド(さくらのクラウド、S3互換を歌っているNTT CommunicationsのCloudn)の構築、クラウドAPIでのサーバー、ストレージへの操作などを行ってきました。

イベント期間だけサイトトラフィックが増加するサイト、スマホアプリのバックエンドサーバーなどサイト開設時トラフィックが読めないサイト、動画配信を行うサイトなど、専用サーバーで構築すると、コストが掛かってしまいます。

このことから、クラウドサーバーの需要はさらに高まると予想されます。

クラウドスペシャリストとして、さらに高めて行きたいことから、クラウド(Amazon Web Service)を構築するインフラエンジニアとして転職することになりました。

2013年9月28日
から hiruta
ログを解析できるsplunk はコメントを受け付けていません

ログを解析できるsplunk

linuxのログはnginxのアクセスログからsyslog、clamavのログ、mysqlのログと膨大になっている。Splunkは大量のログファイルから特定のメッセージを見つけることが可能。

以下からバイナリパッケージをダウンロードします。さくらのVPSだと、Linux 2.6 64bit用のバイナリを使用します。(splunk-5.0.5-179365-linux-2.6-x86_64.rpm)

http://ja.splunk.com/download

ダウンロードを行うには、ユーザ登録が必要。(ユーザ登録画面のタブ順番がちょっと変。First Name → Email Address →と項目が移ります。)

パッケージのインストール

rpm -ivh splunk-5.0.5-179365-linux-2.6-x86_64.rpm

splunkの起動

/opt/splunk/bin/splunk start

/var/logをインデックス対象に追加。usernameとPasswordは、SplunkのWEBフロントエンドの認証情報を入れます。


/opt/splunk/bin/splunk add tail /var/log
Splunk username: admin
Password:
Added monitor of '/var/log'.

splunkのWEBポートがわからない場合は、以下コンフィグに記載されています。

vi /opt/splunk/etc/system/default/web.conf

以下のように表示されるようになります。
サーチ   Search   Splunk 5.0.5