My Note

自己理解のためのブログ

GitHub Actions からCodeBuildを呼び出してdocker build する

概要 github-actions 概要 以前にGitHub Actionsでビルドする内容について書きました。そこで今回はビルドの処理をGitHub ActionsからCodeBuildを呼び出して CodeBuildでビルド処理を実行します。 yhidetoshi.hatenablog.com この記事の DockerビルドとECRへ…

GitHub ActionsでSPA(CloudFront + S3)にVueアプリをデプロイする

はじめに GIthub Actons OIDCプロバイダを作成 AWSの設定 GitHub Actionsのコード 利用するgithub-actionsのライブラリ はじめに GitHub Actionsで vueアプリをビルドしてS3にデプロイする GIthub Actons OIDCプロバイダを作成 AWSでGitHub ActionsのOIDCプ…

GitHub Actonsで利用するOIDCプロバイダをTerraform(AWS IAM)で作成する

はじめに Terraform はじめに 前回の記事で Github AcrtionsにOIDCでAWS認証してECRにコンテナイメージを登録しました。 前回は手動でAWSコンソールでポチポチ作成したので今回は OIDCをプロバイダをTerraformで作成しました。 terraform以外の部分は前回記…

GitHub ActionsでOIDCを利用してECRにコンテナイメージを登録する

はじめに OIDCプロバイダーを作成 Github Actionsを設定 はじめに Github Actionsで AWSのアークセスキーとシークレットキーを設定しなくてもOIDC ( OpenID Connect) で認証できるようになりました。 鍵情報をセットしなくて済み鍵を管理する必要もないので…

terraformのコードをGitHub Actionsで構文チェックする

はじめに ソースコード はじめに terraformのコードをgithub-actionsでコードチェック(fmt, validate)する設定を書きました。 ワークフローは github/workflows にyamlファイルをセットすれば実行されます。 今回の実行内容 mainブランチに対して "pull re…

TerraformでMackerelのAWSインテグレーションを設定する

はじめに 設定 Terraformの構成 IAMロールの作成 Mackerelのインテグレーション設定 おわり はじめに 前回の記事でMackerelの設定をterraformで行ったので、今回は "AWSインテグレーション" を設定します。 今回もTerraformの実行は 前回の記事と同様に terr…

Terraform ( terraform-cloud )でMackerelをコード管理する

はじめに 環境 やること terraformのコードと構成 terraform-cloudの設定 terraform-registry terraformの構成 serviceを作成 terraform import roleを作成 monitorを作成 notificationを作成 alertsを作成 おわり はじめに 2022年の一本目の記事になります…

"terraform state mv" の備忘録

はじめに 環境 state mv を実行する はじめに 今回はTerraformを利用していると必要となってくる stateファイルを変更する場合の備忘録になります。 環境 Terraformのバージョン Terraform: v1.0.1 リモートのTerraform環境 terraform-cloud www.terraform.i…

GoでSlackにMessageを投稿する( slack-go/slack )

今回は下記に書いたSlack APIでメッセージをPostする内容の更新版になります。 yhidetoshi.hatenablog.com 今回利用するライブラリは slack-go/slackです。 スター数も多いですしさまざまな機能が実装されているので今後はこちらを使っていこうと思います。 …

【アップデート】GuardDutyの結果をLambda ( Go ) でSlackに通知する

はじめに SlackAppを利用する パッケージ構成 EventBridgeについて Slack通知について さいごに はじめに 今回は以前に書いた "GuardDutyの結果をLambda ( Go ) でSlackに通知する" 内容をアップデートしました。 主な目的はslack通知に利用するライブラリを…

Lambda@Edge( Nodejs )でリダイレクト設定をする

はじめに Lambda@Edgeについて コードと動作確認 はじめに 今回はLambda@Edge( Python3 )を使ってリダイレクト設定しました。 本記事ではLambda@Edgeについてしか触れないので、構成やCloudFront、Lambda@Edgeの設定については下記の記事に記載しています。 …

CloudFrontとLambda@Edge ( Nodejs )とS3で静的ページにIPアドレス制限とBasic認証を設定する

はじめに Lambda@Edgeについて Basic認証とIP制限について 動作確認について はじめに 今回はLambda@Edge( Nodejs14 )を使ってBasic認証とIP制限を設定しました。 本記事ではLambda@Edgeについてしか触れないので、構成やCloudFront、Lambda@Edgeの設定につ…

CloudFrontとLambda@Edge(Python3)とS3でリダイレクト設定をする

