kakakakakku blog

Weekly Tech Blog : Keep on Learning 👍

AWS

CodeDeploy のデプロイ実行とデプロイ完了待機を AWS CLI で試した

CodeDeploy のデプロイ実行を AWS CLI で試した.今回は GitHub からコードを取得する前提にしている. コミットハッシュを取得する CodeDeploy で GitHub からコードを取得する場合,対象となるコミットハッシュが必要になる.そこで,GitHub API から指定…

CodeDeploy エージェントのログに Missing credentials と出たら codedeploy-agent を再起動する

最近 CodeDeploy の検証をしていて,codedeploy-agent のエラーログに少しハマったので,メモ程度に残しておく. aws.amazon.com Amazon Linux に codedeploy-agent をインストールする 公式ドキュメントに書いてある手順で,問題なくインストールできた. $…

Fargate 東京リージョンは7月だー! / AWS Summit Tokyo 2018 に参加した

5/30 (水) - 6/01 (金) で AWS Summit Tokyo 2018 に参加してきた.3日間参加したものの,午前中はデイリースクラムなど重要なイベントがあったので,午後に数時間セッションを聞いたり,ブースを見たり,認定者ラウンジで休憩していた.今年はセッション予…

CircleCI 2.0 + Apex で Lambda をデプロイする

Lambda をデプロイする場合,最近だと Serverless Framework もしくは AWS Serverless Application Model を使う場面が多いけど,他の AWS サービスに依存せず Lambda だけをデプロイしたい場合には Apex も積極的に使っている.要件がシンプルな場合に特に…

ElastiCache for Redis でシングルコアに対応したメトリクス EngineCPUUtilization が追加された

今月発表された ElastiCache for Redis のリリースで,新 CloudWatch メトリクス EngineCPUUtilization が追加された. Amazon ElastiCache for Redis は、Redis のワークロードへのより良い可視性を達成するために新しい CPU 使用状況メトリックスを導入し…

Amazon Elasticsearch Service で「アクセスポリシー」を即時反映できるようになっていた

Amazon ES (Amazon Elasticsearch Service) で,例えば「アクセス許可 IP」を追加するなど「アクセスポリシー」を変更する場合,クラスタも再構築されてしまうため,待ち時間が長時間化したり,場合によっては再構築がエラーになって,クラスタが死んでしま…

AWS で Kubernetes クラスタを構築して学ぶワークショップ「aws-workshop-for-kubernetes」

Kubernetes を学ぶため,AWS から公式に公開されているワークショップ資料「aws-workshop-for-kubernetes」を試した.Kubernetes を学ぶためのコンテンツが網羅的にあるため,今回はワークショップの紹介と,実際に試した一部のコンテンツをまとめたいと思う…

Lambda / Kinesis / DynamoDB / X-Ray などを組み合わせた実装を学べる「サーバーレスアプリケーション開発ガイド」を読んだ

今月発売されたばかりの「サーバーレスアプリケーション開発ガイド」を読んだので,書評をまとめたいと思う.著者の西谷さん,献本ありがとうございます! Amazon Web Servicesを使ったサーバーレスアプリケーション開発ガイド作者: 西谷圭介出版社/メーカー…

ElastiCache Redis 3.2.10 で使える「オンラインリサイズ機能」を試した

最近 ElastiCache Redis の検証をしていて,最近の新機能をキャッチアップできていなかったので「オンラインリサイズ機能」を試してみた. 用語 まず ElastiCache Redis の資料を読んでいると,管理コンソールと API で用語が異なっていてとにかく混乱するの…

ECS コンテナインスタンスをモニタリングするときは mackerel-agent v0.49.0 以上にすると良さそう

例えば ECS コンテナインスタンスなど,Docker ホストとして使っているインスタンスを Mackerel でモニタリングする場合,以下のように disk と interface と filesystem のメトリクスが非常に多くなってしまう.Mackerel では,メトリクス数が 200 を超える…

