しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Azure

2024/10/31 に多くの Azure サービスで TLS 1.0 / TLS 1.1 サポートが廃止されるので対応する

以下で公開されているアドバイザリー通り、今月末の 10/31 に Azure では全体的に TLS 1.0 と TLS 1.1 のサポートが廃止され、11/01 からは各種 Azure サービスを利用するためには TLS 1.2 以上が必須となります。対象となるサービスが非常に多いため、影響…

Application Insights SDK でのパフォーマンスカウンターの収集をオフにする

最近は Log Analytics のコストが高いと言う相談をよく頂くので、本番環境のようにログが多くなるような環境向けにはログレベルの調整やサンプリング、そもそも送信するテレメトリをアプリケーションレベルで減らすと言う対応を提案するのですが、内部で使っ…

Terraform Provider for AzureRM を v4 系にアップグレードする

Terraform Provider for AzureRM のウォッチャーであれば v4 のリリースが近いことを知っていたと思いますが、v3 のリリースノートで v4 での変更点の Opt-in が紹介されてから意外に早くリリースされました。正直なところ目立った新機能とかはなく Provider…

Azure Cosmos DB SDK for .NET を使うと再起動後に常に HTTP Faulted エラーが出るのを回避する

App Service 上に C# と Cosmos DB を使って作ったアプリケーションをデプロイすることは非常に多いと思います。アプリケーションを暫く運用した後に Application Insights を確認すると、以下のような HTTP リクエストが常に Faulted エラーになっているこ…

Dependabot が作成した Pull Request でも Azure Static Web Apps のプレビュー環境が作成されるようにする

以前に書いた通り Static Web Apps と App Service を組み合わせたアプリケーション向けに、GitHub で Pull Request が作成された時にプレビュー用の環境を作るようにして運用しているのですが、これがかなり便利でレビュアーの負荷を下げるのに非常に強力で…

Azure Static Web Apps の公式 GitHub Action でも Federated Credentials を使ってデプロイしたい

Azure Portal から GitHub リポジトリを指定して Static Web Apps を作成すると自動的にワークフローが作成されますが、作成されたワークフローは Deployment Token を使うようになっています。この Deployment Token を使う方法は非常にシンプルで扱いやす…

Azure Container Apps が Key Vault 証明書のインポートをサポートしたので試した

Azure Container Apps がようやく Key Vault に保存されている証明書をインポートして、カスタムドメイン向けの証明書に利用できるようになったので試しました。App Service などではサポートされている機能で、ワイルドカード証明書などが必要な場合に使う…

Azure OpenAI Service Dev Day で LLM / SLM と Azure Functions を活用する話をしました

先週の話になりますが、大手町プレイスで開催された Azure OpenAI Service Dev Day にフロントエンドのスペシャリストである @nahoko_ushiro さんと共同で SLM と Azure Functions の活用について話をしました。コミュニティでの開催という規模ではないなと…

Azure App Service に追加された Unique Default Hostname (Preview) を Bicep / Terraform でも試した

ほぼ Build 2024 直後に公開された機能で、割と今更という感じはあるのですが App Service の Unique Default Hostname がプレビューとなったので試しました。挙動としては Container Apps や Front Door のホスト名に近く、ランダムな文字列 + リージョンが…

Azure Static Web Apps のデプロイに SWA CLI と Service Principal (Federated Credentials) を利用する

Static Web Apps へのデプロイを行う方法としては、公式で提供されている GitHub Action や Azure Pipelines Task を使う方法の他に Static Web Apps CLI を使う方法があります。最近ではビルドをカスタマイズしたいので、あえて Static Web Apps CLI を使っ…

Azure App Service / Azure Functions で Inbound IPv6 (Public Preview) がサポートされたので試した

タイトルの通りですが、少し前に App Service が Public Preview として Inbound IPv6 に対応しました。Build 2023 のタイミングで発表されていた内容なので、結構公開されるまでに時間がかかったという印象です。現時点の制約としてはマルチテナントの App …

Azure Static Web Apps のバックエンド API 側で実際にアクセスされているホスト名を取得する

Static Web Apps には組み込みの Azure Functions や独自の App Service や Azure Functions を /api 以下にリンクする機能があるので、同一ホスト名で SPA と API を動かすことが出来るのが大きな特徴です。同一ホスト上で動いているようにブラウザからは見…

Azure Container Apps で Event Hubs を利用した場合にスケールアウトし続ける問題を直す

タイトルの通りなのですが、Azure Container Apps で Event Hubs からデータを受信する処理を Dapr と KEDA を使って実装した場合に、何故か常に最大までスケールアウトし続けてしまう問題に遭遇しました。調べたところ Issue が上がっていて、同様の問題に…

Azure Cosmos DB for NoSQL でサポートされた Vector Search (Preview) を試した

Build 2024 で発表された Cosmos DB のアップデートの中でも注目度の高い Vector Search (Preview) について、実際に試して深堀しておきました。これまで Azure で Vector Search を実行するにはコストが高い割に SLA の低い AI Search を使う必要がありまし…

Microsoft Build 2024 で発表された Azure Cosmos DB for NoSQL のアップデート

Microsoft Build 2024 では Serverless Computing 領域で注目度の高いアップデートが多かったですが、Cosmos DB も Generative AI に対応したデータストアとして進化を続けています。昨今は Generative AI を意識したアップデートが Azure 全体的に多いので…

