koudenpaのブログ

趣味のブログです。株式会社はてなでWebアプリケーションエンジニアをやっています。職業柄IT関連の記事が多いと思います。

AWS

phpMyAdminをAWSのLambda関数URLで動かす

phpMyAdminをAWS App Runnerで運用している。VPCに繋がって、メンテナンスフリーで、低コスト、とそのくらいの用途には丁度良かったのだが、この度新規のサービス立ち上げが終了することになった。 docs.aws.amazon.com App Runnerを使っている人には周知の…

Aurora for MySQL r6g to r8g のパフォーマンス変化例

AWS

先日、昼の仕事でAuroraのインスタンス世代を上げると相応に性能が上がる、のような記事を書いた。 developer.hatenastaff.com その記事を書いているときに別件でこのブログに(規模は小さいが)同様の事例を書いていた気がしていたのだけれど、見当たらなか…

見せてもらおうか、RDSのBlue/Greenデプロイの性能とやらを

先立つ2025年1月20日に以下のようなAWSのRDS Blue/Green Deploymentsについての記事が出た。 aws.amazon.com なんでも、RDS(やAurora)をBlue/Greenデプロイで切り替える際のダウンタイムが5秒未満になるのだとか。 「マジ?」 どういう理屈でそうなるんだ…

AWSコンソールにくっついているQが結構よい

AWSをブラウザ上から管理するAWSコンソールにはだいぶ前からAWSの生成AIである『Q』を呼び出すチャットが統合されている。 画面右上に呼出しボタンがある リリースされてからかなり長い期間英語のみの対応で「AWSは生成AIを普及させる気あるんか?」くらいに…

CloudWatchメトリクスの歩き方

AWS

この記事は「はてなエンジニア Advent Calendar 2024」の33日目向けに書きました。 ↓これ。 はてなエンジニア - Qiita Advent Calendar 2024 - Qiita はてなエンジニア Advent Calendar 2024 - Hatena Developer Blog 昨日は id:tkzwtks さんのNext.jsでNEXT…

AWS Parameters and Secrets Lambda Extension vs AWS SDK

AWS

AWS SDKの圧勝。 特別な理由が無いならAWS Parameters and Secrets Lambda Extensionは用いず、AWS SDKなどで素直にSecrets ManagerやParameter StoreのAPIを呼び出した方が良い。 AWSのLambda関数からSecrets ManagerやParameter Storeの秘密情報を参照する…

オートスケールやサーバレスへの付き合い方と期待(主にAWS)

AWS

仕事の本業や副業のWebサービスホスティングにはクラウド、多くの場面ではAWS、たまにAzureなど他を使っている。 この際、時間によって変化する処理能力への要求に対応するためにオートスケールやサーバレスを活用して運用負荷やホスティングコストと付き合…

ECS Fargate + ecspresso + GitHub Actions 運用構成例

先日の記事でECS Fargate*1をアゲたので、どういう使い方の実感でアゲたのか軽くメモしておく記事。 AWS Containersのカレンダー | Advent Calendar 2023 - Qiitaにも登録しておいた。 手軽に箇条書きです。 ホスティング対象・条件など IaC デリバリ まとめ…

AWS App Runner 振り返り 2023~決別・ECSを使うぞ~

AWS

AWS Containers Advent Calendar 2023の4日目です。 qiita.com AWS App RunnerはAWSで手軽にコンテナを動かせるサービスで、2021年にGAしてから緩やかに使用しつつ所感を書いてきた。 AWS App Runner はおもちゃなのでそれ以上の用途には使ってはならない - …

ElastiCache Serverlessは作って放置してるだけで課金される雰囲気があるので気をつけろ

ElastiCache Serverlessを試していてこれはなんかイマイチだなと思ったので記事にした次第。 既に試している人はVPCエンドポイントに見覚えのないリソースが作られていないかを眺めておいた方が良いかと思う。 ElastiCache ServerlessをAWSマネジメントコン…

S3 + CloudFront での静的Webサイト配信への気持ち

AWS

AWSで静的なWebサイトを配信したいと考えたらS3 + CloudFrontの組み合わせが向いているのだろう。 ただ、ちょっと思うところはあるのでその気持ちを書く記事。 S3の静的Webサイトホスティング機能 CloudFrontのデフォルトルートオブジェクト S3とCloudFront…

AWS Amplify での Next.js SSR 所感

AWS

従量課金かつお手軽にフロントエンドをSSRするのがそれなりの関心事であることもあり、AWS AmplifyのAmplify Hostingの表層に触れたのでメモしておく。 動機 AWSコンソールでポチポチ構成できるのは大層良い AWSが弱いところはことごとく弱いのはイマイチ 状…

GraphQLのSubscriptionを試していてWebSocketが必ずしも要るとは限らないなぁと思うなど

最近GraphQLのSubscriptionを試している。 GraphQLはクエリ言語で、そのスキーマをどう実装するかは自由なわけだけれど、Subscriptionのようなサーバからクライアントへの通知の実装は「WebSocketでしょ! だからWebSocket使えないと厳しいよね」のような感…

破棄し忘れたクラウドリソースに半年間金を払い続ける方法

AWS

79,478 私の嫌いな数です。 さて、個人にとって79,478円はなかなか大きい金額だと思います。 一体どうやったらこのような金額を支払うことができるのでしょうか? AWSを例にとって解説します。 この記事ははてなエンジニア Advent Calendar 2022の28日目です…