はじめに 構成 リダイレクト設定(Lambda@Edge) パターン1: すべてのリクエストを別ホストにリダイレクト パターン2: 特定のパス配下のアクセスを同じホストの別パスにリダイレクト パターン3: 特定のパス配下のアクセスを別ホストにリダイレクト(同じパス…

CloudFrontとLambda@Edge ( Python3 )とS3で静的ページにIPアドレス制限とBasic認証を設定する

はじめに 構成 CloudFrontについて Lambda@Edgeについて コードについて( Python3 ) CloudFrontとS3について Behaviorの設定 動作確認 Lambdaの機能を使ったテストイベント クライアントからの実行 さいごに はじめに 今回はCloudFrontとLambda@Edge ( Pytho…

OSSの go-datadog-api にPullRequestを送った

この記事がはてブロの100本目の記事になります!!ついに!という気持ちです。 今回は、Datadogに触れる機会が増えてきてDatadogのAPIレファレンスを見ていて何かAPIを実装したいと思って以下のGitHubリポジトリにPRを送りました。 github.com このリポジト…

EKS ( Kubernetes ) のWorker NodeとContainerのログをDaemonSetのFluentdでS3に保存する

はじめに 環境と構成 保存するログの対象 DaemonSetについて DaemonSetで利用するFluentdについて IRSAについて kustomizeを利用してデプロイする base/ で用意するマニフェスト daemonset.yamlについて overlays/ で用意するマニフェスト fluent.confについ…

Slackでusergroupのidを確認する

はじめに 方法 まとめ はじめに DatadogやMackerelなどで障害時にグループメンションで通知したい場合にslackのusergroup-id が必要だったので、その確認方法についての備忘録。 方法 usergroupの一覧を取得するにはslack apiの usergroups.list を使います…

Terraform学習メモ1 ( mapとfor_eachでECRを作成 )

mapとfor_eachについて Terraformのコード MapをイメージするためにGoで定義した場合 Terraformが0.12系がリリースされてから使える関数が増えてきているのでTerraformをまた勉強しはじめました。 そのときの "学習メモ" として書いていきます。(あくまで学…

Amazon EKS on EC2 で mackerel-container-agentを使ってPodを監視する

はじめに 環境構築 マニフェストを作成 commonディレクトリについて ServiceAccountとClusterRoleBindingについて nginxディレクトリについて ConfigMapについて ( pluginを利用した監視設定 ) Deploymentについて Mackerelの管理画面 ( モニタリング結果 ) …

今年買ってよかったもの(開発環境周り)

2019年もう終わりですね!今年は家でリモートワークすることも多く、個人開発する時間もだいぶ増えたので 環境を整えました。その中で買ったよかったものを書いていきますー! 椅子 前の椅子が壊れかけて...ニトリで試しに座ったらめっちゃよかったので購入 …

mackerel-client-goを使ってMackerelのグラフにアノテーションをする

はじめに アノテーションする 結果 さいごに はじめに 今回はMackerelのグラフにアノテーションをしますー! アノテーションについては↓の記事をみてください! mackerel.io アノテーションする 今回はmackerel-client-goを使ってグラフにアノテーションをし…

ECS Fargateで mackerel-container-agent をサイドカーで動かす

はじめに タスクを定義する 環境変数とSSMパラメータストア Mackerelの管理画面で確認 さいごに はじめに ECS Fargateで mackerel-container-agent をサイドカーで動かしてコンテナを監視します! 前回の↓記事でECS FargateでGoコンテナをデプロイしました。…

ECS FargateでBlue/Greenデプロイをする

Blue/Greenデプロイについて アーキテクチャとデプロイフロー ALBとターゲットグループを作成する ECS Fargateのサービスを作成する CodePipelineについて CodeBuild buildspec.yml taskdef.jsonについて 機密情報の取り扱いについて ( SSM連携 ) CodeDeploy…

ECS FargateでGoコンテナを起動してローリングアップデートする

はじめに アーキテクチャ GitHub ECRに登録するGoコンテナを作成する docker imageを作成 ECRにdocker imageをpushする ECS Fargateのタスクを作成する ECS Fargateのサービスを作成する ALBを作成する サービスをつくる CodePipelineを作成する Source ( Gi…

GoとMySQLの学習メモ ( DB接続とデータ取得 )

Go

今回勉強するにあたってこの記事を利用しました。 tutorialedge.net Goでmysqlに接続するために今回は↓のドライバを利用しました。 github.com ■ DockerでMySQLを起動してGoからDBを操作する。 mysqlコンテナの作成 version: '3' services: db: image: mysql…

mackerel-client-goにfind invitations apiをコミットした

久しびりにブログを書きます。 なるべく小さなことでも書こうと思ってたのですが、風邪やらで体調崩したり週末バタバタしてたりで全然かけなかった。 これからは、小さいことでも自分の備忘録的に書いていきたいー。 今回はmackerel-client-goでユーザの招待…

Google App Engine(Go)とechoを使ってAPIを作ってみた ( 結果の可視化はMackerelで )

はじめに アーキテクチャとフロー Lambda ( Go )のクライアントについて デプロイについて GoogleAppEngine ( Go ) について echoについて echoでやっていること Basic認証 スクレイピングとjson生成 GAEへのデプロイについて 結果 さいごに はじめに Goとec…

AWS請求額をGoとMackerelで可視化して監視・通知する

はじめに アーキテクチャ Lambda ( Go )について 結果 ( Mackerelの画面 ) 監視設定とアラート通知 ( LINE ) デプロイ さいごに はじめに 今回もMackerelを使ってメトリクスを可視化する系の記事です。今回は監視と通知もしています。 AWSの請求額をグラフ化…

金とプラチナの価格をGoとMackerelで可視化する

はじめに アーキテクチャ Lambda ( Go )について デプロイ 結果 ( Mackerelの画面 ) さいごに はじめに 今回は、Goでスクレイピングして金とプラチナの価格をMackerelで可視化します。 yhidetoshi.hatenablog.com こちらと同様にMackerelを使った可視化です…

GoogleAnalyticsのPV数をGoとMackerelで可視化する

はじめに アーキテクチャ Google Cloud Platformについて GoogleAnalyticsについて Lambda ( Go )について 認証ファイル(json)のセット方法 認証ファイルを環境変数にセットできるように加工 GoogleAnalyticsから欲しい情報を取得する Lambdaの定期実行 Mack…