Microsoft Build 2024 で発表された App Service / Azure Functions / Container Apps のアップデート

先週開催された Microsoft Build 2024 は去年同様メイントピックは Generative AI でしたが、Azure Serverless 周りのアップデートが去年以上に発表されました。現地参加ではみたいセッションが被りすぎていてキャッチアップが遅れてしまうことが多いので、…

Azure OpenAI Service の GPT-4o Early Access を REST API と Azure SDK から無理やり使ってみた

昨夜の OpenAI の Spring Update で新しいフラグシップとなる GPT-4o が発表されましたね。かなり応答が高速になっているのに価格も下がっているという革新的なモデルとなっています。GPT-4 Turbo をアプリケーションで利用する上での大きな障害はその応答の…

Azure App Service に pnpm を利用した Node.js アプリケーションをデプロイする

最近は Node.js のアプリケーションを Azure App Service にデプロイする機会がかなり多いので、大体のユースケースには対応できると思っていたのですが、少し前に pnpm を使っているアプリケーションのデプロイが上手くいかないケースに遭遇したのでまとめ…

非推奨となった Terraform リソースからのマイグレーションを安全に行いたい

Azure Provider に限った話ではないと思うのですが、正直 Azure Provider はリソースの非推奨化が多い気がするので書いています。きっかけとしては直近の Azure Provider の更新で azurerm_static_site は非推奨になって azurerm_static_web_app が追加され…

Azure Functions の Node.js v4 に追加された HTTP Streaming サポートを深掘りする

Azure Functions の Node.js や Python といった言語ワーカーが動作するタイプでは、これまで HTTP のリクエストとレスポンスを Stream として扱うことが出来なかったので、大容量ファイルのダウンロードやアップロードが効率的に行えないという制約がありま…

独自のバックエンドとリンクした Azure Static Web Apps のプレビュー環境を自動で作成する

Azure Static Web Apps で何も考えずに GitHub で Pull Request を作成すると、標準で提供されているプレビュー環境が自動的に作成されるので便利です。Managed Functions も SWA とセットでデプロイされるので、フロントエンドだけではなくバックエンドも含…

Azure Static Web Apps のデプロイに Static Web Apps CLI を利用する

Azure Static Web Apps へアプリケーションをデプロイする際には GitHub Actions を使うことが多いはずですが、公式で用意されている Action はビルドまで行うように設計されているため、ビルドは自前で行ってデプロイだけを行いたいケースでは若干使いにく…

Azure Static Web Apps のプレビュー環境で Microsoft Entra ID 認証を有効化する

Azure Static Web Apps のプレビュー環境は、GitHub を利用した開発中に Pull Request を作成したタイミングで自動的にデプロイされるので、変更点の動作確認やレビューが行いやすくなる便利な機能なのですが、カスタム認証を使ったアプリケーションでは利用…

Azure Functions の Python V2 と Node.js V4 プログラミングモデルを利用する上での注意点

去年に GA してから時間が経過しましたが、Azure Functions の新しいプログラミングモデル Python V2 と Node.js V4 を使う機会が増えてきて、以前書いたエントリからの更新点も増えたので簡単にまとめます。プレビュー中に書いたエントリは以下になりますが…

Azure OpenAI Service の GPT-4 Turbo with Vision と Azure AI Service Enhancement を試した

OpenAI 本家の提供から数週間遅れましたが、Azure OpenAI Service でも GPT-4 Turbo with Vision が一部リージョンで利用できるようになりました。本家とは異なり Azure AI Service Enhancement という Azure OpenAI 専用の機能も同時にリリースされています…

Azure App Service の OS が Windows Server 2022 にアップデートされ始めているので確認した

先日の Ignite 2023 では App Service の TLS 1.3 対応が発表されて、一部のリージョンでは既に有効化されていることを以下のエントリで触れましたが、TLS 1.3 対応と同時に App Service の OS が Windows Server 2022 へとアップデートされ始めています。Ap…

Ignite 2023 で発表された Azure Cosmos DB のアップデート

先日シアトルで開催された Microsoft Ignite 2023 では Azure Cosmos DB のアップデートも Build 2023 程ではありませんが多く発表されました。例によって AI を意識したものが大きく扱われていますが、スケーラビリティの改善に繋がる機能もしっかり追加さ…

Ignite 2023 で発表された App Service / Azure Functions / Container Apps のアップデート

今年も Ignite 2023 がシアトルで開催されて、様々な Azure のアップデートが発表されました。基本的には AI 系の話ばかりでしたが、App Service / Azure Functions / Container Apps についても、思ったよりもインパクトの大きなアップデートが発表されまし…

Azure API Management の新しい Basic v2 / Standard v2 が Public Preview になったので試した

突然 API Management に新しく Basic v2 / Standard v2 という Tier が Public Preview として追加されました。来月が Ignite なのでそこまで待っても良かったのではという気もしますが、App Service などの PaaS / Serverless のチームはイベントを気にせず…

Dev Container / GitHub Codespaces を利用した Azure Functions 開発環境のベストプラクティス

昔にも Dev Container を利用して Azure Functions の開発環境を構築する方法を書いたのですが、その後 Dev Container の機能強化と Azure Functions のアップデートによってベストプラクティスが変わってきたので、現時点でのベストプラクティスを確認して…