aws memo

AWS関連の備忘録 (※本ブログの内容は個人的見解であり、所属組織及び企業の意見を代弁するものではありません。1年以上古いエントリは疑ってかかってください)

EC2

AWS MarketplaceでのICEL (Intel Cloud Edition for Lustre* ) メモ

Intelが提供している分散並列ファイルシステム ICELは、AWS MarketplaceからCloudformationで簡単に起動し利用することができます。 Intel Cloud Edition for Lustre on Amazon Web Services - HPDD Community Space - HPDD Community Wiki 今まで(Software…

CentOS6.7 AMI公開

RHEL6.7, CentOS6.7がリリースされた。 Red Hat Enterprise Linux 6.7 Release Notes Manuals/ReleaseNotes/CentOS6.7/Japanese - CentOS Wiki CentOSはVM Import で持ち込んだAMIを公開(利用は自己責任で) AMI Tokyo Oregon Virginia CentOS6.7HVM ami-b644…

Spot Fleetで複数AZ指定ができるようになった

ので、メモ。 Spot fleet launches Spot instances in the lowest priced Availability Zone 本日(2015年7月24日)からSpotフリートの機能にて、spot fleet launch specificationで指定した複数のVPCサブネットもしくはAZの中で最も安いAZにSpotインスタンス…

連続するIPアドレスで複数台のインスタンスを起動する〜追加EBSも添えて〜

EC2

172.16.11.101〜 17216.11.120 まで、連続したIPアドレス群でインスタンス起動したいとうような事があります(hostsファイル必要なアレとか)。一緒にEBSをががっと付けたい時もあります。CLIでやった時のメモ。 まずはEBS構成。Block Device Mappingを指定し…

RHEL6.7 AMIがデフォルトでSR-IOV対応した

RHEL6.7 AMIが公開されました。 RHEL6.7のリリースノートはこちら↓ 6.7 リリースノートaccess.redhat.com Amazon Linuxと同じようにSR-IOVがデフォルトでOnとなっていて、 SR-IOV対応インスタンスタイプ(C4/C3/D2/I2/M4/R3)だと、何も気にせずに拡張ネットワ…

RHEL6 AMIでブート領域を拡張する

背景 RHEL6系のAMIからEC2を起動する際にブート用EBSのサイズを大きくしても、OSからは認識されない。(Amazon Linuxは起動時に自動的にサイズを合わせてくれる) 考察 パーティションがGPTになっている。かつ、起動時に対応してくれるようなスクリプトがAMIに…

C4.8xlarge対応 HVM AMI ( SR-IOVも対応)

2015/8/15 CentOS6.7, RHEL6.7が出ているので、こちらのAMIは公開を取りやめます。 ーーー C4.8xlargeでも起動するRHEL6.6とCentOS6.6を公開。 (もちろん、それ以外のHVM対応インスタンスタイプでも起動する。) 簡単な内容 (作成方法は別エントリ) カーネル …

VM ImportしたCentOS6.5のAMIを作る前の手順

VM Importで持ってきたCentOS5.6のインスタンスからそのままAMIを作成してもよいが、いくつかEC2ぽくない部分があるので、AMI作成前にこれらを施す。 key pairのpublickeyデプロイスクリプトを仕込む rootパスワードを起動時にランダム生成・セットするスク…

LVMなEBSを別インスタンスにアタッチして中身を見る

EC2インスタンスで、grubをいじったり、ドライバをいじったりしてrebootするとうまくいかない場合は、一旦インスタンスをstopし、/dev/sda1 にアタッチされているEBSをでタッチし、別インスタンスの/dev/sdf などにアタッチして、dmesgなどを確認することが…

CentOS6.5 HVM インスタンスを SR-IOV化する

2016.01.25 dkmsが抜けている手順のためカーネルアップデート後に正常に起動しないはずです。実際にはdkms化も加えてください。(参照) 2016.01.25 CentOS6.7, RHEL6.7はカーネルにSR-IOVドライバが入っていますのでわざわざ6.5でこのような面倒なことは避け…

SR-IOV対応版CentOS6.5 HVM AMI 作成手順

SR-IOV対応版CentOS 5.6 HVM AMI を作ったので、その流れをメモ。 概要 VM Import/Export でHVM なインスタンスを作り、設定を行ってAMIを作るイメージ。 手順 オンプレミスで 仮想マシンとしてCentOS5.6をセットアップする VMImport の機能で仮想マシンを E…

CentOS6.5 HVM AMI (SR-IOV対応)

作ったので公開。 2015/1/14追記: C4対応のCentOS6.6を公開したので、そちらを使ってください C4.8xlarge対応 HVM AMI ( SR-IOVも対応) - aws memo ---- 簡単な内容 (作成方法は別エントリ) CentOS-6.5-x86_64-minimal.iso ベース( 2.6.32-431.11.2.el6.x86_…

DynamoDBやSQSといったAPIを高頻度に使うときに忘れずにセットしておきたいカーネルパラメータ

EC2

DynamoDB, SQSなどは、Linux内部から高頻度に HTTP APIを叩きに行くことになる。( Fluentdやら、memcachedやらも同じかも) 通常のLinuxのカーネルパラメータ設定で、本番環境や、負荷テスト環境に使うと、おそらくネットワーク障害のような状況に陥るはず。 …

Spotインスタンスで Private IPを指定して起動する

VPC内でspot requestする際、Management Consoleでは Private IP を指定する項目が無いため、指定したサブネット内の空きアドレスが自動で振られることになる。(正確には、サブネット内の空きアドレスの一つからENIが作られ割り振られる) コマンドラインで…

カスタムのRHEL 6.4 HVM AMIを作る時の注意点

C3で、RHEL 6.4 HVM AMIにSR-IOVドライバを入れる手順はこちら [HPC] C3.8xlarge のRHEL6.4 HVMで SR-IOVを有効にする - aws memo で、ドライバが入った状態のカスタムAMIを作っておきたいと思うのが人情。 この時、create image する前に2つ注意点。(2013年…

AWS CLIでEC2を起動 (エフェメラルディスク付き)

AWS CLIで、 run-instances を実行する リファレンスはこちら: run-instances — AWS CLI 1.1.2 documentation RunInstances - Amazon Elastic Compute Cloud ポイントは、--block-device-mappings オプションの JSON記述。 $ aws ec2 run-instances \ --reg…

EBS: Provisioned IOPSの性能・ベンチマーク

そのものずばりのページが、EC2のドキュメントにあるので、メモ。 Increasing EBS Performance - Amazon Elastic Compute Cloud 性能を出すには RAID0かRAID1+0 (RAID10) でストライピング 平均キューレングスをチェック EBSボリューム利用前にプリロード(※)…

RDS: Provisioned IOPS (PIOPS)の性能について覚書き

EBSでのProvisioned IOPS (以下 PIOPS) が出て、しばらくして RDSでも PIOPSに対応した。その後、RDSのIOPS上限が10,000から30,000に引き上げられた。 Amazon Web Services ブログ: 【AWS発表】Amazon RDS がスケールアップ! 3 TB、30,000 PIOPSまで拡張可能…

EC2: RDS: Amazon LinuxでRDSのCLIを使う

Amazon Linuxにはデフォルトで各種CLIツールがインストールされている。 また、インスタンス起動時にIAM Roleを設定していれば、EC2などのAIM Roleに対応しているCLIツールは認証設定をせずに実行可能になる。 RDS CLIはIAM Role未対応なので、以下の様な手…

EC2: GlusterFS in AWS

GlusterFS on AWSといえば、 #ヤマン のスライドですね。(後述) こちらの記事では、実際の設定手順等が書かれてある。 GlusterFS in AWS | Celingest Blog – Feel the Cloud ---以下、拾い訳-- 事前の考慮点 アベイラビリティゾーン(AZ)を跨いだ2台のサーバ…

EC2: Amazon LinuxにWordPressを急ぎで入れる (その3)

Amazon Linux + RDS (MySQL)でWordPress環境をつくる手順のコピペメモ。 事前にRDS(MySQL)をDBユーザ wpuser、DBパスワード wppassword、DB名wordpressで作成して、エンドポイント(ホスト名)を控えておく。 # install package and start sudo yum -y update …

EC2: Amazon LinuxにWordPressを急ぎで入れる (その2)

Amazon Linuxにデータ用のEBSを追加で /dev/sdf にアタッチしているだけの状態からWordPressを急ぎで入れる手順のコピペ用メモ # install package sudo yum -y update sudo yum -y install httpd mysql-server php php-mysql php-mbstring sudo /sbin/chkcon…

EC2: Amazon LinuxにWordPressを急ぎで入れる (その1)

とりいそぎでWordPressを入れる手順のコピペ用メモ。 # install package and start sudo yum -y update sudo yum -y install httpd mysql-server php php-mysql php-mbstring sudo /sbin/chkconfig mysqld on sudo /sbin/chkconfig httpd on sudo /etc/init.…

カジュアルに鯖を監視するNewRelic をAmazon Linux に導入

今っぽい感じのSaaS型監視サービス NewRelicを Amazon Linuxに入れてみる。( Newvem とか Server DensityとかPingdomとかもある) New Relic は、エージェントを監視対象ノードに入れておく点は Zabbix等と変わらないが、監視サーバを構築しないですぐに(無…

メモ: PinterestとInstagramのAWS利用状況

PinterestもInstagramも成長スピードがものすごい。 Pinterest AWS SUMMIT NY 2012 のKeyNote中にあったPinterestのパートが記事になっている Pinterest growth driven by Amazon cloud scalability - Techworld.com High Scalability - High Scalability - …

訳:どのようにしてVimeoはEC2の費用を50%削減したか

これは面白い記事。 High Scalability - High Scalability - How Vimeo Saves 50% on EC2 by Playing a Smarter Game == ビデオトランスコーディング処理用のEC2インスタンス費用を、スポットインスタンス、オンデマンドインスタンス、リザーブドインスタ…

EC2: スケジュールイベントでリタイア通知

EC2インスタンスを使っていると、稀に、EC2インスタンスを動かしている物理マシンのメンテンナンスが必要になる場合に遭遇する。メンテナンスイベントには何種類かあり、Instance reboot、System reboot、 Instance retirement などがある。詳しくはマニュア…

EC2: CC2用Scientific Linux6.2のAMIを作成する

cc1, cc2, cg1 といったクラスタコンピュートインスタンス( Culster Compute) 用のLinux AMIは、その他のインスタンスタイプ用の準仮想化(Para-Virtualization, PV) AMIではなく、完全仮想化(HVM) AMIとなっており、そのままでは使えない。 フォーラムにCent…

Amazon Linux用の Zabbix RPMを作る

Amazon Linuxで Zabbix 2.0系を動かすには、現状はソースからコンパイルが必要。@kodai74 さんが公開している RHEL/CentOS用RPMだと、libmysqlclient.soの依存関係で怒られる(Amazon Linuxだと新しすぎるorz)。 てことで、RPMを自前で作っておいて、ばら撒…

Amazon Linux でApacheのログを Fluentd経由でMongoDBに集約する

10genからこんな記事が The 10gen Blog on MongoDB and NoSQL, Fluentd + MongoDB: The Easiest Way to Log Your Data Effectively. === ということで、Amazon Linuxでの環境構築メモ まずは、httpd+Fluentdを入れるインスタンス (web)と、MongoDBを入れるイ…

EC2: User Dataを使ってインスタンス起動時の処理を自動化する

インスタンス起動時に目にするUser Dataって何?って感じなので取り敢えず。 #!/bin/bash -ex yum -y install httpd php php-pear php-xml yum -y install git /etc/init.d/httpd start pear channel-discover pear.amazonwebservices.com pear install aws/…

MongoDB: foursquareは EC2上で MongoDBが動いている

という、スライド。 単一リージョン、単一アベイラビリティゾーン(AZ)に、7つのShardクラスタ(最大で14shard)と3つの非Shardクラスタ。各シャードは3か4のReplica Sets。 m2.4xlarge(68GBメモリ)に、EBS4本でRAID0。データはほぼオンメモリで保持。 iosta…

訳:Netflixが 6.29のAWSと嵐から学んだこと

2012年6月は、立て続けにUS EASTリージョンでダウンタイムが発生している。 NetflixのようにマルチAZの構成にして、常に擬似的に障害を発生させる仕組み( Chaos Monkey)を導入していても、ダウンする場合があることが明らかになった。さらなる可用性向上のた…

訳: AWSで高可用性を実現するベストプラクティス

AWS Cloud Best Practice: Introduction to High Availability Deployment | Newvem AWSのアーキテクチャセンターにも図があるが、解説が少ないので、このシナリオ・ステップは参考になるだろう。 しかし、インフラがRoute53でリージョン間冗長性を考えるグ…

MongoDB: AWSでのTips

MongoDB Casual Talks で発表された、MongoDB onAWSの資料。 元ネタは、MongoDB on AWS White Paper (PDF) MongoDB on EC2 #mongodbcasual View more PowerPoint from Yasuhiro Matsuo 議事メモブログエントリ Mongo DB Casual Talksに参加してきました - Te…

訳:クラウドのアプリケーションデザインパターン

P.15からの、MTTRとMTTFを、従来のITとクラウドで比較検証するあたりがいい。 従来のITは、MTTFを長くすることに注力していたが、クラウドでは、MTTRを短くすることに注力できる。MTTFとMTTRがそれぞれ長い・短いでどうなるかを検証する。 P.17-P20 従来のIT…

AWS : Reserved Instanceの購入と支払い

Reserved Instanceは、最初に予約金( upfront )を支払うことで、キャパシティを確保(予約)して必ずインスタンスを起動することができる。また、副次的に従量課金の単価が安くなる。 upfrontの請求タイミングは購入時点となるので、通常の課金が月末締めで請…

EC2: AMazon Linux にFluentdをインストール

Fluentdは、Ruby1.9で動作するが、Amazon Linux 2012.03にプリインストールされているRubyは ruby 1.8.7 (2011-12-28 patchlevel 357) [x86_64-linux] となっている。ので、そのまま sudo gem install fluentd ではインストール出来ないので、事前にRuby1.9…

EC2: EC2 API Tools を Amazon Linuxにインストール

Amazon EC2 API ToolsをAmazon Linuxにインストールする。 念のためインストール要件の確認 $ java -version $ echo $JAVA_HOME まずは、X.509 認証キーを作って、CERTファイルとプライベートキーファイルを取得しておく。(プライベートキーファイルは紛失…

EC2: AWSからメールがくるケース

通常は関係ないが、稀にAWSから通知メールが来るケースがある(しかも英語) よくあるメールの件名とその内容、および対策をメモ。 Amazon EC2 Maintenance - Network Connectivity Impact ネットワーク保守作業するから指定の時間帯ネットワーク切れるかも…

VPCのアドレスまわりの覚書

VPCを作る際、最初に 10.0.0.0/16 などでアドレス範囲を決める。 http://aws.amazon.com/jp/vpc/faqs/#I4 に書いてある通り、VPCのサイズは、/28から/16まで。 その中にサブネットを複数作成可能。作成できるサブネット数はデフォルトで20サブネット(上限緩…

EBS: チューニングもしくはベストプラクティス

AWSが出しているホワイトペーパーのうち、DB関連のものにいろいろ書いてあるので、拾い読みするとよい。 MongoDB on AWS (PDF) RDBMS in the Cloud: Microsoft SQL Server 2008 R2 (PDF) EBSによるRAID構成やら、ファイルシステムやら、スナップショットやら…

CW: CloudWatchをデータ・ソースとして、Google Chartsでグラフ表示する

うまい組み合わせだ。 cloudviz :CloudWatchをデータ・ソースとして埋め込み可能なグラフを作成するのOSS。EC2とCloudWatchのAPIを使って取得したデータを、Google Interactive Charts(の Visualization API)を使ってグラフ作成する。Googleのデータソース…

EC2: Cloud-init でGitを使う

EC2の機能として、インスタンス作成時にUser Dataとしてパラメータ を渡すことで、起動時に cloud-initが動作する。 これを使って、インスタンス作成時に動的にGitからコンテンツを取得・デプロイすることが可能。 本格的にDevOpsやるなら、PuppetやChefを導…

EC2: AmazonLinuxにMongoDBをインストール

Amazon LinuxはRPMのバイナリがCentOSやRedHatと互換なので、そのままyumのリポジトリに10genのリポジトリを追加して、yumでインストール可能 まず、yumリポジトリに追加 詳細はこちら(CentOS and Fedora Packages - MongoDB) $ sudo vi /etc/yum.repos.d/Mo…

S3: 課金の算出とタイミング

S3やEBSの単価は 1GB/month でいくら、となっている。 では、計算をどうやっているか? Q: Amazon S3 を利用すると、どのようにして課金され、請求されますか? http://aws.amazon.com/jp/s3/faqs/#How_will_I_be_charged_and_billed_for_my_use_of_Amazon_S…

SQS: SupervisordでSQSのワーカープロセスを管理実行する

まずは、Supervisordのスクラップ Supervisord 本家 PHP+Kestrel+Supervisorでお手軽タスクキューイング : アシアルブログ スーパーサーバーSupervisorの導入手順メモ - Glide Note - グライドノート Supervisord を Amazon Linux AMI にインストール - mass…

SQS: ワーカープロセスの稼働管理にSupervisordが便利

SQS等のキューを介して非同期に処理を行う Queue Chain パターンを実装する場合、SQSに突っ込む処理はWebアプリ等の処理中に書けばよいので特に考えることはないが、SQSからメッセージを抜いて後続の非同期処理を実行するワーカープロセスをどのように起動管…

EC2: GPGPUクラスタインスタンス cg1.4xlargeのメモリ

cg1.4xlargeは、cc1.4xlargeにGPUとして NVIDIA Tesla M2050 "Fermi" が2個刺さっている、という認識だったので、利用可能メモリもcc1.4xlargeと同じ23GiBだという認識だった。 http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/using_cluster_co…

EC2: cc2.8xlargeのリザーブドインスタンスを比較してみた

特にどうってこと無いんですが。1年モノのcc2.8xlargeのRI(Reserved Instance)の利用度合いと費用についてグラフ化。 http://aws.amazon.com/jp/ec2/pricing/ 縦軸はドル。横軸は累積の利用時間割合。1年(24h x 365d)で100%の計算。 つまり、1年のうち10数%…