AWS DMSでRDS for MySQLのデータベース複製を手抜きできるか?

AWS

AWS Database Migration Service(以下DMS)はAWSのなんかいい感じにデータベースのデータを移行できるサービス。 仕事でもプライベートでもデータベースを扱っていると、あるデータベースを別の場所に複製したい場面がある。RDS for MySQLから、別のRDS for…

lambdynamo-counter

lambdynamo-counter とは? AWSのLambda関数とDynamoDBで構成されたアクセスカウンタです。 github.com ここしばらく息抜きに20世紀風のホームページを作っている。 https://7474.github.io/homepage/ ホームページにはアクセスカウンタが必須なのだけれど、…

AWS App Runner 振り返り 2022

AWS

典型的なWebアプリケーションをホスティングするにあたっては何も考えなくても良しなにやってくれるPaaS が好みで、AWS App Runnerはリリースされた前後から多少注目していた。 所感のまとめ記事を書いてからは積極的触れてはこなかったのだけれど、半年も経…

クラウドやWebサービスのプレビューとかGAとかについての散文

Web界隈ではある機能がプレビュー中だとか、GAされたとかあったりする。 プレビューは「未完成だけれど使ってみてね」状態で提供されること。別の言葉だとベータ版とか。 GAはGeneral Availabilityの略で「一般に提供されるようになった」のような意味らしい…

LaravelのFilesystem S3アダプタ管理下のオブジェクトをバケット間コピー

Laravelには色んな種類のファイルシステムを操作する便利機能が用意されていて当然その対象にはS3も含まれている。 laravel.com ちょっとS3バケット間でファイルをコピーしたいと思った。 こんなメソッドシグネチャで考える。

Next.jsキャッシュ戦略はこんな感じで行こうと思う

AWS

Next.js セカンドインプレッション - koudenpaのブログで、書いた通りNext.jsとはしっかり付き合いはじめて日が浅いのだけれど、横目で眺めていた時期と主体的に触って感じたことからどういう構成をとるのかの考えが固まってきたので書いておく。 暫くたって…

Laravel を AWS App Runner で動かしてみる

App RunnerなどのHTTPリクエストをベースにしたコンテナランナーでLaravelのようなフルスタックのWebアプリケーションフレームワークを動作させる構成の例は意外に見つからない。 そもそもLaravelの公式には本番運用のノウハウはあまり提供されていない(For…

AWS App Runner はおもちゃなのでそれ以上の用途には使ってはならない

2026-04-01追記: 2026-04-30で新規立ち上げ停止なので、おもちゃとしても遊べなくなる。 docs.aws.amazon.com おもちゃとして遊ぶにしても別のコンテナランナーにした方がよい。というのが現状の結論だ。 絶対にやめたほうがいい。 コンテナ運用したいがAWS…

terraform import でS3バケットをインポートした時の備忘

AWS

Terraformにある既存のリソースのインポート機能を試してみたかった。ちょうど完全に手で(AWSコンソールで)管理しているS3バケット群に新しいバケットを追加したくなったので、ちょうどいいからTerraform Cloudともども試してみた。 この手のIaC管理に既存…

Amazon EFSへのリソース配置をAWS CLI + 踏み台サーバでやってみる

先にAWS Lambdaの関数実行時にEFSをマウントしてみた。その時にはファイルの出力先として使ってみたのだけれど、入力ファイルの配置先としても使えると思う。Lambdaは何かと容量制限があるが、EFSなら容量制限とは無縁だ。Lambda + EFSの記事でも機械学習結…

AWS Lambda上のChromeでHTMLをレンダリングしてS3やEFSに保存した

Twitterのタイムラインを動画にしたいと思ったのでしてみた - koudenpaのブログ からの流れでHTMLをレンダリングして画像を取得することをいくらか試している。 先には.NET Framework、Windowsのローカルマシンで試したので、次はクラウドでと考えてAzure Fu…

画像がえっちかコンピュータに合議制で判断してもらう

昨今画像が性的だとか話題になっています。どの辺りから性的なのか、えっちなのかは見る人の主観によるところが大きいです。 これに対して、昨今では無限のクラウドの力で画像が性的かは簡単に判定することができます。 それが正しいかは不明ですがブレない…

Redashの初期設定が変わっていて???状態だった話

追記:変わっていたのではなく、参照するAMIがカスタマイズされているものなだけだった。 https://redash.io/help/open-source/setup の手順を見て、 https://docs.bitnami.com/aws/faq/get-started/find-credentials/ のAMIを動かしている。アホか? 理由が…

AWS CDKでMackerelのAmazon EventBridge通知チャンネルのイベントバスとルールを作る

最近に MackerelのEventBridge通知チャンネル がリリースされたことで以下の目論見が完遂した。 koudenpa.hatenablog.com どうせなら近々にMackerelの通知チャンネルに追加される予定のAmazon EventBridgeを起点にしようと考えた。すると、必然的にクラウド…

Greengrassなクリリンが太陽拳するまでを支える技術

koudenpa.hatenablog.com は以下のような構成をした。 たまに作図すると楽しい。 何かしらの手段で太陽拳指示トピックにメッセージを発行する。 Core上で動作する関数は太陽拳指示トピックへのメッセージに応じてGPIOコネクタの操作メッセージを発行する。GP…

AWS IoT Greengrass備忘2020初春

CDKでのGreengrass管理をしてみた際の備忘。