クラウド
Athenaに投げるSQLを別ファイルにしておきたい。 こうしておくと、管理もしやすくなり、SQLFluffでCIしたりできるようになる。 ディレクトリ構造 同じ階層にathena.pyという名前でpythonスニペットと、sample.sqlという名前のDMLを置いておくとする。 C:. at…
入れ子のjsonになっていると見せかけて、json文字列が入っている場合に、どのようにすればAthenaでデータを取り出すことができるか確認した。 データを見てみる 以下のようなデータを考える。 {"key1": 1, "key2": "{\"key21\":2, \"key22\":3}"} {"key1": 4…
S3イベント→SNS→SQSの構成を試した。 SQSの先にはLambdaが繋がっているようなイメージ。 意外と設定をズバリ書いてくれいてる文献がなかったのでまとめる。 設定手順 S3バケットの作成 イベントを起こすS3バケットがなければ、バケットを作成する。 SNSの設…
CloudTrailの証跡機能にだいぶ詳しくなったので、個人的なまとめです。 CloudTrailの概要 CloudTrailはアカウントの操作ログを記録し、ログを Amazon S3 バケットに送信することができます。 90日分の管理イベントを無料で保存、検索することが可能です。証…
複数種のログが混ざって格納されるロググループにサブスクリプションフィルタを設定して、特定種類のログのみ取り出したいのですが、パースとフィルターをする方法に癖があったのでまとめました。 やりたいこと docs.aws.amazon.comCloudWatch Logsでは、収…
create-export-task APIで特定のログストリームだけエクスポートする方法を調べました。 docs.aws.amazon.com モチベーション AWS CLIからcreate-export-task APIを叩くと、CloudWatch Logsの特定のログストリームのログ を取ることができる記事を書きました…
fargateからAWS CLIでcreate-export-task APIを叩き、CloudWatch Logsからログをエクスポートする方法を考えてみました。 モチベーション CloudWatch Logsに格納されたログを取り出して、別のシステムに移したいような要件があると思います。 例えば、複数シ…
記事執筆現在、CloudWatch Logsのサブスクリプションフィルタ数には上限がありますが、どこに書いてあるか分かりにくかったのでメモです。 サブスクリプションフィルタについて CloudWatch Logsに流れ込んでくるログデータを、フィルタリングして、リアルタ…
aws:ViaAWSService キーで、AWSサービスが代理で行うリクエストは、IP制限を適用しないIAMポリシー設定にする設定です。 aws:SourceIp キーの注意点 aws:SourceIp キーは特に企業などで、社内ネットワーク外から操作ができないような設定をするために、よく…
別のアカウントのCloudWatch Logsに格納されたログデータを、別のアカウントのS3に持ってくる場合です。 自分のアカウント内の記事はよくありますが、クロスアカウントでやってみた報告がないので書きました。 やりたいこと 以下のような構成を実現したいで…
CloudWatchアラームのアラーム名を日本語にすると、SNSの通知メールがおかしくなる件について調査しました。 背景 システム監視でCloudWatchアラームを使い、問題があった時にSNS経由でアラートメールを飛ばしています。 基本的に英語でメールしていますが、…
CloudTrailの証跡配信エラーを検知する方法を調べました。 CloudTrailの証跡は配信失敗する可能性がある AWS上で発生したイベントを記録してくれるCloudTrailは非常に便利なサービスで、証跡を作るだけでAWSで行ったログをS3などに出力することができます。 …
AWS FESをIPアドレスでマウントする方法です。AWS公式でもガイドがあるのですが、調べても意外と出てこなかったのでメモ書きです。 https://docs.aws.amazon.com/ja_jp/efs/latest/ug/mounting-fs-mount-cmd-ip-addr.html IP アドレスを使ってマウントする E…
C#でAWS Lambdaの開発を始めるのにハマったことまとめです。 (2019年11月時点の記録です) はじめに .NETでAWS Lambda用のコードを開発する用事があったのですが、C#は右も左も分からない所からのスタートで、とにかくハマりまくりました! 普段からC#を使わ…
CloudWatch エージェントから送るログのログストリーム名にインスタンスIDを入れる方法のメモです。 公式ドキュメントに記載があるのですが、結構深いところにあり、見つけるのに苦労しました。 公式の記載 CloudWatch エージェント設定ファイル: logs セク…
CloudWatch Agentの設定方法をまとめました。 統合 CloudWatch エージェントとは CloudWatch エージェントで、いわゆるカスタムメトリクスの収集とログの収集が可能です。 統合 CloudWatch エージェントを使用すると、以下のことを実行できます。 オペレーテ…
CloudWatch新座者のため、統合CloudWatch エージェントとCloudWatch Logs エージェントの違いがまったく分からずハマりかけたのでメモです。 統合CloudWatch エージェントとCloudWatch Logs エージェント どっちもCloudWatch Logsにログを送信するためのエー…
AWS ECR概要と利用手順をまとめました。 ECRとは Amazon Elastic Container Registry (ECR) は、完全マネージド型の Docker コンテナレジストリです。 Amazon ECR(Docker イメージの保存と取得)| AWS 料金 下図はAWS公式ページ(料金 - Amazon ECR | AWS)…
9/25のDesignOne Go #5で登壇してきたので記録です。 なにをしたの AWSでGo言語を使う方法を紹介してきました。 あと、Go言語でDockerコンテナを作ってFargateで動かしてみたので、ざっくりですが説明しました。speakerdeck.com 感想 FaaSでGoがサポートされ…
Lambda無限ループでクラウド破産しないためにどうしたらいいか考えました。 Lambda無限ループ AWSのFaaSであるLambdaはサービスへのなんらかのアクションをトリガーにサーバーレスで稼働してくれます。 ...が、一定の条件を満たすと「無限ループ」になってし…
S3に格納されたファイルがあって、バッチ処理するためのdockerコンテナが作りたかったのでやって見ました。 言語はGolangです。 バッチ処理のやりたいこと 今回はS3に格納されたファイルをダウンロードしてきて、違う名前で再アップロードするバッチ処理です…
Kinesis Analyticsを使ってみたので、使い方をまとめる。センサーからIoTでデータを受信し、ニアリアルタイムで処理して、DynamoDBに格納するところまで。 システム概要 Kinesis Data Streamの作成 ストリーム名の決定 シャード数の決定 AWS IoTの設定 エッ…
ScalaでAWS Lambda用のjarファイルを作りました。ScalaでLambdaのようなPaaSを利用したいと思い、jarファイルを作ることにしました。今回は@yoshiyoshifujiiさんのqiita記事(Amazon LambdaでScala - Qiita)を参考に、Lambdaで動かすことを目標にしています…
GKEのクイックスタートをやってみた記録と、派生してjupyter notebookのイメージを立てた記録。これからはkubernetesの時代だ!と思ってはや数か月...。ぜんぜん自分で手を動かす気配がないので、一念発起して立ててみた。 GKEのクイックスタート 今回はGCP…
AWSでEFSを使う用事があったので、Linuxでの設定方法を調査した。 Amazon Elastic File Systemとは Linux向けのファイルシステム。 特徴は以下のような感じ、 ・EC2およびオンプレでマウント可能 ・フルマネージド ・スケーラブル ・汎用/最大 I/O の二つの…
lambdaからlambdaを呼びたい! でも調べるとJavaScriptの例しかなかった...。 Pythonで呼びたいのに!ということでやってみた。 lambdaからlambdaを呼ぶとどんないいことがあるの? lambdaからlambdaを呼べると、例えばこんなことができるようになる。 あと…
AWSでは可視化に関するサービスが充実している。 例えば、センサーデータなどをモニタリングしたい場合はKibanaやQuickSightなどで可視化すれば良い。 一方で、もっと泥臭いこと、例えば収集したデータから算出したデータを使って、独自のレポートやHTMLなど…
AWSソリューションアーキテクトアソシエイトレベルを受けることにしたので、1月半ほど勉強して取得した。 新テストの受験記が少なく困ったので、どんな感じで勉強したかだけ記録しておく。 AWSソリューションアーキテクト - アソシエイトとは aws.amazon.com…
AWS IoTにHTTPでPOSTしたいが、極力今ある環境をいじりたくないので、 既にインストールしてあったjavascriptで頑張ってみた。 HTTPでPOSTする方法の調査 基本的にMQTTでpublishするものなので、HTTPで送信する方法は情報が少なかった。 でも、必ずしもMQTT…
S3へのファイルのアップロードを自動化したかったので、pythonからboto3を使って行う方法を調べた。要件としては、 ・ファイル(オブジェクト)を上げたい ・CacheControlなどメタデータをつけたい。s3.Bucket("bucket_name").put_object()を使ってアップし…