ようへいの日々精進XP

よかろうもん

aws

AWS Step Functions の Activity Worker を "郷" で実装してみた系

モチベーション AWS Step Functions とは 郷で Activity Worker を実装 Activity 参考 コード こうやって使うことを想定 Demo Activity Worker を動かす環境 State Machine: ビジュアルワークフロー State Machine: コード State1 : Godesu1 で実行するコマ…

俺のチュートリアル 2017 夏 〜 チュートリアルで学ぶ IAM Role によるクロスアカウントアクセス 〜

はじめに 構成 チュートリアル Account xxxx-xxxx-0001 の設定 IAM Role IAM Role に付与するポリシー Account xxxx-xxxx-0002 の設定 IAM Role IAM Role に付与するポリシー Instance Profile 最終的にこんな感じ? 動作確認 STS に AssumeRole して一時的…

俺の EC2 〜 郷編 〜

もはや Golang は 作ったもの 使い方 準備 ビルド help EC2 一覧を出力 dnsmasq の hosts リストを出力 カンマ区切りでファイルに出力 Markdown フォーマットのテーブル形式で出力 ということで 郷言語 aws-sdk-go のドキュメント 工夫したところ テスト も…

CircleCI と CodeDeploy のチュートリアル(出来るだけ awscli でやるよ)

ググれば 構成 チュートリアル CircleCI 用 IAM User 作成 デプロイ用 S3 バケット作成 CodeDeploy 設定 CodeDeploy Agent の導入 サンプルアプリケーションの用意 CircleCI の設定 サンプルアプリケーションをデプロイ ということで ググれば いくらでも情…

いろいろとツッコミどころはあるばってん、Backlog Git と AWS CodePipeline の連携について考察してみたくさ

CodePipeline よ Github や CodeCommit と連携出来るのはわかった ということで ざっくり構成 Backlog Git の Webhook は… Lambda ファンクションは… API Gateway と Lambda ファンクションのセットアップは… CodePipeline と S3 バケットの連携は… Codebuil…

2017 年 06 月 01 日(木)

東京二日目 AWS Summit 初参加 東京二日目 昨晩の魚金がやばくて、やばくて 会社近くのミニストップは店舗でおにぎり握って売ってる対象店舗だったけど、大好きな明太高菜おにぎりが無くて残念だった AWS Summit 初参加 人の多さに疲れた 来場者と同じくらい…

ゴールデンウィークスペシャル:AWS X-Ray を出来るだけローカル環境でチュートリアルする(Node.js + Express + DynamoDB Local を使って)

AWS X-Ray について AWS X-Ray とは何ですか? AWS X-Ray が出来ること 概念 AWS X-Ray の画面 Service Map Traces Trace の詳細 AWS X-Ray を利用する方法 X-Ray SDK X-Ray デーモン X-Ray API AWS CLI ローカル環境でチュートリアル 環境 X-Ray デーモンの…

#cirasu の Ansible徹底入門 輪読もくもく会 #1 で 「Ansible と AWS Lambda」 という話しをしてきた

#cirasu の Ansible徹底入門 輪読もくもく会 #1 Ansible と AWS Lambda なんで Ansible で? モジュールでなんとか… facts モジュールの罠… 同じような仕事をするモジュールが… 結局 Ansible で AWS Lambda を操作してみて Ansible で Lambda を管理するメリ…

2017 年 04 月 22 日(土)

JAWS-UG 福岡 #4 JAWS-UG 福岡 #4 AWS の荒木さんや盛田さんを迎えて、先月行われた JAWSDAYS の報告会を兼ねた JAWS-UG 福岡勉強会第四回に参加した。 日頃、直接人と会う機会が少ないので、久しぶりに大勢の人が集まる勉強会に緊張したが、お酒の勢いであ…

moto ✕ Rspec で Ruby で書いたライブラリをテストするばい(moto チュートリアル 弐)

モト Stand-alone Server Mode example Install moto server Start moto server まずは Help EC2 用サーバーを起動 Ruby Script Rspec で moto を利用してテストを行う 実際にテストを走らせてみると… 以上 おまけ モト inokara.hateblo.jp moto という AWS …

