SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for the ‘Azure’ tag

Azure Policy のゲスト構成機能の監査状況をポータルから確認する (Windows 環境)

leave a comment

Azure Policy では、ゲスト構成機能 (Guest Configuration: GC) により、環境内のマシンの状態を管理することができます。

ゲスト構成は、次のいずれかの環境に対して使用することができます。

  • Azure 仮想マシン
  • Azure Arc 対応サーバーが導入されている環境 (物理 / 仮想)
    • Azure Arc エージェントが導入されていれば使用可能

    Azure だけでなく、Azure Arc 対応サーバーをインストールしている環境についても Azure Policy のゲスト構成機能を活用することができます。(Azure の仮想マシンについては追加コストは発生しませんが、Azure Arc の環境については追加コストが発生します)

    Azure Policy では組み込みポリシー定義が提供されており、Azure 仮想マシンならびに Azure Arc 向けのポリシーが提供されています。

    これらのポリシーの中には、ゲスト構成機能を使用したルールも提供されており、本投稿はゲスト構成機能を使用したルールの監査状況の確認方法をポータルから実施する際の操作を調べたものとなります。

    ゲスト構成機能については冒頭に紹介したドキュメントも含めた、次の内容を確認しておくとよさそうです。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    8月 2nd, 2022 at 9:13 pm

    先人の知恵を借りて自宅に Azure の S2S VPN の検証環境を固定 IPで作成してみる

    leave a comment

    先人の知恵を借りて、自宅の検証環境に、Azure のサイト対サイト (S2S) の VPN の検証環境を固定 IP で作成してみた際のメモを。

    固定 IP については、Azure愛が強すぎて自宅にAzure専用固定IPプロバイダを契約しマルチセッションにした話 を参考にさせていただき、S2S VPN については、8800円の格安VPNルータで家とAzure間をサイト対サイトVPN(IPSec)で接続する を参考にさせていただいています。ありがたや、ありがたや。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    5月 18th, 2022 at 9:27 pm

    Posted in Azure

    Tagged with

    複数サブネット構成を使用した SQL Server on Azure VM の可用性構成について

    leave a comment

    発表されてからかなり日が経っているのですが、Azure VM で SQL Server の可用性構成を構築する場合に、複数サブネット (マルチサブネット) 構成を使用することで、従来の構成と比較して構成の簡略化が行うことができるようになっています。

    アナウンスとしては次の内容となり、

    技術情報としては次の内容となります。

    基本構成としては下図のようになり、複数のサブネットに VM を配置し、ロードバランサーは不要で、可用性グループにアクセスを行うことができる構成を Azure 上に展開することができます。

    FCI についても、複数サブネットを使用して同様の構成を行うことができ、単体のチュートリアルは提供されていないのですが、https://docs.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-prepare-vm?view=azuresql&tabs=multi-subnet#subnets で情報が公開されています。

    本投稿ではこの複数サブネット構成について触れたいと思います。

    なお、今回の投稿のメインとなる内容は Windows の SQL Server を使用した Always On 可用性グループについてとなります。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    4月 27th, 2022 at 6:36 pm

    Posted in Azure,SQL Server

    Tagged with ,

    Azure CLI の通信内容を Fiddler でキャプチャする際のメモ

    one comment

    最近、Azure CLI の通信内容を Fiddler でキャプチャ (トレース) する機会があったのですが、Fiddler で HTTPS のキャプチャを有効化しても取得でき内容でしたので、対応方法のメモを。

    と言っても、キャプチャする際に参考にさせていただいたサイトの紹介ですが…。

    基本的な作業としては次のサイトで紹介されている方法で対応できました。

    公式のドキュメントとして Work behind a proxy の内容になるのでしょうね。

    Fiddler は Proxy として、HTTP の通信をキャプチャしていますので、Fiddler のルート証明書を PEM 形式に変換して、Azure CLI を実行する前に環境変数の「REQUESTS_CA_BUNDLE」に cer を変換した pem ファイルのフルパスを指定しておけば、Azure CLI の通信内容を Fiddler でキャプチャできるようになります。

    Written by Masayuki.Ozawa

    6月 3rd, 2021 at 9:18 am

    Posted in Azure,Azure CLI

    Tagged with ,

    Azure Arc enabled SQL Server にちょい足しする

    leave a comment

    Azure Arc enabled SQL Server (Azure Arc 対応 SQL Server) をインストールすることで、Azure 以外で稼働している SQL Server を Azure 上で管理 / Azure の一部の機能の管理性を提供することができるようになります。

    インストールしただけの状態でも、いくつかの管理機能を使用することができますが、「SQL Server の運用」を考慮した場合、ちょい足しすると便利になる箇所がありますので、本投稿では、そのちょい足しの一例を紹介したいと思います。

    今回は Azure Arc enabled SQL Server の環境で実施していますが、enabled SQL Server ではなく、SQL Server がインストールされている環境に、Log Analytis エージェントをインストールすることでも同様のことは実現できます。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    1月 24th, 2021 at 10:43 pm

    Posted in Azure,Azure Arc

    Tagged with ,

    SQL Server IaaS Agent 拡張機能の自動バックアップ機能について

    leave a comment

    SQL Server on Azure VM で実行している SQL Server では、SQL Server IaaS Agent 拡張機能 を使用することができます。
    この拡張機能を使用することで、Azure VM (仮想マシン) 上で実行している SQL Server の運用の利便性を向上させることができ、今回、話題にする「自動バックアップ機能」につても、利便性を向上させることができる機能の一つとなっています。

    この自動バックアップ機能について、少し調べる機会がありましたので、自動バックアップ機能の構成についてまとめておきたいと思います。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    1月 17th, 2021 at 3:19 pm

    SQL Server on Azure VM (インストール済みイメージ) の日本語化 (2021/1 版)

    leave a comment

    Azure の Marketplace で公開されている SQL Server on Azure VM のイメージは、英語版の環境で構築されているため、日本語環境相当で利用するためには、いくつかの設定が必要となります。

    MS ブログでも次の情報として公開が行われています。

    基本的な作業については、上記の内容となるのですが、SQL Server on Azure VM も上記の情報の公開後から、いくつかの機能が追加されていますので「Marketplace のインストール済みイメージの展開相当の状態」にするには、上記のドキュメントの他に、いくつかのポイントがあります。

    必要となる作業とポイントについては、本投稿でまとめていますが、そもそもとして「本当に日本語版の SQL Server を使用する必要があるのか?」は意識しておいた方がよいかと思います。

    インスタンスレベルの照合順序を日本語版の SQL Server の照合順序 (Japanese_CI_AS や Japanese_xxxxx 系) にする必要があり、英語版の SQL Server を使用しても問題ないのであれば、VM 展開直後に サーバーの照合順序の設定または変更 でインスタンスレベルの照合順序を変更したほうが楽です。

    本投稿では「SQL Server 2019 on Windows Server 2019」の「SQL Server 2019 Enterprise on Windows Server 2019 Databas Engine Only」の Marketplace のイメージを日本語化するシナリオで記載しています。

    image

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    1月 13th, 2021 at 4:52 pm

    Posted in Azure,SQL Server

    Tagged with ,

    SQL IaaS Agent 拡張機能への自動登録を試してみる

    leave a comment

    2020/10 に Register Your Azure SQL Virtual Machines with SQL Server IaaS Agent extension today でアナウンスがありましたが、SQL Server IaaS Agent 拡張機能を自動的に登録する機能が Azure に実装されました。

    ドキュメントとしては、SQL IaaS Agent 拡張機能への自動登録 で公開されている機能となります。

    「SQL 仮想マシン」のブレードに「SQL Server VM の自動登録」というメニューが追加されており、サブスクリプション全体に対して SQL Server VM の自動登録を有効にすることができます。
    image

    2019/7 以降に Azure Marketplace の SQL Server インストール済みイメージから展開した場合は、「SQL VM リソースプロバイダー」が有効になっているため、SQL IaaS Agent 拡張機能についても登録が行われた状態となっています。

    • それ以前展開した SQL Server インストール済みイメージの仮想マシン
    • Windows Server のイメージ対して SQL Server をセルフインストールした仮想マシン

    というような環境については、SQL VM リソースプロバイダーはインストールされておらず、手動で SQL VM リソースプロバイダーの登録を行う必要がありました。

    今回追加された自動登録機能は、「現在 SQL VM がインストールれていない仮想マシン」「今後、SQL Server をセルフインストールした仮想マシン」を自動的に SQL VM リソースプロバイダーに登録を行ってくれるという機能となります。

    SQL VM リソースプロバイダーに登録することで、ライセンス管理SQL Server IaaS Agent 拡張機能による管理性の向上 というようなメリットがあるため、Azure の仮想マシンで SQL Server を実行する場合には、基本的に登録が行われるようにしておいた方が、様々なメリットを受けることができます。

    機能が追加されていたことは知っていたのですが、まだ実際に動作を確認していなかったので自動登録の機能を確認してみました。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    12月 20th, 2020 at 6:48 pm

    Posted in Azure,SQL Server

    Tagged with ,

    Azure Functions と Log Analytics による SQL Database のメトリック収集 (EZMonitor)

    leave a comment

    Azure Functions が PowerShell 7.0 をサポートしたこで、PowerShell をランタイムとして使用した関数で、ForEach-Object の Parallel が使用できるようになり、スクリプトブロックを並列で実行することができるようになりました。

    以前は Runspace を作成して、並列処理を自分で組む必要がありましたが、ForEach-Object でシンプルな記述で並列に実行できるようになったのはうれしいですね。

    このような並列処理は、DB のメトリックを取得するときの収集処理で活用することができ、メトリック収集用のクエリを一つ順次実行するのではなく、いくつかのクエリを並列で実行することで、処理時間を短縮することができ、鮮度の良い情報の取得を行うことができます。

    SQL Database では、標準でいくつかの方法で情報が取得されています。

    これらの標準機能を使用しても、情報の収集を行うことも、もちろん可能ですが、特定の状況かで必要となる情報が不足していることがあり、SQL Database の状態を確認するためは、追加でメトリックの収集を行う必要が出るケースがあります。

    そのような場合、私は PowerShell で SQL Database に対してクエリ実行を行いメトリックの収集を行い、そのメトリックを Log Analytics に格納することで確認をしているのですが、情報を取得 / 可視化を毎回一から作るのも面倒ですので、ある程度まとまった仕組みを EZMonitor (Easy Monitor) として作成してみました。
    (情報収取のクエリについては、ざっくりしたもののみ追加しているため、まだ修正の必要がありますが)

    ↓ GitHub のリポジトリからも、こちらのアイコンからもデプロイできます。

     

    展開時に情報の取得を行う、SQL Database を指定することで、Log Analytics に取得を行ったデータを、次の画像のように可視化することができます。

    image

    標準では、5 秒間隔で 4 スレッドで情報を取得しており、Basic / S0 のような低い性能のサービスレベルでは、CPU の使用率を上昇させる要因になります。

    CPU 使用率を上昇させた場合は、取得間隔や並列度数を調整してください。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    8月 4th, 2020 at 9:08 am

    Synapse Workspace の Manged VNET への関連付けについてのメモ

    leave a comment

    Synapse Workspace では、ワークスペースのリソースをデプロイする際に、Managed VNET に関連付けができます。(デプロイ時にのみ設定することができ、ワークスペースの作成後に設定を変更することはできません)

    image

    詳細については、Azure Synapse Analytics のマネージド仮想ネットワーク (プレビュー) に記載されているのですが、この辺の設定がいまいちわかっていなかったので、情報を整理しておこうかと。

    Read the rest of this entry »

    Written by Masayuki.Ozawa

    7月 22nd, 2020 at 12:55 pm