SQS にポイズンピルメッセージがあると ApproximateAgeOfOldestMessage の値が正しくなくなる可能性がある

AWS

ApproximateAgeOfOldestMessage とは? SQS には ApproximateAgeOfOldestMessage というメトリクスがあり,CloudWatch でモニタリングをすることができる.なお,SQS の歴史を考えると比較的最近に追加されたメトリクスで,2016年8月にリリースされている. …

Fargate を試した感想と ecs-deploy で Fargate にデプロイできるようにする話

今日は「AWS Fargate Advent Calendar 2017」23日目の記事として,Fargate を試した感想と,デプロイツールの ecs-deploy で Fargate にデプロイできるようにする話を書いてみたいと思う.アドベントカレンダーの記事はどれも本当に素晴らしくて,Fargate 最…

「AWS re:Invent 2017 Serverless re:Cap」に参加した

月曜日は「AWS re:Invent 2017 Serverless re:Cap」に参加してきた.日本だと完全に深夜帯だったキーノートは全て見たし,Black Belt「re:Invent 2017 速報」も見たけど,アップデートが多いので繰り返し学びたいなと思っていたのと,今回は Serverless 関連…

re:Invent 2017 で発表された Launch Templates を使って簡単にインスタンスを起動する

AWS

re:Invent 2017 で発表されたアップデートの中で,比較的地味ながら,個人的に嬉しかった機能が「Launch Templates」だった.簡単に言うと「インスタンスの起動オプションをテンプレート化して管理することができる機能」と表現できる.対象はオンデマンドイ…

Aurora v1.13 から使える SELECT INTO OUTFILE S3 を試した

Aurora v1.14 の強制アップデートがあったりして,改めて Aurora のリリースノートを読み直していたら,Aurora v1.13 から SELECT INTO OUTFILE S3 が使えるようになっていることに気付いた(今さら!).今まで試したことが無かったので,実際に試してみた…

S3 の Static Website Hosting でドメイン間のリダイレクトを実現する

AWS

ドメイン間でリダイレクトをする必要があり,nginx で頑張るのもなぁ…と思って,もっとお手軽で運用も楽そうな方法を探していたら,以下の記事を発見して,S3 の機能で実現できそうだったので試してみた.記事では別のドメインにリダイレクトをする方法とし…

Lambda (Python) をローカル環境で実行できる python-lambda-local を試した

Lambda (Python) のローカル環境を整えるため,python-lambda-local を試した.python-lambda-local を使うと,Python コードを Lambda にデプロイすることなく動作確認ができるようになる.Apex を使っていれば apex invoke でお手軽に実行することもできる…

「JAWS-UG コンテナ支部 #9」で「ECS x Mackerel」をテーマに LT をした

昨日は「JAWS-UG コンテナ支部 #9」に参加して,LT もしてきた.ECS を中心に移行の話,デプロイの話,モニタリングの話などを聞けたし,懇親会にも参加させてもらって,カジュアルに話せて楽しかった.僕もコンテナ支部の運営をお手伝いしたいな! jawsug-c…

AWS をフル活用して「サーバレス」な SPA を実装できる「サーバーレスシングルページアプリケーション」を読んだ

6月末に O'Reilly から出版された「サーバーレスシングルページアプリケーション」を読んだ.ただ読むだけじゃ理解度が浅くなってしまうかもしれないなと感じて,今回は全ての実装を写経してみた.そのため少し時間はかかってしまったけど,フロントエンドに…

AWS Solution Days 2017「第2回 Aurora 事例祭り」で発表をしてきた

今日は「AWS Solution Days 2017 ~ AWS DB Day ~」に参加をして「第2回 Aurora 事例祭り」で発表もしてきた.すぐに資料公開をして良いとのことだったので,参加レポートをまとめる. AWS Solution Days 2017 ~AWS DB Day~(2017 年 7 月 5 日開催) | AWS…