moto で boto3 を使ったツールやライブラリのテストをするぞ(moto チュートリアル 壱)

どうも、モト春樹です moto example リポジトリ チュートリアル環境 ec2.py tests/ec2_test.py setup.py テスト coverage coverage run coverage report coverage html Stand-alone Server Mode Python 以外の言語ライブラリからも利用可能 Stand-alone Serv…

Datadog APM の Python 用クライアント dd-trace-py をざっくりチュートリアルする 〜 Elasticsearch(Amazon Elasticsearch Service) 編 〜

引き続き Elasticsearch でも APM 本記事作成時の環境 Python から Elasticsearch を扱う場合 サンプルアプリケーション Patch tracer.wrap さて、今日は何処で呑もうかな、何を食べようかな やっぱもつ鍋ばい 福岡で焼肉食べたいばってん、禁煙の席があると…

Datadog APM の Python 用クライアント dd-trace-py をざっくりチュートリアルする 〜 botocore 編〜

引き続き ソースコードやドキュメントの端々に botocore とは ということで ddtrace-run x botocore Patch ということで 引き続き github.com を弄っています。 ソースコードやドキュメントの端々に ドキュメント には、以下のように… DATADOG_PATCH_MODULES…

小ネタ道場一本勝負 〜 Python Logging で CloudWatch Logs にログを送信したいんですけど 〜

たのもう Python の Logging モジュールで CloudWatch Logs にログを転送出来るやつ(ハンドラ)があればいいのになーと思っていたら既に在ったので嬉しかったです。 github.com 一本 watchtower のインストール pip install watchtower サンプル import wat…

2017 年 03 月 13 日(月)

中途半端な天気 EC2 の一覧、ELB の一覧 list_instances というナゾのコマンド 中途半端な天気 雨なんだか、晴れなんだか。 風呂上がりに夜風にあたりたい季節になってきた。 春はそこまで来ているのかもしれない。 EC2 の一覧、ELB の一覧 仕事から EC2 の…

AWS WAF の IPsets を管理するコマンドラインツールを雑に作っている(けど色々と改善する必要がある)

tl;dr シチュエーション別 wafoo ヘルプ 取り敢えず、IPSet の一覧を取得 特定の IPSet ID の IP アドレス一覧を取得 IP アドレスの追加 IP アドレスの削除 雑な tl;dr AWS WAF のアクセス制御を IP アドレスを条件として行う際に設定する IPSets の管理を比…

小ネタ道場一本勝負 〜 AWS CLI と jq を使って CloudWatch Logs にログが転送されていることを確認する手順の一つ 〜

たのもう 一本! ありがとうございました! たのもう CloudWatch Logs Agent の設定をしたばってん、ちゃんとログが転送されていることを確認したい。しかも、AWS CLI で。 一本! 例えば、ロググループが oreno-dev-app というロググループにログを飛ばした…

小ネタ道場一本勝負 〜 Datadog で取得出来る Amazon SES のメトリクスを確認する 〜

たのもう 参考文献 一本! ありがとうございました たのもう Datadog で取得出来る Amazon SES のメトリクスを確認する 参考文献 www.datadoghq.com docs.aws.amazon.com docs.aws.amazon.com docs.aws.amazon.com 一本! https://docs.aws.amazon.com/ja_jp…

特定の EC2 インスタンスのみ操作出来る IAM Policy の一例

要望 一例 登録例 以上 要望 A という IAM ユーザーに特定のインスタンスのみ「起動」と「停止」と「再起動」を出来る権限を付与したい。 一例 { "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudwatch:*", "ec2:Describe*" ], "Effect": "All…

AWS SDK for Ruby から Lambda の update_function_code を叩く時にハマったこと

結局は… 経緯 環境 やりたいこと ドキュメントには ところが… 解決 一つの issue ということで 以上 メモ 参考 結局は… ドキュメントよく読めってことだった 経緯 環境 $ sw_vers ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G1217 $ bu…

CloudFront + S3 で Web サイトを公開する時に学んだことの幾つか

