Amazon Web Service
AWS RedshiftからGoogle BigQueryに移行して、ここ数年Redshiftを使っていませんでした。 しかし、ついに従量課金のRedshiftこと、Redshift Serverlessが登場して気になりはじめ、久しぶりに遊び程度ですがRedshiftを使ってみました。 案の定、使い方は完全…
認証機能付きReactサイトを手軽に作りたかったのですが、都度バックエンドを構築するのが面倒で諦めてました。 しかし、AWS Amplifyを使えば、手軽にバックエンドを構築できるのではと試してみました。 一通り欲しかった機能は試したので、再利用可能なよう…
AWS AmplifyでLambda Functionを追加すると、JavaScriptで雛形が生成されるので、それをTypeScriptにする方法メモです。 下記ドキュメントを参考にしました。 https://docs.amplify.aws/cli/function/build-options 手順 Functionを追加すると、下記のフォル…
思い立ったらサクッとSPAサイトが作れたらいいなぁと思っていたのですが、Reactはちょっとしたサイトを作るにも大掛かりになってしまうので諦めていました。 しかし、最近ReactのRecoilを触り始めたのですが、Recoilを使うと、Reactも随分シンプルに書けるよ…
以前、AWS CloudFormationテンプレートを手書きしようとして挫折しました…。 www.kwbtblog.com その時学んだのは、CloudFormationテンプレートは人の手で書く類のものではなく、何かしらのツールを使って生成するものだなと。 そして、そのためのツールが、A…
久しぶりにAWS CLIをインストールしました。バージョン2になっているんですね。 一度設定すると中々触れる機会がなくて忘れてしまうので、自分用設定方法メモです。 基本的な仕組み ~/.aws/config でプロファイルを設定する ~/.aws/credentials でユーザー…
定期的に、AWS S3のファイルを、Google Cloud Storageにコピーしています。 コピーのやり方は色々あるのですが、ここではGoogle Cloud SDKのgsutilコマンドを使っていて、 Google Cloud SDKは、Alpine LinuxのDockerイメージを使用しています。 しかし、ある…
Google Cloud Storageで、サブディレクトリ内のファイル一覧を取得して、それらのファイルの処理をしようとしました。 しかし、ファイルがおかしいとエラーが出るので見てみたら、取得したファイル一覧に、サブディレクトリが含まれていました。 原因 前に勘…
Google Cloud Platformからメールが来ていました。 Gooble Cloud Functionsで、当初作ったFunctionのNode.jsのバージョンが6だったのですが、今回バージョン6のサービスが終わるので、そのバージョンアップ要請のメールでした。 薄々意識はしていたのですが…
以前、AWS Glueを試しに使ってみたのですが、その感想です。 AWS GlueはApache Sparkでできていて、その時初めてSparkを触って面白かったので、 そのうちGlueを本格的に使うようになったら、追々使い方をまとめようかと思っていました。 しかし、データ出力…
Spark(Google Dataproc)から、AWS S3にアクセスする方法です。 手順 Spark設定 下記のSpark・Haddopの設定をすると、SparkからAWS S3ファイルの読み書きができるようになります。 Sparkに下記AWS関連のjarファイルを読み込みます aws-java-sdk-bundle-xxxx…
AWS Lambda と Serverless Framework を使って、簡単なSlack Bot(ボット)を作ってみたので、その作業メモです。 Slack Botの作成は手順が多く手間なのですが、AWS Lambdaを使うとサーバー周りのことを気にしなくて済みます。 また、Lambdaの開発にServerless…
AWS CloudFormationの記事でも書いたのですが、AWS Lambda と API Gateway の管理は Serverless でやっています。 そこに至るまでの経緯のポエムおよび、Serverlessの使い方の簡単な説明です。 きっかけ LambdaがどういったURLで呼び出されるかは、Lambdaで…
本記事について API GatewayのオーソライザーをCORSできるようにするための設定を、Serverless Framework上で行う方法について記載します。 詳しくは下記に記載されているものを、概要を加えて転記いたします。 https://serverless.com/blog/cors-api-gatewa…
本記事について Serverless Framework を使ってLambdaをデプロイする時、オーソライザーを複数のLambdaから使えるようにするための設定について記載 手順 公式マニュアルに記載の通り、オーソライザーを使う全てのhttpイベントにおいて、resultTtlInSeconds:…
元々AWS Redshiftを使っていたのですが、結構お高く、Google BigQueryに乗り換えました。 その後、Redshift Spectrum が出て、ひょっとしたらBigQueryよりいいのではと気になっていたので触ってみた感想です。 また、Redshift Spectrumが使えるようセットア…
タイトルそのままですが、AWS CloudFormation を使ってみた感想です。 きっかけ AWS LambdaをURLから呼び出す時は、AWS API GatewayのGUIを使って、「このURLのこのメソッドの時はこのLambdaを呼び出す」などのマッピングをポチポチやっていくのですが、これ…
あるアカウントから、他のアカウントのS3ファイルを取得したい時があります。 そんな時は、そのS3ファイルをダウンロードできる専用のユーザーを作成して、そのユーザーでダウンロードするのが手っ取り早いですが、取得先S3へのアクセス権限を、取得元アカウ…
下記のようなディレクトリ構造において、バケット直下や、「dir_A1/dir_B1」直下のディレクトリ一覧をJSONで取得する方法。 s3://bucket_1/ dir_A1/ dir_B1/ dir_C1/ dir_C2/ dir_C3/ dir_A2/ dir_A3/ バケット直下の場合 $ aws s3api list-object-v2 --buck…
シングルページアプリケーションを作っていて、外部には公開したくないが、ローカル以外のサーバーに置いて配信テストをしたいことがあったので、その時の構築メモです。 要件 静的配信だし、S3を使えばサーバー立てなくてもAWSのサービスだけでできそうな感…