雑多なインフラエンジニア日記

技術ブログでっす~

DatadogとMackerel

Datadogとmackerelはそもそも立ち位置が違うので、比較してどうすんだって話もありますが、 今のところ、DataDogのほうが圧倒的に勝っています。まず、Integrationが豊富&楽すぎる。 ざっとした特徴 Datadog 課金対象はEC2のみ。(またはDatadogAgent) その…

CloudWatchとオートスケール

2014/10/29のAWS webinarを聞きながら取った雑なメモです。。。 オートスケールは初めて知った話がいくつかありました。■CloudWatch・CloudWatch Logsがリリースされた。EC2上のログを監視できる。・CloudFrontの監視ができるようになった。(見るときはN.Vi…

publicIP、publicDNS、EIPの挙動

今更ながら、VPC内におけるpublicIP、publicDNS、EIPの挙動をメモ。 なんでこのテーマかと言うと、 http://www.slideshare.net/AmazonWebServicesJapan/vp-cby-default20130404public の8ページ目の「動的割当されるPublic IPアドレスが利用できる唯一のSubn…

リザーブドインスタンスの所感

完全に個人的見解なメモ。 まぁ、なんでリザーブドがお得なるのかって言うと、 AWS側がキャパシティプランニング立てやすい = 適切な投資が出来る からでしょう。 1. そもそも、リザーブドインスタンスとは? http://www.slideshare.net/AmazonWebServicesJa…

AZとDCのマッピング

意外と大事な話。 以前、AZ名と物理的なロケーション(データセンター)のマッピングは、 アカウント毎に異なると書きましたが、追記。 ・過去記事 http://xoxo-infra.hatenablog.com/entry/2013/02/20/155515 例えば、物理的なロケーション名は、東京リージョ…

静的WebサイトをS3で公開する場合のCNAMEは・・・

S3

ホスト名部分は、何でも大丈夫です。 (xxx.s3-website-ap-northeast-1.amazonaws.com の xxxの部分のこと) 存在しないEndPointをCNAMEに設定しても接続できます。 試しに、適当に nslookup をしてみてください。 (nslookup abcdefghijk.s3-website-ap-northe…

ElastiCacheについてメモ

メモ。 redisのほうが高機能ですね。 ■全般 EC2上にmemcachedを構築するより、セットアップが楽、高可用性、 CloudWacth使用可なので便利。 RDSと同様、OSにログインは出来ない。 最近M3のインスタンスタイプが提供された。現在はmemcachedしか対応していな…

IAMポリシーで特定のEC2インスタンスへの操作権限付与

表題の通り、IAMポリシーで特定のEC2インスタンスのみに操作権限を付ける ことが可能になったみたいです。(2013/07時点) http://aws.typepad.com/aws_japan/2013/07/resource-permissions-for-ec2-and-rds-resources.html 以下のIAMポリシーは、全EC2インス…

df portability オプション (出力結果を見やすくする)

中々便利なオプションを発見したのでメモ。 dfコマンドで各サーバのマウントデバイス名、ポイント、容量などを取得してExcel で表にするときに、NFSサーバをマウントしていると以下の様な表示になってしまい、 貼り付けにくいです。 そんな時は df --portabi…

ソリューションアーキテクトアソシエイトレベルについて

etc

http://aws.amazon.com/jp/certification/ ソリューションアーキテクトアソシエイトレベルを受けてみました。 結果はギリギリセーフ。。 試験範囲だけ確認して勉強しなかった割には受かったので結果オーライw 自分のスペックは、インフラエンジニア10年(要件…

ELBのリクエスト数をmuninに取り込む (CloudWatch to munin)

CloudWatchで、ELBのステータスコードの数、リクエスト数、レイテンシが見れますが、 2週間しか保存されないので必要なものをmuninに取り込んでます。 現状はリクエスト数しか取り込んで無いですが、本来はキャパプラとか過去の振り返り のために、全部2週間…

Solr on EC2

etc

なんか、革命的なサービスが出ましたね。http://solr.jp/まだベータ版のようですが、正式版にしてマーケットプレイスで売れそう。

S3 IAMでアクセス制御 (特定のフォルダにのみ権限付与)

IAMを使ってみたのでメモ。1. AWS Management Console から IAM の画面を開き、ユーザを作成する。 2. アクセス制御したいユーザを選択し、Permissions → Attach User Policy を選択する。 3. Custom Policy を選択する。 4. Policy Document に JSON形式で…

EC2 User Data について (色々自動設定してみるの巻)

今までEC2を何気なく作成していましたが、そろそろ「User Data」なるものを 使ってみようと思ったのでメモ。 これのことです。 インスタンス起動時にやりたい処理(ホスト名設定など)をUser Dataに記述 しておけば、起動時に色々設定してくれる優れものです!…

psshとかpslurpとか

大量のサーバを管理していて、共通設定のファイルを配布したり、ディレクトリの 権限変更したり、ちょっとした一斉作業に便利なコマンドpsshについてメモ。 だいぶ、今更な話ですいませんw 同時に一斉実行ですので、sshをforなどでループするより遥かに早い…

EC2(EBS) PIOPS有りのEBSをPIOPS無しにする

とあるEC2インスタンスでPIOPSを無効にするのにハマったのでメモ。 ・背景 ディスクI/Oバウンドになる濃厚なインスタンスにPIOPSを有効にして 運用してたらコストがそこそこ跳ねたので、そもそも、PIOPS要るん? → 無効にしようぜ と言った流れです。 ・EBS…

EC2のswap領域

EC2

初めて知った・・・https://forums.aws.amazon.com/thread.jspa?messageID=459068&tstart=0#459068一時的に作る方法もありみたいですね。 http://cloudstory.in/2012/02/adding-swap-space-to-amazon-ec2-linux-micro-instance-to-increase-the-performance/

EC2 AZ間のスループット計測 (netperf)

ここ(http://aws.amazon.com/jp/ec2/instance-types/instance-details/)に明確な数値が 書いてないので、インスタンスタイプ毎のAZ間のスループットを計測してみました。 東京リージョンの 1a から 1b、1c に対してnetperfで負荷を掛けています。 (AZはAWSア…

AmazonLinuxのmailコマンド

超小ネタ。 今まではサーバからメールが送信されるかの確認を行う場合、以下の コマンドで実施していたのですが、AmazonLinuxはmailコマンドが mailx なので、ちょっとハマりました。 てか、mailxとか初めて知った・・・orz 今まで ・送信 (送信先アドレス、…

S3でログ収集(パージ編)

前回の記事で各種ログをS3へ転送するところまで書きましたが、永久にS3に 溜め続けるのはスマートではないので、適切に削除するスクリプトを作成し ました。 ・前回の記事 (S3にログ転送) http://xoxo-infra.hatenablog.com/entry/2013/05/13/183114 前提 ・…

S3でログ収集(logrotate)

セキュリティ要件等で、各サーバのログを長期保存しなければいけない場合、 サーバ上(EBS)に全ログを保存するとエライことになるので、S3に退避する 方法をメモ。 Linux標準の logrotate + s3cmd を駆使して実現できます。 # 巷で話題のfluentdやfluent-agen…

EC2自動バックアップスクリプト

RDSには自動バックアップ機能がありますが、EC2には無いので、 EC2(正確にはEBS)のバックアップスクリプトをbashで作ってみ ました。 コードが少々汚い気がしますが・・・ 前提 1. backupタグを作成済みであること。 2. /home/xxxx/.bash_profile に、AWSコ…

EBS IOPSのベンチマークスクリプト

最近流行っている(?)EBSのベンチマーク用スクリプトを作ってみました。 そもそものきっかけは、OS起動直後&初回の読み書き用のファイル 作成時は、極端にIOPSが悪いように見受けられたので、ベンチマーク を簡素化するために作成しました。 何度も試行する…

AZ間のレイテンシについて

EC2

Multi AZ を使う時に気になるのが、AZ間のレイテンシ。 気にならないレベルだと皆さん言いますが、地理的に数十km離れたDC間 の通信なので、どうしてもレイテンシは発生します。 裏で専用線を引いているのは確かでしょうけど。 そこで、簡易的では有りますが…

weighttpでwebサーバの負荷テスト

Apache Bench飽きたし他に何か無いのかな~と探したら、weighttp にたどり着きました。 (SSL未対応ですが・・・) ほんとは、ApacheJmeterで小難しいシナリオ作ってWebサーバの負荷試験を 行うのがベストだと思いますけどね。 ・参考にしたサイト http://www.…

Ruby unicorn 起動スクリプト

unicorn 起動スクリプトを作成してみました。 というか、OS標準のrubyがインストールされている状態で、別Verのrubyを ソースインストールしたら、OSリブート時にunicornが自動起動されなかったので メモ。 ちなみに、手動で起動スクリプトをキックした場合…

RDSのフェイルオーバーについて

RDS

RDSのインスタンスタイプをsmallからmediumに変更した際に、 フェイルオーバーが走って、RDSがセカンダリAZに行ってしまった 件についてメモります。 再起動が発生する認識はありましたが、フェイルオーバーするという 認識は無く、なんでやねーんと調べてた…

mon-get-stats でRDS/ELBのリソース情報を取得

mon-get-stats(CloudWatch API)を使って、RDSやELBのリソース情報を 取得する方法をメモ。Nagios、muninなどのプラグインに組み込みました。 ・過去記事 http://xoxo-infra.hatenablog.com/entry/2013/04/04/024554 ・CloudWatch API http://aws.amazon.com/…

mon-get-statsで請求額を取得

CloudWatchのAPIを使えば、AWSからの請求額を取得出来ますYOという話。 全体の請求額だけではなく、EC2、RDSなど各サービス毎の請求額も取得 可能です。 初期セットアップ ・Billing alarm を設定 この設定をしてからAWS側で請求額モニタリング開始&設定金…

Linux cron実行時のエラーをmessagesに出力

簡単です。 ・エラーになるcron設定を登録。(/tmp/aaa が存在しない前提) */01 * * * * ls /tmp/aaa || logger "cron failed. ret=$? `/bin/awk '{print $1}' /proc/$$/cmdline`" ・1分後に/var/log/messages を確認。 Apr 4 01:33:01 node01 root: cron fai…