学んだこと よくやる設定 注意点 参考文献 学んだこと よくやる設定 S3 への直接アクセスを防ぎたい場合には Origin Access Identity を利用する コンテンツへの IP 制限を行いたい場合には WAF を利用すると良い 必要なヘッダは転送する / を 任意のコンテ…

Amazon S3 + Cognito で簡易アンケートシステムを作る写経(Amazon S3 で HTML フォームを実装する写経)

やりたいこと 参考 検証環境 OS AWS CLI Data Bucket に未認証ユーザーが書き込めるような環境を AWS CLI で用意する あとは HTML と JavaScript でフォームを用意して HTML Bucket に放り込む HTML はこんな感じ JavaScript はこんな感じ Chrome で見ると… …

Nginx で特定の UserAgent からのアクセスはログに記録しない方法の一つ

やりたいこと 解の一つ 参考 除外する UserAgent を設定 Web サーバーの設定(アクセスログの設定) 以上 やりたいこと ELB からのヘルスチェックログはログに記録したくないよ 解の一つ 参考 bjornjohansen.no 除外する UserAgent を設定 /etc/nginx/conf.d…

既存のディストリビューションをコピーして新しい CloudFront ディストリビューションを作るシェルスクリプトのサンプル

CloudFront 奥深い おい、このディストリビューションと同じ設定で新しいディストリビューションを作ってくれや 参考 シェルスクリプト 以上 CloudFront 奥深い 手軽に Web サイトを CDN 配信出来るというメリットがあるものの、設定が多岐に渡り、初老には…

EBS スナップショットから EC2 を復元するシェルスクリプトの例

ということで なんばしよっと スナップショット アンサーソング(復元) 以上 waiter メモでした ということで 以下のように OS と DATA で 2 つの EBS が繋がった EC2 でメンテナンスを行う際に、事前にスナップショットを取得しておくのだが、仮にメンテナ…

ショロカレ 15 日目 | 初老ときゃぴきゃぴ Capistrano(2) と Amazon DynamoDB 〜 シンプルなテーブルを作ったり、構成変更したりするタスク 〜

これは 初老丸アドベントカレンダー 1 5 日目の記事です。 qiita.com ということで、小ネタ大ネタを交えて 12/25 まで張り切っていきましょう。 初老ときゃぴきゃぴ Capistrano(2) と Amazon DynamoDB 〜 シンプルなテーブルを作るタスク等 〜 シンプルなテ…

ショロカレ 13 日目 | 初老と AWS(2)〜 AWS CLI で AMI を作るが削除する 〜

これは 初老と AWS(2)〜 AWS CLI で AMI を作るが削除する 〜 逃げ恥 ということで、AMI を作る AMI を登録解除する AMI のスナップショットを削除する 以上 これは 初老丸アドベントカレンダー 13 日目の記事です。 qiita.com ということで、小ネタ大ネタ…

ショロカレ 10 日目 | 初老と AWS(1)〜 AWS CLI で S3 バケット以下にフォルダを作る時にどげんすっとや 〜

これは 初老と Amazon S3 S3 にフォルダという概念は... とは言え、バケット以下を... で、AWS CLI ではどうやって作るのか 以上 これは 初老丸アドベントカレンダー 10 日目の記事です。 qiita.com ということで、小ネタ大ネタを交えて 12/25 まで張り切っ…

初老丸のきゃぴきゃぴ Capistrano3 メモ(EC2 Name タグで操作対象を絞り込んでコマンド操作してみる)

きゃぴきゃぴ 参考 メモ やりたいこと 準備 ファイル達 config/deploy.rb config/deploy/dev.rb 実行 以上 きゃぴきゃぴ してますか。 Capistrano はバージョン 2 の時代に少し触ったことがあったんですが、改めて Capistrano 3 を用いて EC2 Name タグで操…

ほのぼの Rake タスクで S3 のバケットポリシーをちょっと管理する(表示と export と diff と update するだけ)

最近 タスク Rakefile 使い方 最後に バケラッタ Rake って 最近 ギョームで S3 バケットを更新する作業があったので、ほのぼの Rake タスクで汎用的に管理出来る感じにしてみました。 タスク Rakefile require 'aws-sdk' require 'diffy' require 'json' PO…

