継続は力なり

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

2021-01-01から1年間の記事一覧

ECS Fargate の AutoScaling 設定に関するコマンドをまとめておく

タダです. AWS CLI で ECS Fargate の AutoScaling 設定をしているのですが,都度調べていたりしたのでよく使うコマンドをまとめておきます. AutoScaling ポリシーを定義・更新する 関連情報 スケジューリングで AutoScaling のスケールアウト・スケールイン…

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

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

Mackerel のカスタムプラグインを自作して FastAPI 関連プロセスを監視してみる

タダです. Mackerel のプラグインには様々なものが既に用意されていますが,そのプラグインにないものがあれば作ってみようということで,FastAPI を動かすために必要な Uvicorn のプロセスを監視するプラグインを作ってみたのでこの記事でその模様をまとめま…

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

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

Nginx + Puma + Sinatra のコンテナを ECS Fargate で起動する時にハマったことをまとめる

タダです. 業務で Nginx + Puma + Sinatra の構成を ECS Fargate で動かそうとしてハマったのでこの記事でその辺をまとめていきます. ハマったこと 設定漏れがあった箇所 Sinatra コンテナイメージビルド時のミス ECS のタスク定義の設定 設定の誤りを修正後…

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

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

Mackerel の『式による監視』を試した

タダです. Mackerel の機能で自分が指定した式を使った監視ルールや独自のメトリクスをダッシュボード に表示できる 「式による監視」があります.これは実験的機能と呼ばれ,正式機能ではないものの先行公開されています. mackerel.io mackerel.io 下記の記事…

『Google Cloud Certified - Associate Cloud Engineer』に合格するためにやったこと

タダです. 勉強の一環で5/27 に「Google Cloud Certified - Associate Cloud Engineer」を受けて合格しました.今回は自分がどんな勉強をしたかを振り返り,今後受験される方の勉強の参考になればと思い整理します.なお,自分は GCP は業務で一部使っている程で…

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

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

GitHub Actions で特定のワークフロー完了後に動作するワークフローを作る

タダです. GitHub Actions を使っていてこれまでは開発者からのpushやpull_requestのイベントをトリガーに動かしていましたが,特定のワークフロー完了後に別のワークフロー を動かすことをやったので設定をまとめていきます. 概要 GitHub Actions の定義 参…

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 -」にて「スタートアップ企業での散乱したシステムリリースフローをととのえる話」というタイトルでオンライン登壇させていただきました.開発者が安心かつスムーズなリリースフローを作り、開発生産性を…

Mackerel アンバサダーの一員になりました!

タダです. この度 Mackerel アンバサダープログラムに招待いただき,アンバサダーの一員に加えていただくことになりました! Mackerel は業務で導入することになったことがきっかけで使い始めたのですが,アンバサダープランを個人アカウントに適用いただいたの…

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が受験できるラストチャンスで今後受験で…

『コネヒトマルシェオンライン』で会社でのデータ活用に向けての取り組みを発表した

タダです. 2/25 開催のコネヒトさんのイベント『コネヒトマルシェオンライン「機械学習・データ分析」』で LT 発表させてもらいました.5分の発表だったので発表中に触れられなかった話をこの記事で書いていきたいと思います. connehito.connpass.com 発表資…

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

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

コンテナを使って gsutil で S3 のデータを GCS に同期してみる

タダです. S3 から GCP のストレージサービスである GCS に対してオブジェクトを同期させたいことがあり,定期実行させるし Fargate に登録して処理させることにしたのでその設定をまとめていきます. S3 から GCS への同期手法 関連記事 Fargate に登録する D…

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

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