Blog Archives

AWS CLIにオレオレwaitコマンドを追加する

aws cliには API 呼び出し後、特定のステータスになるまでポーリングする wait コマンドがあります。 例えば ec2 インスタンスを起動する API を呼び出し後、インスタンスの起動が完了するまで待つには $ aws ec2 wait instance-running –instance-ids xxx のようにします。 この wait 機能が実装されるまでは というように、ポーリング処理を自前で実装しなければいけ ませんでした(例外処理も真面目にやるとさらにごちゃごちゃする)。 この wait 系コマンドを独自追加する方法をメモ。 cloudformationでスタック構築完了を待つ 例として cloudformation でスタックの作成APIをたたいたあと (crete-stack)、スタックの構築が完了するまでポーリングするコマンド $ aws cloudformation wait stack-completed を実装してみましょう。 AWS CLI で

Tagged with: , , ,
Posted in aws, python

Amazon Machine LearningのチュートリアルをAWS CLIから実行してみる

Summary “Amazon Machine Learning Developer Guide” には “Tutorial: Using Amazon ML to Predict Responses to a Marketing Offer” というこのサービスの初心者向けのチュートリアルが含まれている。 Tutorial: Using Amazon ML to Predict Responses to a Marketing Offer http://docs.aws.amazon.com/machine-learning/latest/mlconcepts/mlconcepts.html チュートリアルはマネージドコンソールから操作しているので、将来のスクリプト化を見据えて AWS CLI から操作してみる。 チュートリアルの流れ University of California, Irvine

Tagged with: ,
Posted in aws

[AWS]ELBのプライベートIPアドレスを調べる

Summary VPC 内にたてた ELB(internet-facing/internal) のプライベート IP アドレスをコマンドラインツールの AWS-CLI から調べる方法をメモ。 tl;dr : EC2 DescribeNetworkInterfaces を使う EC2 サービスには DescribeNetworkInterfaces という NIC 向けの API が存在する。この API を使うと ELB のグローバル/プライベート IP アドレスを確認できる。 NIC 一覧からお目当ての ELB を突き止めるには? ELB インスタンスの NIC の設定は aws が裏でやっているためか、ELB のNIC は

Tagged with: , , ,
Posted in aws

AWS CloudWatchにカスタムメトリックスを登録する

ゴール AWS のサービス(特に EC2)を監視するには aws マネージドサービスにデフォルトでついてくる CloudWatch を利用(aws おまかせ) カスタムメトリックスを CloudWatch に送信し、CloudWatch を利用(エージェントだけ自前実装) new relic のような ASP サービスを利用(エージェントだけ自前インストール) Zabbix などの監視システムを構築(サーバ、クライアントの両方を自分で面倒を見る) といった方法がある。 今回は2つ目の方法をメモ。 監視内容 EC2 インスタンス(OS は amazon Linux)からカスタムメトリックスを CloudWatch に送信する。 実験に使いやすいインスタンスに nginx がインストールされていたので nginx のメトリックスを送ることにする。 nginx のメトリックスを取得 ngx_http_stub_status_module モジュールを利用してメトリックスを取得する。 amazon

Tagged with: , , , ,
Posted in aws

AWS CLIを使ってRDSのログファイルを読む

一部の人に喜んでもらえたので、手順を書いてみる。 ログファイルの一覧を取得 まずは RDS インスタンスに紐付けられたログファイルの一覧を取得 rds describe-db-log-files –db-instance-identifier コマンドを使う ログファイルを取得 rds download-db-log-file-portion –db-instance-identifier –log-file-name コマンドを使う ここで問題が発生。 aws cli デフォルトの JSON 形式で出力すると、要素 LogFileData が1バイトずつぶつ切りにされてしまっている。 この事象の原因調査はひとまず保留して、行単位で出力される方法を考える。 解決1:行単位で出力 諸般の事情により JSON 形式をやめられない場合、–number-of-lines を渡して行指向で出力させる。 このオプションは aws cli のリファレンスには記載がないけれども、aws-cli が叩いている REST API には記載がある。 http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DownloadDBLogFilePortion.html aws cli

Tagged with: ,
Posted in aws

AWS CLIを使ってマルチAZなElastiCache Redisのリードレプリカを作成する

ゴール AWS ElastiCache は RDS と同じくマルチ AZ に対応している。 Q: Does Amazon ElastiCache for Redis support Multi-AZ operation? Yes, with Amazon ElastiCache for Redis you can create a read replica in another AWS Availability Zone. Upon a failure of the primary

Tagged with: , , ,
Posted in aws, database

AWS CLIを使ってElasciCache Redisのパラメーターを変更する

通常の Redis では、パラメーターは CONFIG コマンド経由で変更する。 http://redis.io/topics/config 一方で、マネージド・サービスである AWS ElasciCache Redis では、運用にインパクトを与える CONFIG のようなコマンドは利用できないようになっている。(redis.conf で rename-command CONFIG “”のように設定すれば良い) Restricted Commands In order to deliver a managed service experience, ElastiCache restricts access to certain cache engine-specific commands that require advanced privileges. …

Tagged with: , , , ,
Posted in aws, database
Archives
  • RT @__apf__: How to write a research paper: a guide for software engineers & practitioners. docs.google.com/presentation/d… /cc @inwyrd 4 months ago
  • RT @HayatoChiba: 昔、自然と対話しながら数学に打ち込んだら何かを悟れるのではと思いたち、専門書1つだけ持ってパワースポットで名高い奈良の山奥に1週間籠ったことがある。しかし泊まった民宿にドカベンが全巻揃っていたため、水島新司と対話しただけで1週間過ぎた。 それ… 4 months ago
  • RT @googlecloud: Ever wonder what underwater fiber optic internet cables look like? Look no further than this deep dive w/ @NatAndLo: https… 4 months ago
  • @ijin UTC+01:00 な時間帯で生活しています、、、 10 months ago
  • RT @mattcutts: Google's world-class Site Reliability Engineering team wrote a new book: amazon.com/Site-Reliabili… It's about managing produc… 1 year ago