mazyu36の日記

某SIer所属のクラウドエンジニアのブログ

CDK alpha moduleを使用してAWS GlueからVPC内のAurora PostgreSQLにアクセスする

AWS Glueを使用してRDS内のデータのETLを行う機会があったので、CDKで実装してみました。いくつかハマった点もあったのでその記録です。 今回は以下のようにRDSにアクセスするCrawlerとジョブを実装します Glue Crawler からRDSにアクセスしてData Catalogを…

AWS CDKで作ったAurora グローバルデータベースは運用できるのか(2024 ver)

以下の記事においてAWS CDKでAurora グローバルデータベースをCDKで構築する方法、また運用が行えるかの解説を行なっていました。 記事内では「計画外フェイルオーバー」時のクラスターの切り離し作業等を行った際に、AWS CDKによる変更適用・その後の運用が…

Step Functions Distributed Mapを完全に理解したい(+ AWS CDKで実装する方法)

最近の個人的イチオシ機能として、Step Functions で分散処理が行える DIstributed Map があります。分散処理させて問題ないかなどの考慮は必要ですが、適合するユースケースでは大幅な処理時間短縮も可能であり、効果が大きい機能だと思います。 aws.amazon…

AWS Batch Deep Dive を CDK で実装し、AWS Batch (ECS on EC2) を理解する

AWS Batch の理解があやふやな状態のまま使っていたので、学習し直すために AWS Batch Deep Dive(以下のWorkshop)を一通りCDKで実装してみました。 ECS on EC2 における AWS Batch について、様々なパターンのジョブを学習可能であり、コンテンツとして非…

AWS IoT Core Rule で Protocol Buffers を直接デコードする

AWS Iot Coreのルールエンジンで Protocol Buffers を直接デコードするという少々マニアックな話です。 以下のAWS公式ブログでも紹介されている内容です。 aws.amazon.com 本機能は2022/12 に追加されています。 aws.amazon.com

Amazon Bedrock 超入門はキャッチアップに非常に良かった

Bedrockのキャッチアップしたいなーと思いつつ、全く触れていなかったところ以下の書籍が発売されたので、購入し色々実装してみました。 感想としてはBedrockでできることやAPIの使い方が学習でき、周回遅れ気味な私には非常に良かったです。 Amazon Bedrock…

JAWS-UG CDK支部 #12で登壇してきた

ちょっと前の話ですが、2024/2/21 の JAWS-UG CDK支部#12で登壇してきました。 speakerdeck.com 以下イベントのリンクです。 jawsug-cdk.connpass.com CDK 支部は#7 でも登壇させていただいており、2回目になります。 mazyu36.hatenablog.com

CDKのL2 ConstructでVPCのDual Stackを設定しIPv6による通信を試す

VPCのL2 ConstructでDual Stackがサポートされるのを待っていたところ、v2.121.0でサポートされていました。 今回はこちらを試してみます。 AWS CDK v2.121.0 新機能✨#cdk_releases1/ Vpc L2コンストラクトでDual Stackを構成してIPv6を使用可能に。ipProtoc…

Global AcceleratorのWorkshopをCDKで実装する

業務でGlobal Acceleratorを検討する機会があったのですが、恥ずかしながら使用したことがないため勉強がてらCDKで実装してみました。 題材としては以下のWorkshopのGlobal Acceleratorパートを使用しています。 catalog.workshops.aws 実装は以下にあります…

AWS App Runner Workshop を AWS CDKで実装する

App Runnerの学習にあたり、以下のWorkshopをCDKで実装してみました。そのまとめです。 catalog.us-east-1.prod.workshops.aws コードは以下にあります。 github.com ※App Runnerが何であるかは一切書いてありません。基礎知識を得たい場合は以下の記事がお…

ハンズオンやWorkShopをAWS CDKで実装するようにしたら学習効果が上がった話

🎄本記事は、AWS CDK Advent Calendar 2023 の 18日目の記事となります AWSのサービスを学ぶときにハンズオンを行うことは多いと思いますが、最近は基本的にCDKで実装しています。 メリットや具体的な流れを簡単にまとめます。

AWS CloudFormationのGit Syncを使って、AWS CDK用のGitOpsパイプラインを構築する

🎄本記事は、AWS CDK Advent Calendar 2023 の 5日目の記事となります 前回、CloudFormationのGit SyncをCDKで使う方法を紹介しました。 mazyu36.hatenablog.com 今回はこちらを活用して、AWS CDK用のGitOpsパイプラインを組んでみたいと思います。

AWS CDKでCloudFormationのGit Sync機能を使用してデプロイする

CloudFormationのGit Sync機能が追加されました。 aws.amazon.com こちらをAWS CDKで試してみたので、やり方などまとめます。 ※CDKでできないかなーと試している時に、Xで以下のポスト見かけて参考にさせていただきました。感謝。 CloudFormation git sync w…

モノレポなNext.jsのアプリケーションをAWS Amplifyでホスティングする(w/ AWS CDK)

タイトルの通りですが、Next.jsのアプリケーションをAWS Amplifyでホスティングする機会があったので試してみました。 また趣味ですがAmplify自体はCDKで実装しています。

Step Functionsでエクスポネンシャルバックオフやジッターの設定が便利になった

個人的に待ち望んでいた、Step Functionsにおけるエクスポネンシャルバックオフの上限設定や、ジッターの設定が追加されたので試してみました。 2023/9/7のアップデートにおける enhanced error handling で追加されています。 aws.amazon.com

