Microsoft Azure
Microsoft Azure 仮想ネットワークゲートウェイのポイント対サイトで使うルート証明書を、 C# で Azure SDK を使って登録してみた。 www.nuget.org 公開証明書データを渡すときに使う BinaryData が曲者だった。 公開証明書データの文字列中の改行文字を削除…
AzureRM provider 3.0 以降では、Azure App Service の Web Apps(Windows) を作成するときのリソースが azurem_windows_web_app に変わったけど、マネージド証明書を使う方法はさほど変わっていなかった。 provider "azurerm" { features {} } resource "azu…
Azure ポータルの仮想マシンの概要ページに表示されているような情報を、C# で SDK 使って取得してみた。 www.nuget.org www.nuget.org といっても全部取得するのは調査に時間がかかるので、ひとまず必要なやつだけ。ズバッと1回の呼び出しで取得できなかっ…
Microsoft Azure の仮想ネットワークに VPN の P2S で繋ぐとき、クライアントのアドレスプールをあらかじめポータルで設定しておくけど、REST API や SDK でもアドレスプールを変更できる。 www.nuget.org ポータルではアドレスプールなのに対し、REST API …
Microsoft Azure の仮想ネットワークに VPN の P2S で繋ぐとき、Azure VPN Client を使うことになる。Azure VPN Client はポータルでダウンロードすれば事足りるけど、REST API や SDK でもダウンロードできる。 www.nuget.org 実際には、Azure VPN Client …
ネットワークインタフェースに関連付けているネットワークセキュリティグループの付け替えも、Azure.ResourceManager.Network を使えばできた。 www.nuget.org using Azure; using Azure.Identity; using Azure.ResourceManager; using Azure.ResourceManage…
C# で Microsoft Azure のネットワークセキュリティグループの操作を行うのは、Azure.ResourceManager.Network を使えばできた。 www.nuget.org ネットワークセキュリティグループのセキュリティ規則を CRUD してみたサンプルは次の通り。 using Azure; usin…
C# で Azure.ResourceManager.Compute を使って、スナップショットからマネージドディスクを作成できた。あと列挙・更新・削除も。 www.nuget.org 以下、.NET 6 でのサンプル。 using Azure; using Azure.Core; using Azure.Identity; using Azure.ResourceM…
C# で Azure.ResourceManager.Compute を使えば、マネージドディスクからスナップショットを作成・取得・更新・削除できた。 www.nuget.org using Azure; using Azure.Core; using Azure.Identity; using Azure.ResourceManager; using Azure.ResourceManage…
Azure.ResourceManager.Compute を使って、Azure 仮想マシンのデータディスクもアタッチやデタッチができる。 www.nuget.org OSディスクのときと違って、データディスクは ID の変更ができないので、データディスクのアタッチとでタッチを行うことで、データ…
Azure.ResourceManager.Compute を使って、Azure 仮想マシンの OS ディスクをスワップできた。 www.nuget.org using Azure; using Azure.Identity; using Azure.ResourceManager; using Azure.ResourceManager.Compute; using Azure.ResourceManager.Compute…
Azure.ResourceManager.Compute を使えば、C# で仮想マシンの停止・開始・再起動ができる。 www.nuget.org 認証には Azure.Identity を使う。 www.nuget.org アプリに組み込んで使うことを想定しているので、Azure AD でアプリを登録しておく。 Microsoft Az…
Microsoft Azure の仮想マシンで動かしている WCF サービスでも、テレメトリを Azure Application Insights に送りたくて、方法を調べたら次のがヒットした。 github.com ただ、こいつは正式リリースされてないし、そもそも開発終わってだいぶ経過してる。WC…
Azure SQL Database で使える CREATE DATABASE AS COPY OF は、裏で geo レプリケーションが行われている。その geo レプリケーションが完了する前に、ソースのデータベースをリネームしようとすると、下記の例外が発生する。 The operation cannot be perfo…
sys.database_servic_objectives という、Azure SQL Database (の SQL Server)にあるシステムビューを見れば分かる。後は sys.databases と JOIN すれば OK。 SELECT * FROM sys.databases AS d INNER JOIN sys.database_servic_objectives AS o ON d.databa…
Durable Functions では、IDurableOrchestrationContext .CreateTimer を使うことで、関数の実行中に任意の時間待機できる。 docs.microsoft.com 大人の事情により、処理の途中で 2 時間待機する必要があったけど、Durable Functions のおかげでシンプルに実…
Next.js で作成した静的サイトを Azure App Service の Web Apps でホストしている。Static Web Apps でないのは、ZipDeploy できなかったから。本業では GitHub や Azure DevOps が使えないので…。 Web Apps で素直にホストした場合、トップページからリン…
frontend_ip_configuration で public_ip_address_id を設定しなかったら、内部ロードバランサーになった。 resource "azurerm_resource_group" "example" { name = "rg-example" location = "japaneast" } resource "azurerm_virtual_network" "example" { …
CustomScriptExtension を使ってタイムゾーンを変更しても、既に実行中の Windows サービスには反映されなかった。反映するには Windows サービスの再起動が必要とはね。 commandToExec で powershell.exe を使い、-Command に複数コマンドを指定するハック…
仮想マシンスケールセットのインスタンスのタイムゾーンを日本時間に変更したいのに、仮想マシンスケールセットで動かすためのイメージを作るとき Sysprep で一般化したら、タイムゾーンが UTC になってしまう。 応答ファイルでタイムゾーンを設定できたはず…
SQL Server Management Studio に付属している SQL Server Profiler は Azure SQL Database で使えなかったので、自前の簡易的なプロファイル機能をアプリに仕込んだりしてたけど、Azure Data Studio に SQL Server Profiler 拡張をインストールすればプロフ…
React 製 Single Page Application を Azure App Service でホストするために、Kudu のカスタムデプロイスクリプトを書いてデプロイ時にアプリをビルドし、それを express でサーブしていた。 tnakamura.hatenablog.com でも実は、Kudu のカスタムデプロイス…
はじめに セルフホストしてる WCF サービスで、例外が発生したら Application Insights に記録したい。ただ、WCF 用のパッケージはラボの段階で、しかもリポジトリはアーカイブされている。開発されていない。 github.com 今から TelemetryClient を使って A…
2021-07-06 追記 ZipDeploy で OK だった。 tnakamura.hatenablog.com はじめに React で実装した Single Page Application(SPA)を Azure App Service でホストしたい。Azure Static Web Apps ではなく、Web Apps。というのも、大人の事情で、GitHub や Azur…
Azure にて、仮想マシンスケールセットではなく、可用性セットを組んだ仮想マシン 2 台を、ロードバランサーのバックエンドプールにしてみた。 まぁ、最終的には仮想マシンスケールセットを使ったけどね。せっかく試したんでメモを残しておく。 resource "az…
カスタムドメインは Azure DNS ゾーンに登録してある前提。 resource "azurerm_resource_group" "example" { name = "rg-example" location = "japaneast" } resource "azurerm_app_service_plan" "example" { name = "plan-example" location = azurerm_res…
Packer で Windows Server 2019 Datacenter の VM イメージを作成しているが、アプリケーションをインストールために、WinRM でインストーラーをアップロードするのは遅すぎてまったく実用的ではなかった。 インストーラーみたいな大きいファイルは、あらか…
はじめに Azure にある公式の Windows Server 2019 Datacenter の VM イメージは、記事執筆時点で .NET Framework 4.8 が入っていなかったので、 .NET Framework 4.8 入りの VM イメージをビルドした。Packer で。 www.packer.io Azure リソース グループを…
はじめに Azure SQL Database に接続する WCF サービスを、Windows コンテナのプロセス分離モードで動かすところまで漕ぎつけた。 tnakamura.hatenablog.com 一連の実験もいよいよ今回で最後。Azure SQL Database に接続する WCF サービスを、Azure Kubernet…
Microsoft Docs の資料を参考に、Packer を使って Azure VM のイメージを作成しようと試みた。 docs.microsoft.com ところが、WinRM の有効化を待機しているところでタイムアウト。winrm_timeout を延ばしてもダメ、vm_size を上げてもダメ、image_sku を変…