継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

AWS

ECS Fatgate の FastAPI 関連プロセスを Mackerel で監視する

タダです. 前回の記事で Mackerel のカスタムプラグインを使った監視をやってみたんですが,EC2 の Uvicorn プロセス数の取得とプロセスの監視をしてみました.今回は前回のカスタムプラグインを使って ECS Fargate 上のプロセス監視をいれていきます. sadayos…

AWS Chatbot から Lambda の発火させて手動作業を自動化する

タダです. 業務で不定期ではあるけれど定型作業の依頼が非エンジニアから飛んでくる時があり,最初はすぐに済ませるため手作業で行っていたタスクを仕組み化しようと思い,AWS Chatbot を入れているので Chatbot と Lambda を使って作業を省力化したのでこの記…

コンテナ・サーバーレスアプリケーションデプロイのマネージドサービス『AWS Proton』をサンプルを動かして理解する

タダです. 「AWS Proton」が GA したので,使ってみたいと思いサンプルプロジェクトを使ってみてこの記事に所感などまとめていきます. AWS announces the general availability of AWS ProtonToday, AWS announces the general availability of AWS Proton, t…

FireLens からログだけ Lambda を使って抽出し,Athena でクエリする

タダです. ECS に乗っているコンテナのログを FireLens を経由して Kinesis Firehose -> S3 にログを出しました.ただ,下記の JSON 形式でログが保存されているため,Athena でクエリしようとするとしてもログの詳細を見る時辛いなと思っていました. { "contai…

S3 に保存した拡張子を取り除いた html コンテンツが閲覧ができない事象の対処

タダです. CloudFront と S3 の構成で静的ファイルの配信をすることになり,継続的なコンテンツの更新があるし GitHub Actions でコンテンツをアップロードするようにしました.その際に,静的ファイルの中で html ファイルを拡張子取り除いてアップロードした…

WordPress API を API Gateway の HTTP 統合使ってアクセスする

タダです. 業務で AWS 内から外部の WordPress のコンテンツを API 経由で取得しキャッシュもせたいというモチベーションから API Gateway の HTTP 統合を使う機会があったので,この記事で設定を備忘録として記録してきます. API Gateway の設定 参考情報 キ…

ECS Fargate で動作する FastAPI のコードを X-Ray でトレースする

タダです. 前回 Amazon Linux2 の上で FastAPI のコードに X-Ray を仕込みました.今回は ECS Fargate 上で動作する FastAPI のコードから X-Ray にトレースした情報を送る時に設定する内容をさらったので整理してきます. sadayoshi-tada.hatenablog.com ECS …

AWS のリソースを Terraform ファイルに変換する『aws2tf』を使ってみる

タダです. AWS のリポジトリを見ていたら aws2tf というツールを見つけました. Terrafrom を使ってのリソース管理をし始めたのでどんな動きをするかを知りたくてこのツールを使ってみることにしました.この記事で aws2tf のツールをさらっていければと思いま…

ECS Fargate で Mackerel コンテナエージェントによる監視設定をする

タダです. 業務で ECS Fargate の監視をしていく時に Mackerel のコンテナエージェントをセットアップするやり方を確認しました.設定方法をこの記事でまとめていきます. 確認した環境 コンテナエージェントのセットアップ Systems Manager Parmeter Store に…

FastAPI のコードを X-Ray を使ってトレーシングする

タダです. FastAPI を業務のアプリケーションで扱う割合が増えつつあるのですが,FastAPI のパフォーマンスを見えるよう可視化していくために X-Ray を試す機会があったのでこの記事にまとめていきます. X-Ray について サポートされている言語 X-Ray の用語 …

暗号化した Aurora スナップショットを別アカウントで復元する

タダです. 本番環境から別アカウントに暗号化した Aurora スナップショットを共有し,仕組み化して復元する時に少し手間取ったので対応をまとめていきます. 暗号化した Aurora スナップショットを共有する設定 共有されたアカウントでの設定 まとめ 暗号化し…

pytest と moto でモックを作ったテストを行う

タダです. 以前から気になっていた moto というツールを試す機会があったので,この記事で導入と pytest と組み合わせたテストをチュートリアルの内容を通して見ていきたいと思います. moto って? moto でモックを作り pytest でテストする まとめ moto って…

Mackerel と Amazon EventBridge を連携してアラート後のリカバリアクションを追加する

タダです. 本稼働しているサーバーの中にアクセスが多くないものの時折 CPU が 100% と高負荷になって突発的にサーバーがダウンしてしまう事象があり,その都度サーバーを再起動することが何度かありました.アクションが決まっているなら Mackerel と Amazon …

FireLens で出力されたコンテナのログを Athena でクエリする

タダです. 最近もっぱら ECS 周りを触っているんですが,コンテナのログを CloudWatch Logs に出すのはコスト的に避けたかったので FireLens 経由で S3 に出すようにしました.S3 に出しちゃえば Athena からログをクエリできると思ってやってみたのでこの記事…

『JAWS DAYS 2021 - re:Connect -』でシステムリリースフローの刷新の取り組みを話してきた

タダです. 3/20 開催の「JAWS DAYS 2021 - re:Connect -」にて「スタートアップ企業での散乱したシステムリリースフローをととのえる話」というタイトルでオンライン登壇させていただきました.開発者が安心かつスムーズなリリースフローを作り、開発生産性を…

Aurora のクローン機能を使ったバイナリログレプリケーションを実行してみた

タダです. 以前の記事で Aurora のバイナリログを有効化して DMS の準備をする記事を書きました.ただ,DMS のトラブルシューティングを確認してみるとオブジェクトの作成ができないものがあり,ソースデータベース とターゲットデータベースが同一の場合オブジ…

プルリクマージ後に AWS SAM と GitHub Actions を使った差分デプロイフローを作ってみた

タダです. 以前モノリポに格納されているコードの中で変更があったコードのみ AWS SAM と GitHub Actions のデプロイフローを検証した記事を書いたのですが,投入したところプルリクをマージした後にデプロイがうまくいきませんでした.この記事でうまくいかな…

SSM Run Command をメンテナンスウィンドウで実行する

タダです. 業務の中で日時を決めて SSM Run Command を実行したい要件がでてきたのでメンテナンスウィンドウを使ってみることにしました.この記事ではメンテナンスウィンドウを AWS CLI を使って設定して行ったメモを備忘録として書いていきます. メンテナン…

Alexa スキル開発の専門知識を証明する『AWS 認定 Alexa Skill Builder Speciality』に合格するためにやったこと

タダです. 勉強の一環で2/27 に「AWS 認定 Alexa Skill Builder Speciality」を受けて合格しました.今回は自分がどんな勉強をしたかを振り返り,今後受験される方の勉強の参考になればと思い書いていきます.なお,3/22が受験できるラストチャンスで今後受験で…

Aurora MySQL でレプリケーションを行うためにバイナリログを有効化する

タダです. Aurora MySQL のデータを DMS でのレプリケーションをやりたいと思い,バイナリログを有効化する機会がありました.初めてやったので設定について振り返っていきます.なお,Aurora のバージョンは 5.6.mysql_aurora.1.22.2で確認してます. DB クラス…

AWS CLI で AWS SSO を使うための方法を確認した

タダです. AWS SSO を経由で AWS CLI コマンドを実行することが増えてきて設定方法を確認したので備忘録として記事にまとめていきます. 事前準備 SSO の設定 SSO のサインインと一時認証情報の取得 まとめ 関連ドキュメント 事前準備 事前準備として AWS CLI…

AWS SAM と GitHub Actions を使った Lambda のデプロイフローの検証をしてみた

タダです. 業務で Lambda をデプロイを独自スクリプトと CodePipline,CodeBuild を使っていたのですが,開発チームとの相談を経て置き換えを図ろうとGitHub Actions を使ったデプロイフローを検証する機会があったのでこの記事に検証した内容をまとめます. 検…

NAT Gateway の自動作成・削除を SSM オートメーションを使って回してみた

タダです. ずっと起動しておく必要ないけど,特定の時間帯にだけ自動作成・削除される NAT Gateway が必要になり,SSM オートメーション を使ったパターンを考えてみたのでこの記事でどんなことをやったかを紹介します. 概要 SSM オートメーションの定期実行設…

AWS Backup のクロスアカウント管理によるバックアップを行う

タダです. 別記事で AWS Backup で EC2 の AMI 取得をやってみたのですが,今回は AWS Backup のクロスアカウントでの AMI 管理をやってみようと思って設定したのでこの記事で設定内容をまとめていきます. docs.aws.amazon.com AWS Backup のクロスアカウント…

カスタムランタイム の Lambda をコンテナイメージ化してみた

タダです. Lambda のアップデートで昨年の re:Invent でコンテナサポートされました. aws.amazon.com 自前のコンテナイメージを実行できるならカスタムランタイムで設定している Lambda の処理をコンテナイメージ化してみようと思い,下記の記事でカスタムラ…

JTF2021w で『スタートアップ企業でのAWS マルチアカウント運用の実践と普及』と題して#推しテクを発表した

タダです. 1/24 開催の「July Tech Festa 2021 winter #推しテク総選挙」にて「スタートアップ企業でのAWS マルチアカウント運用の実践と普及」という AWS 管理をしていくなかでアカウントを分割し,組織に分離したアカウントを使ってもらえるよう浸透させて…

EC2 の AMI 取得を AWS Backup で管理する

タダです. 既に多くの方の記事は出ていますが,AWS Backup を使って EC2 のバックアップ取得を初めてやったので設定方法をこの記事にまとめていきます. AWS Backup とは AWS Backup の設定 1. バックアッププラン/バックアップルールの設定 2. バックアップの…

胸熱! Aurora MySQL in-place upgrades 機能を使って MySQL 5.6 => 5.7 にアップグレードする

タダです. re:Invent 中に Aurora MySQL 5.6 から 5.7 へアップグレードすることが容易になるアップデートが出るアナウンスがあり,業務で担当しているデータベースは MySQL 5.6 なので期待していたら遂に出ました! MySQL のバージョンの追随をしていきたいと…

AWS Client VPN のユーザー認証を AWS SSO x GSuite で試した

タダです. 前回 AWS Client VPN を SSO と連携したのですが,AWS SSO と GSuite と組み合わせた時にどう動作するのかを確認したくて検証してみます. 検証シナリオ 関連記事 設定内容 動作確認 まとめ 関連記事 検証シナリオ シナリオとしては,前回 AWS SSO 認…

AWS Clinet VPN のユーザー認証を SAML 認証で行う

タダです. 前回の AWS Client VPN のユーザー認証を Active Directory で行いました.今回はもう1つのユーザー認証の方式の SAML 認証を検証した内容をまとめます.別記事でも触れてますが,AWS SSO を業務上投入してて,AWS SSO で認証できるのかを確認したかっ…