My Note

自己理解のためのブログ

Lambda

Lambdaレイヤーを利用してラインタイムPython上でgoバイナリを実行 & レイヤーをバージョン管理する

Lambdaレイヤーとは 試してみる レイヤーをバージョン管理する 今回はLambdaレイヤーについて簡単な検証とレイヤーのバージョン管理について検証しました。 Lambdaレイヤーとは docs.aws.amazon.com Lambda レイヤーは、Lambda 関数で使用できるライブラリと…

APIGateway + Lambda + Go(Echo)をSAM(Serverless Application Model)でAWSとローカルにデプロイする

はじめに 前回、APIGW + Lambda + Go(Echo)のローカル環境をSAMで構築しました。 今回は、samでローカルではなく、AWS環境にデプロイをしました。ローカルも同じ設定で利用可能です。 yhidetoshi.hatenablog.com 本記事ではAWSにデプロイする部分にだけ記載…

APIGateway + Lambda + Go(Echo)で開発するためのローカル環境をServerlessFrameworkで再現する

はじめに 構成 ローカル環境 デプロイと動作確認 さいごに はじめに 以前の記事で APIGW + Lambdaで GoのフレームワークであるEchoを動かす検証を実施しました。 実際にデプロイすることができたので今回は開発を行うためにローカル環境をServerlessFramewor…

APIGateway(REST API) + Lambda環境に echo(Goのweb Framework) を ServerlessFramework でデプロイする

はじめに コード echoのコード ライブラリをざっくり確認 環境構築 ( ServerlessFramework ) 作成されるリソース Lambda APIGateway APIGWのリソース 動作確認 備考 さいごに はじめに 今回は goのwebフレームワークであるEchoをLambdaにデプロイして簡単なA…

【アップデート】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…

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…

GuardDutyの結果をLambda ( Go ) でSlackに通知する

はじめに Slack通知を設定 アーキテクチャ 通知結果 CloudWatchの設定 Lambda関数 ServerlessFrameworkを利用したデプロイ まとめ はじめに AWSのセキュリティ対策のひとつにGuardDutyというサービスがあります。 aws.amazon.com GuardDuty はインテリジェン…

CodeBuildの実行結果をLambda(Go)でSlackに通知する

目的 アーキテクチャについて 実装について Lambda関数とCloudWatchEventの作成 Lambda関数の実装 Slackの通知結果 デプロイ方法 まとめ 目的 AWS CodeBuildの実行結果をLambdaを使ってSlackに通知するようにしました。 前回のブログで、CodeBuildでMackerel…

Mackerel監視設定の管理をServerlessで自動化

目的 アーキテクチャについて 実装について Lambda ( Go ) APIGateway Mackerel LambdaのGoコード CodeBuild 機密情報の扱い Lambdaで作成した環境変数を利用 デプロイについて まとめ 目的 mackerelの監視設定を作成、削除、更新するときに mkrコマンドを利…

TerraformでAWSの環境構築 ( Lambda )

やったこと 実行環境 lambda-functionをつくる Terraformのコード全体 まとめ やったこと Terraformを利用してAWS環境のlambda-functionを作成する。 lambda-functionの設定 ラインタイム: go1.x ハンドラー: main 環境変数をセット Goのコードをアップロー…

AWS LambdaでGoツールを作成したときにタイムゾーンに嵌った

やったこと AWS Lambdaはap-northeast-1(東京リージョン)でLambdaを作成してもタイムゾーンはUTCだった。 Go( Lambda )で現在時刻を利用する場合に参照するために備忘録的に残します。 Lambdaのタイムゾーンを東京にする 環境変数にセットする KEY: TZ VALUE…

AWS Lambda ( Go )でNatureRemoのセンサー情報をMackerelで可視化・監視して、アラートをLINEに通知してみた

やったこと ソースコード ( GitHub ) NatureRemoについて まずはAPI ( curl ) でデバイスのセンサー情報を取得する Goでデバイスのセンサー情報を取得する Mackerelにカスタムメトリクスを投稿する AWS LambdaにGoコードをデプロイしてMackerelにデータを投…

GoでAWSのAMIとSnapshotとLaunchConfigを自動削除するツールを作った

目的 削除ツールの作りと実行条件 GitHub ( ソースコード ) ターミナルで実行した結果 SSMパラメータのAMI-ID (削除しないAMI) Lambdaへのデプロイ手順 Lambdaに必要な設定 Lambdaでの環境変数値をセット Slack通知 GitHubにリリースする まとめ 目的 AWSでP…

AWS LambdaでClamAVのスキャン結果をSlackに通知する

環境 CloudWatch Logsのログデータ Lambdaの設定 CloudWatch Logsのフィルタ Lambdaのソースコード ( slack_post.py ) Slackへの通知結果 まとめ 環境 AWS Lambda ランタイム: Python3.6 連携: CloudwatchLogs (Filter有) 環境変数: SLACK_WEBHOOK_URL webho…

Serverless Framework GoでLambda-Functionをデプロイする

Macにnpmをインストールする MacにServerlessFrameworkをインストールする デプロイしたLambdaの一部抜粋 実行結果 まとめ Macにnpmをインストールする $ brew install nodebrew $ mkdir -p ~/.nodebrew/src $ nodebrew install-binary latest $ nodebrew li…