AWS CLI で EIP を付けて、ひっぺがして、また付けて

tl;dr メモ EIP 払い出し IP アドレスを確認 EIP 付与 EIP ひっぺがし EIP を別のインスタンスに付与 以上 tl;dr インスタンスに EIP を付与して、インスタンスからひっぺがして別のインスタンスに付与するまで。 メモ EIP 払い出し run ALLOCATION_ID=$(aws…

ラムダこりゃ外伝 - Lambda ファンクションから IAM role の AWS クレデンシャル情報を取得する for Python

tl;dr どうするのか 参考 環境変数から取得する 実行してみると... Amazon Elasticsearch に接続する例 以上 tl;dr Lambda ファンクションから IAM role の AWS クレデンシャル情報を取得したい どうするのか 参考 qiita.com ありがとうございます!!mm 環…

IAM Role を付与した EC2 インスタンスから Amazon ES にアクセスするメモ(Ruby 版)

tl;dr Amazon ES のアクセス制御を IP だけでしかやったことなかったので、実運用を考慮すると IAM role で制御する場合の方法を模索してみましたの Ruby 版。 参考 http://docs.aws.amazon.com/ja_jp/elasticsearch-service/latest/developerguide/es-creat…

IAM Role を付与した EC2 インスタンスから Amazon ES にアクセスするメモ(Python 版)

tl;dr Amazon ES のアクセス制御を IP だけでしかやったことなかったので、実運用を考慮すると IAM role で制御する場合の方法を模索してみました。 参考 http://docs.aws.amazon.com/ja_jp/elasticsearch-service/latest/developerguide/es-createupdatedom…

Amazon ECR から docker pull する為に最低限必要な手順

tl;dr 整理した。 大前提 最低でも IAM Policy の AmazonEC2ContainerRegistryReadOnly をつけた IAM Role 又は IAM User を使う EC2 上での手順 前提 EC2 には 管理ポリシーの AmazonEC2ContainerRegistryReadOnly をつけた IAM Role が付いている 手順 doc…

Python boto3 で認証情報を指定するメモ

ども、かっぱです。ぼちぼちやってます。 tl;dr 適切な IAM Role が適用されていない環境で boto3 を使う際に避けては通れない(はず)の認証情報を指定する方法をメモっておく。 尚、ソースコード内に認証情報を書くのはよろしく無いので、あくまでも検証、…

Amazon ECR が東京リージョンで利用出来るようになったのでメモ

ども、かっぱです。 YOKOSO 東京へ 待ちにまった ECR が東京リージョンで利用出来るようになったのでメモ。 https://aws.amazon.com/jp/about-aws/whats-new/2016/08/amazon-ec2-container-registry-region-expansion/ うんちくは割愛、CLI のチートみたいな…

Amazon ECS と AWS Application Load Balancer の組み合わせを試しているメモ(2)〜 AWS CLI で試す 〜

エブリデイ試した系ですいません。かっぱです。 tl;dr inokara.hateblo.jp の続き。 AWS CLI で ALB を作成して ECS の Service を作成して ALB と組み合わせてみる。尚、ALB を操作するには elbv2 というサブコマンドを利用する。 メモ ちょっとウンチク こ…

Amazon ECS と AWS Application Load Balancer の組み合わせを試しているメモ

ども、ECS は最近全然触れていないかっぱです。 追記 AWS CLI のでも操作してみた。 inokara.hateblo.jp tl;dr 先日、AWS Application Load Balancer がリリースされて、Amazon ECS の Dynamic Port Mapping にも対応されたとのことで、ECS と Application L…

AWS Game Day に参加して優勝してしまったくさ #AWSGameDayJapan‬

aws

tl;dr AWS Game Day というイベントに初老、初老界隈のメンバー三人で参加した。 gameday-japan.connpass.com AWS Game Day とは...上記のサイトを抜粋。 AWS GameDayはAWS上に構築されたシステムのトラブルシュートコンテストのようなものです。 主催者より…

Serverspec と Infrataster でテストした Docker コンテナイメージを Jenkins を介して Amazon ECR に push する考察

tl;dr ニーズがあるかどうか解らないけど...Jenkins を触ってみたくて試してみた。Jenkins の Amazon ECR プラグインとの出会いに身震いした。 参考 http://serverspec.org/ http://infrataster.net/ https://blog.mikesir87.io/2016/04/pushing-to-ecr-usin…

JAWS-UG 福岡「3度目の濃い目にAWSの話をしてみよう」に参加したメモ(資料のリンク集になりつつある)#jawsug

tl;dr 昼からお酒を呑みながら緩く AWS の話をしたい大人たちが集まる勉強会の三回目。今回は東京からもゲスト参加頂いたり、飛び込み LT あったり個々のスピーカーの方の話も濃かったけど、参加者のメンツや会全体が濃かった気がする。 jaws-ug-kyushu.door…

ECS で Amazon CloudWatch Logs にログ出力が出来るようになったのでチュートリアル

tl;dr aws.typepad.com Docker 1.9.1 から Logging Driver として CloudWatch Logs はサポートされていたが、ECS の Task Definition に定義して利用は出来なかった(と記憶している)ので、今回から Task Definition に定義して利用出来るようになったとの…

よく使う aws-cli 「私的」コマンドチートシートとか jq の使い方とか 2016(1)

tl;dr 書いておかないと忘れる年齢になっているのでメモっておく。 実行環境については、特に断りがない場合には以下の環境で試している。 % sw_vers ProductName: Mac OS X ProductVersion: 10.11.4 BuildVersion: 15E65 % aws --version aws-cli/1.10.26 P…

Aws::RDS::Errors::SignatureDoesNotMatch というエラーが出た際の対処

ひとまずメモ。 課題 Docker コンテナ内で RDS のログを AWS SDK for Ruby で弄っている時に以下のようなエラーが出た。 Aws::RDS::Errors::SignatureDoesNotMatch error=#<Aws::RDS::Errors::SignatureDoesNotMatch: Signature expired: 20160506T021015Z is now earlier than 20160506T021408Z (20160506T022908Z - 15 min.)> RDS に限らず API コールを行う際の署名の有効期限が切れている旨…</aws::rds::errors::signaturedoesnotmatch:>

RDS(MySQL) のスロークエリを EFK スタック + Docker で出来るだけ手軽に可視化する考察(2)〜 log_output: FILE の場合 〜

tl;dr RDS のスローログ等はテーブル又はファイルに記録することが出来る。前回は、テーブルに記録する設定を用いて、テーブルからログを定期的に読み込んで EFK スタックで可視化する仕組みを考えた。 今回はテーブルではなくファイルに記録する設定を用い…

ワンライナーで全てのリージョンの VPC ID とデフォルト VPC の true or false を取得する

tl;dr ワンライナーでなんかしたいシリーズ。 今回はワンライナーで全ての AWS リージョンの VPC ID とデフォルト VPC の true or false を取得するやつ。 今日のワンライナー for i in `aws --region ap-northeast-1 ec2 describe-regions --query 'Regions…

ssh の config ファイルを書き出したり、書きだした config ファイルを利用して ssh でアクセスする Rakefile のサンプル feat. ecs-cli

ども、おひさしブリーフ、かっぱです。 tl;dr ecs-cli を触っていて、立ち上げたコンテナインスタンスに ssh でアクセスしたい時に ssh の config ファイル作ったりするのが面倒だなあと思ったので rake コマンド一発で config ファイルを生成するタスクを書…

Packer で Windows Server の EC2 AMI を作ってみたメモ

tl;dr Windows Server の初期設定を出来るだけワンタッチ(スクリプト一発とか)で行う方法を試行錯誤していて、ついでに Packer で AMI も作ってみようと思って試したメモ。 あくまでもメモ。 教材 github.com memo 作成される AMI の概要 Python をインス…

体育会系 Amazon EC2 を Vagrant 経由で起動する手順

参考 https://github.com/mitchellh/vagrant-aws http://qiita.com/hmuronaka/items/b96aeb8179a4c74a4f9e 有難うございます。 事前の準備 IAM ユーザーを作成し Managed Policy の AmazonEC2FullAccess をアタッチしておく IAM ユーザーのアクセスキーID を…