Apex の --env オプションを使って Lambda を複数環境にデプロイする

最近仕事で必要になり,CircleCI + Apex を使って,Lambda を複数環境 (prd / stg / dev など) にデプロイできる仕組みを作ったので,実現したかったこと,工夫したことなどを紹介したいと思う.ちなみに,以前も似たような事例で CloudWatch Events + Lambd…

任意のパラメータを格納できる EC2 Systems Manager「パラメータストア」を試したら便利だった

AWS

re:Invent 2016 で発表されたけど,オンプレ関連だと勝手に思い込んでいて,今まで試していなかった Amazon EC2 Systems Manager の中に「パラメータストア」というサービスがあり,試してみたらこれが非常に便利だった.簡単に言うと,任意のパラメータをパ…

Lambda を軸にサーバレスを解説した「実践 AWS Lambda」を読んだ

AWS Summit Tokyo 2017 の先行発売でゲットした「実践 AWS Lambda」をさっそく読んだ.Lambda の解説だけではなく,サーバレスの文脈で導入事例が増えてきたアーキテクチャ(ユースケース)の紹介がされていたり,サーバレスのデプロイツールとして AWS SAM …

AWS Summit Tokyo 2017 に参加して2日間ずっと AWS のことを考えていた

2017/05/30(火) ~ 2017/06/02(金) の期間で,計4日間開催されていた AWS Summit Tokyo 2017 に参加してきた.僕は後半2日間に参加して,非常に満足度が高く,もっともっと AWS を使い倒さなきゃ!とモチベーションが上がった.セッションを聞くだけではなく…

Data Migration Night に登壇してデータ移行の Tips を紹介してきた

今日は Data Migration Night に参加してきた & LT 枠で登壇してきた! atnd.org ChatWork がデータマイグレーションに使った技術の話 CQRS + Event Sourcing System Aurora にある17億メッセージを HBase にマイグレーションする 基本マイグレーションと差…

Mackerel で ECS の動的ポートマッピングに対応したタスクのメトリクスを取得する

前回書いた記事に続き,Mackerel を使って ECS のメトリクスを取得する方法を検証していて,今回は「パターン2 : コンテナインスタンスに mackerel-agent をインストールする」の検証結果をまとめる.前提としては前回と同じで,ALB の動的ポートマッピング…

mackerel-agent タスクをコンテナインスタンスごとに起動して ECS のメトリクスを取得する

最近 Mackerel を使って ECS のメトリクスを取得する方法を検証している.ポイントとしては,ALB の動的ポートマッピングを使うところで,コンテナインスタンスの中で複数のタスク(コンテナ)が起動されるため,全てのタスクのメトリクスを取得する必要があ…

docker login をせずに ECR を操作できる awslabs/amazon-ecr-credential-helper

3月末に参加した「JAWS-UG コンテナ支部」で知った ECR (Amazon EC2 Container Registry) の便利ツール Amazon ECR Docker Credential Helper を試した.Amazon ECR Docker Credential Helper を使うと ECR のログインを省略できる. kakakakakku.hatenablog…

CircleCI + ecs-deploy で ECS にデプロイをする

引き続き ECS のデプロイを調査していて,今回は導入された話を比較的よく聞く ecs-deploy を試した.AWS CLI と jq に依存しているけど,Shell 100% で実装されているため,実行環境の構築が不要という手軽さが1番のメリットだと思う. github.com ちなみに…

「JAWS-UG コンテナ支部 入門編 #4」に参加して ECS の事例を聞いてきた

3/30(木) に参加して既に3週間もたってしまったけど,ECS の事例を聞きたいなと思って「JAWS-UG コンテナ支部 入門編 #4」に参加してきた.今回は「入門編」だったので,僕のレベル的にちょうど良いなと思った.あと JAWS 系のイベントは “19-21時” でサクッ…