【CDK】HTTP API Callを使ったIntegration testを試す

CDK integ-tests モジュールを使用したintegration test(以下integ test)を試してみたのでその記録です。 CDKでdeployしたリソースに対して、動作確認用のinteg testを走らせるということができます。 以下がAWS公式の解説ブログで、基本的な使い方や仕組…

【CDK】Connectionsのメソッドを使用して楽に通信設定を行う

CDKだとIConnectableインタフェースのプロパティであるconnectionsを使うことで通信の許可設定を容易に行えることを最近知りました。 今まではセキュリティグループ(以下SG)を個別に定義し、インバウンドルールを設定ということをやっていましたが、上記の…

Glueの個人的チートシート

AWS Glueは個人的に好きなサービスでよく使います。 自分がよく使う情報源やメモについてまとめておきます。 ※PySparkジョブをよく使うのでそれ関連のメモが中心です

PySparkの個人的チートシート

PySparkを使用する機会が増えてきたので、個人的によく見返しすメモをまとめておきます。全般的にRDDではなくDataFrameを使用しています。 AWSでSparkが使えるサービスと言うとGlueやEMRが定番の印象ですが、最近ではAthenaやRedshiftでも使えるようになりま…

Spring BootでAWS Advanced JDBC wrapperを使ってAurora PotgreSQLに接続する

最近Java(Spring)を使う機会があり、DB接続周りでAWS Advanced JDBC wrapperを試してみたのでその記録です。 やりたいことは以下です。 Secrets ManagerからDBの認証情報を取得する。 Failoverに対応する。 WriterとReaderでクエリを振り分ける ※なお筆者…

【レビュー】Jabra Speak2 40を買ってみた

タイトルのスピーカーフォンを買ってみた記録です。 検討時に日本語のレビュー探したのですが、私が探した限りではなかったので人柱的に買ってみました。 スピーカーフォン導入。ヘッドセットつけなくていいから会議多い時めっちゃ便利ね pic.twitter.com/tY…

JAWS-UG CDK支部 #7で登壇してきた

タイトルの通りですが、JAWS-UG CDK支部で登壇してきました。 speakerdeck.com イベントのリンクは以下です。 jawsug-cdk.connpass.com

AWS IoT CoreでMQTTを試す + Topic Ruleを活用したデータ基盤を構築する

以下のAWSにおけるMQTT通信シリーズの続編です。 今まではMQTTブローカーとしてのAmazon MQとAWS IoT Coreの比較、Amazon MQのフェイルオーバーを考慮したMQTTの実装例を解説しました。 mazyu36.hatenablog.com mazyu36.hatenablog.com 今回はAWS IoT Core(…

Amazon MQで Multi AZなMQTTブローカーを構築し、フェイルオーバーを考慮したMQTT通信を行う(AWS CDK, paho-mqtt)

前回の記事で、AWSにおけるMQTTブローカーのサービスに比較について記載しました。 mazyu36.hatenablog.com 今回はその中でもAmazon MQを使用し、Multi AZであるMQTTブローカーを構築した上でMQTT通信を試してみました。 ポイントとしては以下です。 Amazon …

AWSにおけるMQTTブローカーを比べてみる(Amazon MQ, AWS IoT Core)

AWS上でMQTTを使う機会があったのですが、MQTT自体を全く知らなかったので、基礎知識整理しつつ関連サービスを触ってみて感じた違いを整理してみます。 (内容としては初心者向けです。間違っているところあれば教えてください。) 今回試してみたサービスは…

【CDK】 Aurora Serverless v2に対応したL2 ConstructのAPIを使用して旧APIからの移行を試す

AWS CDK v2.82.0でAurora Serverless v2が正式にL2 Constructに対応しました。 AWS CDK v2.82.0 新機能✨#cdk_releases⑥Aurora Serverless v2を利用可能に。設計時の判断を記述するArchitecture Decision Record (ADR) も公開されているため興味がある方はご…

VPC LatticeのService Networkは送信元のVPCと受信側のServiceを関連付ければ良い

前回のブログでVPC LatticeをAWS CDK(L1 Construct)で構築してみました。 mazyu36.hatenablog.com とりあえず動作はしましたが、VPCとService Networkの関連付けや、Service NetworkとServiceの関連付けのところはあまりよくわかっていませんでした。 そのた…

VPC LatticeをAWS CDK(L1 Construct)/ CloudFormationで実装する

re:Invent 2022でも話題になっていたVPC Latticeが2023/3/31にGAしました。 aws.amazon.com キャッチアップついでにAWS CDK(L1 Construct)で実装したので、その内容をまとめます。なお L1 ConstructはCloudFormationとほぼイコールなので、CloudFormation…

個人的AWS ログ管理のベースライン

AWS

AWSのログ管理についてはいくつか考えるポイントがあると思います。 どのログを保存するか。 CloudWatch Logs(以下CW Logsと記載)とS3のどちらに保存するか、もしくは両方に保存するか などなど。 システムの特性によるところも多いかと思いますが、自分の…

CodeBuildのbuildspecはCDKのBuildSpec.fromObjectで作成するようにした

タイトルの通りですが、AWS CDKを使い始めてからAWS CodeBuildのbuildspecはBuildSpec.fromObjectを使って生成しています。 個人的にはbuildspecの管理がかなり便利だと思っているので、簡単にまとめます。