Azure ADと「テナント」の話 / Microsoftのクラウドサービスを使うならこれだけは理解しておかないとまずい事

Microsoftのクラウドサービスを利用すると裏では必ずAzure ADが使われています。Azure ADを中心にして組織が利用可能な「テナント」が構成されるわけです。あまりにも重要な事なのですがあまりにも重要すぎて自動的にAzure ADが生成されることもあり、きちんと意識していない組織があります。 よくわかっていない状態で別のMicrosoftのクラウドサービス、特にAzureの利用を開始するととても変な構成になってしまい、修正するのにとても時間と手間がかかってしまうことにもなりかねません。 特に管理者の方、Microsoft 365やAzureの契約を担当する方はしっかりとAzure ADとテナントの関係を理解してから契約を進めてください。 Youtubeでも解説していますので、ブログでも動画でもお好きな方をご覧ください。 https://youtu.be/x2hkwqt-K80 Microsoft 365を契約したらどうなるか? まず、Microsoft 365を契約したらどうなるかという話をしましょう。 Microsoft 365を契約する時には必ずAzure Active Directoryがセットです。Azure ADが存在します。あるいは存在しなければ作成されます。 そして、Azure Active DirectoryにM365のライセンスが紐づきます。1つの契約で入手したライセンスをどこでも好きな複数のAzure ADに割り当てることはできません。1契約で100ユーザー分購入し、50ユーザー分をAAD1に、30ユーザー分をAAD2に、20ユーザー分をAAD3に…というようなことはできないのです。 Azure Active Direcotryにはユーザーやグループを作成できます。そして、そのユーザーにライセンスを割り当てます。M365のライセンスはユーザーに割り当てるライセンスなのです。 ライセンスを割り当てられたユーザーはMicrosoft 365の様々なサービスにアクセス可能となります。 この時に、Azure Active Direcotryを中心として、ユーザーが存在し、様々なサービスが使える範囲を「テナント」と呼びます。「テナント」といえば1組織が利用しているサービスの範囲が明確にわかるわけです。 Microsoft 365においては… 1テナント内にAzure Active Direcotryは1つだけ存在する- 契約したライセンスはAzure Active Direcotryに紐づく- ライセンスはユーザーに付与される ということになります。 やろうと思えば同一組織が複数のMicrosoft 365の契約を行うことも可能ですが、その場合にはテナントが2つになります。 1企業が2つの契約をし、テナントを2つもつ…ということは通常行いませんが、やろうと思えばできます。ですが、それぞれのテナントは別の環境です。技術的にはほかの企業がMicrosoft 365の契約をしているのと何も変わりません。 ユーザーにライセンスを割り当てるサービス群はすべて一緒 ここまで、Microsoft 365を例として記載してきましたが、これはほかのサービス群でも同じです。Azureのみが唯一の例外です(後述します)。 Dynamics 365でも、PowerBIでも、契約をしてライセンスを入手するとそれはAzure Active Direcotryに紐づき、Azure Active Direcotry内のユーザーにライセンスを付与し、ライセンスを持ったユーザーがサービスを利用することができます。 間違ったテナントにライセンスを紐づけてしまわないように注意 テナント内にAzure Active Direcotryは1つだけですので、テストで作ったAzure Active Direcotryに本番用のライセンスが紐づいてしまわないように注意してください。 テスト用の適当な名前のAzure Active Directoryをそのまま本番利用するのは事実上問題ないとはいえ、やっぱり気持ちが悪いですよね。 ...

September 23, 2021 · 1 min · 胡田昌彦

WordpressのAzure PaaS移行ではまったこと

個人で管理しているブログをAzureのPaaSに移行しました。合計で6個ほどのブログを移行してみました。 いろいろとハマってしまって、結局丸一日かかってしまったので、事の顛末を記録しておきたいと思います。 動画でも同じ内容を喋っているので、動画でご覧になりたい方は下記からご覧ください。 環境 移行元と移行先は下記です。 移行元Azure VM(Wordpress on Apache2 + MySQL)- 移行先Azure App Service(Linux)- WebApp- Azure Database for MySQL- Azure Blob Storage Wordpress on AppService Wordpress自体はAppService上でコンテナとして動作させました。このコンテナ自体は以前からこのブログ含めて複数ブログで利用していたもので、それを再利用しました。 https://github.com/ebibibi/wordpress-cocoon Wordpressの公式のイメージをもとにそこに自分が利用するテーマやプラグインを追加しているだけのシンプルなものです。 レポジトリにコードをコミットすれば自動的にGitHub Actionsでイメージがビルドされたうえで、Azure Container Registryに格納され、AppServiceにPushされるところまで全自動で動きます。 画像データのAzure Blobストレージへのオフロード 移行先の環境はコンテナなので、画像データをコンテナ内に持っておくわけにはいきません。そこでWordpressプラグインでAzure Blobストレージにあらかじめ画像を逃がすようにしました。 つかったプラグインはこちらです。 https://wordpress.org/plugins/wp-azure-offload/ 少し古いプラグインなのですが、以前から使ってますし、今回もきちんとうまく動いてくれました。このプラグインを使って、あらかじめAzureのブログに画像をオフロードさせます。その際にこのプラグインはブログのエントリーの中に埋め込まれているURLも書き換えるところまで自動的にやってくれます。 MySQL間のデータ移行 MySQL間のデータ移行に関しては、当初Azure Database Migration Servicesを使おうと考えたのですが、スキーマ移行には別途MySQL Workbenchが必要でしたし、それならMySQL Workbenchでそのままデータ移行してしまえばよさそうな感じでした。もちろんこれは私がサイトを簡単に停めても大丈夫だし、データ量も少ないからです。何度もデータ移行を継続的に繰り返さなければいけない時にはAzure Database Migration Sericesが役に立つと思います。 ですが、この方法はうまくいかず文字化けしてしまいました。原因はそもそも私が以前作っていたデータベースの文字コード設定が間違っていたからです。下記の状況でした。 Latin1に設定されたDBにUTF8のデータが入っていた- データ移行をそのまま行うと文字化け…。 いろいろ悩みましたが、結局下記の方法で回避しました。 先に移行先DBをUTF8で作成- Mysqldumpでダンプしたデータ内のcharset関連の部分を置換してから取り込み 具体的には下記のように行いました。 # c # m s s # m D r D y e e D y B e B s d d B s 作 a ダ q 取 q 成 t ン l - - り l e プ d e e 込 u み d m s s - a p / / h t l l o a - a a s b u t t t a i i = s u n n n e s 1 1 e e / _ w w r u g m p t e y _ - f n s d p 8 e q b / r l n a d a - w l b m d p _ . e e _ c m f d s y c a b / s h u n u q a l a t l r t m f . a - e 8 d c c . _ a t h d g t e a u e a r r m n b a p e a s c r s e t > a e t e l . r w _ a U - p c z T s _ i u F e d / r 8 t b e = n w . c l a p c o a m _ o l t e d m l i _ b a n u n t 1 t a - e f m u w 8 e s u p . _ e t _ d u r f d u t = 8 b m f u _ n p 8 s g a . e e m d r n e u e m - r > p p a l w > w _ p p c _ w _ i d p d ; b _ b n d n a b a m n m e a e . m d e u _ m u p t f 8 _ g e n e r a l _ c i . d u m p その他のはまった点 その他にもあれこれはまりました…。 ...

September 14, 2021 · 3 min · 胡田昌彦

Azure Database for MySQLからのログ取り込み

下記のエントリがまとめエントリになっていますのでそちらも参照下さい。 Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はAzure Database for MySQLからログを取り込みます。 まずは、ログの取り込み対象のAzure Database for MySQLを作成します。 診断設定からログの取り込み設定を行います。 以上でログ収取設定は完了です。とても簡単ですね。 今回はさらに、監査ログも有効化してみました。 少しDBを操作して、ログを出力させます。今回は下記のチュートリアルに従って操作しました。 クイック スタート:Python を使用して接続する - Azure Database for MySQL | Microsoft Docs しばらくたつと、きちんとログが検索可能となりました。 きちんとクエリ内容も含めて出力されています。 なお、Azure Monitorでログを収集する場合にはファイルへのログ出力はOFFにしておいてかまいません。OFFにした方がサーバーの負荷が下がりますのでお勧めです。

July 16, 2021 · 1 min · 胡田昌彦

Azure Database for PostreSQLからのログ取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はAzure Database for PostreSQLからログを取り込んでみます。 まず、Azure Database for PostreSQLを作成します。 これも、PaaSであり、診断設定からLog Analyticsワークスペースへのログの取り込みが可能です。 今回はさらに監査ログも取得するようにします。下記の記事に従って設定します。 監査ログ - Azure Database for PostgreSQL - Single Server | Microsoft Docs https://docs.microsoft.com/ja-jp/azure/postgresql/concepts-audit サーバーを再起動します。 pgAudit拡張機能を有効にします。 サーバーパラメーターにて対象のログを選択します。 少しDBを触って、実際にログを出したいと思います。今回は下記のクイックスタートの記事に従って操作しました。 クイック スタート:PostgreSQL に対する接続およびクエリ - Azure Data Studio | Microsoft Docs しばらく待つと、きちんとログが検索可能となりました。 ただし、ちょっとさすがにログの量が多すぎる感じがあります。監査ログでALLを選択していることが原因ですので、ALLは外しておくのが現実的かなという印象です。 ちなみに、docsのドキュメント含めてあちこちに、「Azure Monitorでログを収集するならlogging_collectorはOFFにしておいたほうがいいぞ」と書かれているにもかかわらず、サーバーパラメーターにはlogging_collectorの設定がなくて戸惑ってしまいました。 実際にクエリしてみるとOFFになっていたので、何もしなくてよいようです。

July 16, 2021 · 1 min · 胡田昌彦

BIG-IP Cloud Editionからのログ取り込み

下記のエントリがまとめエントリになっていますのでそちらも参照下さい。 Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回は、BIG-IPのVMからのログ取り込みを行ってみたいと思います。 BIG-IPはAzure上に展開できるものを使いました。 BIG-IPからは、リモートのSyslogサーバーにログを送信するように構成します。 Syslogサーバーは別途構築してログを受けられるようにしておきます。今回はCentOSをSyslogサーバーとして構成しました。 まず、Rsyslogパッケージをyumでインストールします。 s u d o y u m - y i n s t a l l r s y s l o g https://support.f5.com/csp/article/K13080 によるとBIG-IPからのsyslog送信はTCPを利用しているようです。TCPを利用するように/etc/rsyslog.confを構成します。 # $ $ M I P o n r d p o L u v o t i a T d d C e P s i S m e T t r C c v P p e r s R y u s n l o 5 g 1 4 r e c e p t i o n rsyslogを再起動します。 ...

July 16, 2021 · 1 min · 胡田昌彦

App Serviceからのログ取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators さて、今回はApp Serviceからのログを取り込んでみます。 もともと作成してあったfunctionsの実行環境がありましたので今回はそちらを対象にしてみます。 診断設定からログを取り込む方法と、Application Insightsからログを取り込む方法の大きく2つがあります。 診断設定 まずは診断設定から見ていきます。 Functionsに関してのログがLog Analyticsワークスペースに取り込まれ検索可能となりました。 診断設定から取得できるのは、生のログに近いもの…というイメージでしょうか。 Application Insights より詳細な監視、分析はApplication Insightsを使うことで可能です。これも裏ではAzure Log Analyticsワークスペースにデータがため込まれておりそれが使われますが、1つのサービスとして利用可能となっています。 有効化するのも簡単です。 Application Insightsでは様々な観点で監視ができます。 かなりリッチな画面が並んでいますが、裏にあるのはどれもAzure Log Analyticsワークスペースのデータです。 Application Insightsにより様々なテーブルが定義されています。 こんな分析も… 裏にあるのはAzure Log Analyticsワークスペースのログです。 Azure Log Analyticsワークスペースにどのようにデータをためて、どのようなクエリでどんな分析ができるのか?という点のわかりやすいサンプルとしても、Application Insightsは優秀ですね。

July 11, 2021 · 1 min · 胡田昌彦

Azure SQL DBからのログ取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はPaaSであるAzure SQL DBのログをAzure LogAnalyticsワークスペースに取り込んでみます。 まずはSQL DBとそれを動作させるSQL Serverを作成します。 作成後、診断設定を行います。 診断設定を追加する また、監査データもLog Analyticsワークスペースに取り込むことができます。これは「監査」で設定可能です。 既定の監査設定には、次の一連のアクション グループが含まれています。これにより、データベースに対して実行されたすべてのクエリとストアド プロシージャ、および成功したログインと失敗したログインが監査されます。BATCH_COMPLETED_GROUPSUCCESSFUL_DATABASE_AUTHENTICATION_GROUPFAILED_DATABASE_AUTHENTICATION_GROUP これでログの取り込み設定としては完了です。 実際にDBにクエリを実行しつつ、ログを確認してみます。(クエリは何でもいいので、適当にネットで検索して実行しています。) ログとしては、AzureDiagnostics, AzureMetricsというテーブルが定義され、データが取り込まれていることが確認できます。 SQLの実際のクエリなんかも記録されています。

July 11, 2021 · 1 min · 胡田昌彦

NSGフローログからのログ取り込み(Network Watcher)

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はNSGのフローログを取り込みます。これはNetwork Watcherという独立したサービスのような仕立てになっています。 設定するには、対象のNSGにて、NSGフローログに移動します。 「NSGフローログの作成」をクリックします。 対象のネットワークセキュリティグループを選択し、保存対象のストレージアカウントを選択します。ストレージアカウントにまずデータが収集され、さらにそれをLog Analyticsワークスペースに送信する形になります。直接Log Analyticsワークスペースに収集するわけではないので注意が必要です。 「Traffic Analyticsを有効にする」にチェックを入れます。これが事実上Log Analyticsワークスペースにデータを送信するという設定です。対象のワークスペースを選択します。 作成します。 作成完了すると、裏側でNetworkWatcherRGというリソースグループにNSGフローログやネットワークウオッチャーが作成されています。(※下記の図は今回作成したもの以外のリソースも存在しています。) ネットワークセキュリティグループの視点でフローログが有効になっているものとなっていないものを一覧で識別することもできます。 ログの参照も含めて、様々なIaaS VMに対してのネットワーク関連の監視は「Network Watcher」というサービスから可能です。このサービスを支える基盤としてLog Analyticsワークスペースが存在しているイメージです。 有効化する対象のリージョンを選択できます。 Network Watcherには色々な機能があります。 NSGフローログを設定してある一覧は「NSGフローログ」から確認可能です。 Network Watcherのトラフィック分析にてログが様々な形に可視化され、見ることが可能です。 いろいろな見方ができて面白いですね。色々とビューはありますが、裏にあるのはすべてAzure Log Analyticsワークスペースに格納されたログです。実際のログはクエリを検索することで確認できます。 このようにログを取り込むところから可視化するところまでが、一つのサービスとなっていて、Azure Log Analyticsワークスペースをほぼ意識しなくてもよいようなものもあり便利ですね。だからこそ混乱する…という面も確かにあるのですが、このように簡単に目的ベースでログを収集してその文脈できちんと可視化してくれるのはとても良いことだと思います。

July 11, 2021 · 1 min · 胡田昌彦

Azure LogAnalyticsのカスタムログで収集した「RawData」を扱いやすくする(クエリ実行時のデータ解析)

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回は、以前、「カスタムログ」の機能を使って取り込んだApacheのログを解析しやすい形にしたいと思います。カスタムログで取り込む部分に関しては下記のエントリを参照して下さい。 Azure LogAnalyticsワークスペースへのApacheログの取り込み | Microsoft Cloud Administrators さて、取り込んだログを見てみると「RawData」という列にカスタムログの1行がすべて入っている状況です。これをより扱いやすい状態にしたいと思います。 やり方は大きく2種類あって「収集時にデータを解析して新しいプロパティを「カスタムフィールド」を使って定義する」か、「クエリを実行するときにそのクエリ内でデータを複数のフィールドに分けてあげる」かです。今回は後者の方法を試してみます。 LogAnalyticsワークスペースのログの検索、解析にはKustoという言語が使えます。 今回は正規表現でRawDataの中身から値を抽出することにします。すべてのレコードはスペースで区切られており、時間の部分は[]で囲まれていて、リクエストとリファラーとエージェントがダブルクオーテーション("")で囲まれている状況です。これを正規表現で表現します。 @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . * ) " " " あとは、extendで列を追加し、RawDataの中身をもとに順番に抽出してあげればよいですね。下記のようなクエリにしてみました。 h t t p d _ a c c e s s _ l o g _ C L | e x t e n d h o s t = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 1 , R a w D a t a ) , i d e n t = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 2 , R a w D a t a ) , u s e r = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 3 , R a w D a t a ) , t i m e I n L o g = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 4 , R a w D a t a ) , r e q u e s t = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 5 , R a w D a t a ) , s t a t u s = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 6 , R a w D a t a ) , b y t e s = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 7 , R a w D a t a ) , r e f e r e r = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . ) " " " , 8 , R a w D a t a ) , a g e n t = e x t r a c t ( @ " ^ ( . ) [ ( . ) ] " " ( . ) " " " " ( . ) " " " " ( . * ) " " " , 9 , R a w D a t a ) 実行すると、きちんと狙ったところが狙ったプロパティとして抽出されていることがわかります。 ...

July 6, 2021 · 3 min · 胡田昌彦

VMSS(Virtual Machine Scale Set)のWindows仮想マシンからのログ取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はWindows仮想マシンを使ったVMSSからログを取り込んでみます。以前やったLinux仮想マシンを使ったVMSSとやりたいことは同じです。 VMSS(Virtual Machine Scale Set)のLinux仮想マシンからのログ取り込み VMSSは適当に作成しました。 WindowsにはWindows用のCustom Script Extensionというものが存在してますが、これを利用してエージェントをインストールするのはUACが邪魔をしてうまくいきません。ですので専用の拡張機能を利用する形でよいでしょう。 拡張機能はAzure CLIからインストールします。Azure CLIはどこから使っても構いませんが、今回はAzure管理ポータルからCloud Shellを利用します。 実行するのは下記のコマンドです。 a z v m s s e x t e n s i o n s e t - n a m e M i c r o s o f t M o n i t o r i n g A g e n t - p u b l i s h e r M i c r o s o f t . E n t e r p r i s e C l o u d . M o n i t o r i n g - r e s o u r c e - g r o u p v m s s - n a m e - s e t t i n g s " { ' w o r k s p a c e I d ' : ' ' } " - p r o t e c t e d - s e t t i n g s " { ' w o r k s p a c e K e y ' : ' ' } " ...

July 6, 2021 · 2 min · 胡田昌彦

Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ)

LogAnalyticsワークスペースには様々な種類のログを取り込むことが可能です。工夫すれば事実上すべてのログの取り込みが可能です。 シリーズとしてログをあれこれ取り込みまくってみたいと思います。記事を作成したら下記に項目を増やしてリンクしていきます。 ログの取り込み Azure LogAnalyticsワークスペース作成(Azure Monitorログ) - Azure上の仮想マシンからのログ取り込み- Azure外のWidows仮想マシンからのログ取り込み(エージェントインストール編)- Azure外のLinux仮想マシンからのログ取り込み(エージェントインストール編)- Azure Arcと連動したAzure外の仮想マシンからのログ取り込み- エージェントの構成(エージェントから取得するログの設定)- Azure LogAnalyticsワークスペースへのApacheログの取り込み - VMSS(Virtual Machine Scale Set)のLinux仮想マシンからのログ取り込み- VMSS(Virtual Machine Scale Set)のWindows仮想マシンからのログ取り込み - NSGフローログからのログ取り込み(Network Watcher) | Microsoft Cloud Administrators- App Serviceからのログ取り込み- Azure SQL DBからのログ取り込み- Azure Database for MySQLからのログ取り込み- Azure Database for PostreSQLからのログ取り込み- BIG-IP Cloud Editionからのログ取り込み ログの解析 Azure LogAnalyticsのカスタムログで収集した「RawData」を扱いやすくする(クエリ実行時のデータ解析)

July 5, 2021 · 1 min · 胡田昌彦

Azure LogAnalyticsワークスペースへのApacheログの取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はすでにAzure LogAnalyticsに接続しているLinuxVMに対してApacheを構成し、そのログを取り込んで検索可能となるところまでやってみたいと思います。 対象VMのAzure上での確認 対象のVMはlalinuxvmというlinux vmです。OSはCentOS 7です。 Apacheの導入~動作確認 まずは、VMにSSHでアクセスし、Apacheを導入します。 httpdをインストール s u d o y u m i n s t a l l h t t p d Apacheを起動 s u d o s y s t e m c t l s t a r t h t t p d このままだとNSGにブロックされてアクセスできないのでHTTPポート(TCP/80)をオープンします。 ...

July 5, 2021 · 1 min · 胡田昌彦

Azure上の仮想マシンからのログ取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はAzure上のWindows仮想マシンからログを取り込むように設定します。LogAnalyticsTargetsというリソースグループにテスト用のWindows VM(Windows Server 2019)を用意しました。 ※サーバーに直接はアクセスしませんので、WindowsでもLinuxでも操作は全く同じです。 Azure上の仮想マシンは簡単な操作でログの取り込みができるようになっています。色々とやり方はありますが今回は「1データソースへの接続」の下の「Azure Virtual Machines(VM)」からアクセスします。 自分が権限を持っていて見られる範囲の仮想マシンの一覧と、その接続先のLog Analyticsワークスペースが確認できます。目的のVMをクリックします。 「接続」をクリックします。 ボタンを押すだけで、VMには直接アクセスすることなく、Log AnalyticsワークスペースとVMが紐づき、勝手にログが収集されるようになります。とっても簡単ですね! あるいは仮想マシンの方から「監視」-「ログ」にてLog Analyticsワークスペースに接続することもできます。 接続するサブスクリプションとLog Analyticsワークスペースを選択して有効化します。 しばらく待ちます。 以上で完了です。 どちらの手法でも裏では仮想マシンにエージェントがインストールされて、仮想マシンのエージェントの動きでログを収集~送信するようになります。 というわけで、これで完了です。とても簡単でした。 どのようなログを送信させるのかはあらかじめLog Analyticsワークスペースで設定しておきます。あるいはあとから設定を変更しても、エージェント側で設定変更を認識して新しい設定に従って動きます。 他のものも色々とログ収集することができます。下記エントリも参考にして下さい。 Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators

July 5, 2021 · 1 min · 胡田昌彦

Azure外のLinux仮想マシンからのログ取り込み(エージェントインストール編)

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators 今回はAzure外のLinux仮想マシンからのログ取り込みを行いたいと思います。 が、これは非常に簡単なのです…。 接続したい先のLog Analyticsワークスペースの「エージェント管理」で「Linuxサーバー」を選択したうえで、「Linux用エージェントをダウンロードおよびオンボードする」というところでワンライナーをコピーしてください。 あとはこれをそのままあるいはsudoを付けて実行してもらえばおしまいです。非常に簡単ですね。 なぜ、Windowsの方も同じようにしないんでしょうか…。

July 5, 2021 · 1 min · 胡田昌彦

Azure外のWidows仮想マシンからのログ取り込み(エージェントインストール編)

下記のエントリがまとめエントリになっていますのでそちらも参照下さい。 Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators Azure内のWindows仮想マシンからのログ取り込みはAzure管理ポータル上で仮想マシンを指定するだけの簡単操作でした。Azure外の仮想マシンに対してはもう少しだけ手間がかかります。とはいえ、それでもとても簡単です。 今回はエージェントを直接VMにインストールする方法です。他にも先にAzure ArcでAzureに接続する方法もありますが、まずは基本としてこちらの方法を抑えておいてもらっても良いと思います。(ですが、色々とAzureを活用するならAzure Arcに接続して管理することをお勧めします。) Log Analyticsワークスペースにてエージェント管理をクリックします。 このページからエージェントもダウンロードできますし、接続するためのワークスペースIDやキーも入手可能です。 今回はオンプレミスのHyper-V上にWindows Server 2019の仮想マシンを用意しました。NAT配下に存在している仮想マシンです。 エージェントのインストーラーを入手し、実行します。 ウィザードをすすめていきます。 「Azureログ分析(OMS)にエージェントを接続する」にチェックを入れます。 ※Azure LogAnalyticsなのか、OMSなのか、Azure Monitorなのか・・・、色々と混乱してしまってますね。 ワークスペースIDとワークスペースキーをAzure管理ポータルから入手して入力します。 これで、構成は完了です!簡単ですね!

July 5, 2021 · 1 min · 胡田昌彦

VMSS(Virtual Machine Scale Set)のLinux仮想マシンからのログ取り込み

Azure LogAnalyticsワークスペースに様々なログを取り込んでみます。他にも色々とやってますので下記エントリも確認お願いします! Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators すでに単体の仮想マシンからログを取り込む方法に関しては紹介済みです。 Azure上の仮想マシンからのログ取り込み- Azure外のWidows仮想マシンからのログ取り込み(エージェントインストール編)- Azure外のLinux仮想マシンからのログ取り込み(エージェントインストール編) ですが、VMSSを使って簡単にスケールアウト、スケールインができる環境ではどのようにエージェントインストールとLog Analyticsワークスペースへの接続を実現できるでしょうか?1台づつ接続して個別にインストールしていたのでは大変ですよね。 これは「拡張」を使うことで解決できます。手順を見ていきます。 VMSS作成 まずはVMSSを作成します。自動的にLog Analyticsワークスペースに接続できることを確認するのが目的のため、内容はあまり気にしなくて大丈夫です。Linuxを選択しているところは注意してください。 拡張機能の設定(専用の拡張を使う方法) Azure LogAnalyticsワークスペースに接続するための専用の拡張が存在します。なぜか、Azureポータルからの操作ではこの拡張は表示されませんので注意して下さい。Azure CLIで設定を行います。 下記のコマンドでvmssに拡張のセットが可能です。リソースグループ名、VMSSの名前、ワークスペースID、ワークスペースキーは実際の値に置き換えた上で実行して下さい。 a z v m s s e x t e n s i o n s e t - n a m e O m s A g e n t F o r L i n u x - p u b l i s h e r M i c r o s o f t . E n t e r p r i s e C l o u d . M o n i t o r i n g - r e s o u r c e - g r o u p v m s s - n a m e - s e t t i n g s " { ' w o r k s p a c e I d ' : ' ' } " - p r o t e c t e d - s e t t i n g s " { ' w o r k s p a c e K e y ' : ' ' } " 拡張機能の設定(Custom Script for Linuxを使う方法) もう一つの方法としてCustom Script for Linuxを使う方法も紹介しておきます。Custom Script for Linuxであれば任意のコマンド、スクリプトを使えるので本件に限らず任意のロジックを組み込めます。 ...

July 5, 2021 · 2 min · 胡田昌彦

エージェントの構成(エージェントから取得するログの設定)

Log Analyticsワークスペースに接続しているエージェント(Windows, Linux)からどのようなログを収集するのかはLog Analyticsワークスペースの「エージェント構成」で設定します。 Windowsイベントログ、Windowsパフォーマンスカウンター、Linuxパフォーマンスカウンター、Syslog、IISのログの項目があり、簡単に構成することができます。 Windowsイベントログは収集するログの名前を指定した上でエラー、警告、情報のどれを収集するのかを指定します。 例えば、下記のように設定できます。 Windowsパフォーマンスカウンターも同様に任意のものを追加できます。 「推奨されるカウンター」がありますので、まずはそこから設定し、さらに追加で必要なものを構成すると良いでしょう。 Linuxパフォーマンスカウンターも同様です。推奨されるカウンターから利用すると良いでしょう。 Syslogも簡単に収集設定を行うことができます。 IISのログは収集する、しないの2択です。 以上が、エージェント構成の設定です。 必要なものを集めるように構成すればよいだけなので簡単ですね!

July 5, 2021 · 1 min · 胡田昌彦

Azure LogAnalyticsワークスペース作成(Azure Monitorログ)

ログを取り込むにはまずAzure LogAnalyticsワークスペースの作成が必要です。 LogAnalyticsを検索します。 LogAnalyticsワークスペースを選択します。 作成します。 サブスクリプション、リソースグループ、インスタンス名、地域を選択して作成します。 作成します。 作成が完了したらリソースに移動します。 今は、わかりやすくガイドしてくれるようになっていますね。Azure管理ポータルがどんどん使いやすくなっていて、とてもありがたいなと思います。 これでLogAnalyticsワークスペースの作成が完了しました。とても簡単でしたね。 あまりにも簡単なので当たり前に思ってしまいがちですが、このようなログの収集基盤を自分たちで作ろうと思ったらどのような検討が必要かを考えると、改めてパブリッククラウドの素晴らしさがわかるんじゃないかと思います。ログなんてどこまで増えるものなのかわかりませんから、「どれだけのログ容量を想定して基盤を作るのか?」「冗長性、耐障害性はどこまでもたせるのか?」「当初から最大容量を見越して基盤を用意すると無駄が多すぎるからどのようにスケールアップ、スケールアウト可能な構成にするか?」「ログの量が大量になってもきちんと検索が可能な性能をどのように担保するか?どのようなデータソースにどのようにデータを保持するか?」などなど、考えだしたらきりがないですし、うまくやるのは至難の業です。 しってますよ。監査対策でログはためてはあるけど、具体的に必要な部分を迅速に取り出すことがほぼ不可能な、そのシステム・・・。 でも、Azure Monitor, Azure LogAnalyticsを使えばこのあたり何も考えなくていいんですもんね~。本当にいい時代になったものです。Azure LogAnalyticsの価格が高いという人がいますが、それは本気で自前で環境をつくったらどうなってしまうのかを知らない人なんだろうなと思います。 というわけで、ワークスペースができましたので次はAzure上の仮想マシンからログを収集するように構成しようと思います。 下記のエントリがまとめエントリになっていますのでそちらも参照下さい。 Azure LogAnalyticsワークスペースに様々なログを取り込む(まとめエントリ) | Microsoft Cloud Administrators

July 4, 2021 · 1 min · 胡田昌彦

【Azure】【 NSG】「任意の場所からの接続」を禁止するポリシー

Azure環境を利用している際に「任意の場所からの接続」は禁止して、明確に接続元IPアドレスを制限したいというケースが結構あると思います。もちろん全世界に広くWebサイトを公開するような場合はこれに当てはまらないわけですが、検証用途専用のサブスクリプションを作成しているような場合には事故を防ぐために「もしも任意の場所からの接続を許可するNSGのルールを作ろうとした場合にはそれをブロックしたい」というのはよくある要望です。 これはAzure Policyで実現できます。 Azure Policy の概要 - Azure Policy | Microsoft Docs 規定で定義されているポリシーにはこのようなルールは存在しないので、カスタムポリシーを独自に定義する必要があります。 サンプルも参考にしながら、やはりきちんと構造をしっかりと理解して自分で書けるようになってしまうのが急がば回れだと思います。 とりあえず下記が「NSGのルールとして『任意の場所からの接続』の作成を禁止するPolicyのサンプルです。

January 13, 2020 · 1 min · 胡田昌彦

【ハンズオン&勉強会告知】12月9日 Azure Stack Hubを触って学べる1日

こんにちは。またしても告知エントリです…。最近こればっかりになってきてしまいましたね…。 先ほど12月9日(月)の2つのイベントを公開しました! - [Azure Stack Hubオペレーターの気持ちがわかる勉強会! - connpass](https://hybridcloud.connpass.com/event/156781/) - [【ハンズオン】【初心者向け】AzureとAzureStackを用いたIaaS,PaaS,FaaS体験 - connpass](https://hybridcloud.connpass.com/event/156765/) ※両方に参加される方は2つ申し込み必要です ※もちろんどちらか1つだけの申し込みもできます テーマはAzure Stack Hub! 毎回好評を頂いているHCCJPの勉強会。第2回ハンズオンと第9回勉強会のテーマはズバリ「Azure Stack Hub」です。 発売から2年、Azure StackからAzure Stack Hubと名称変更、Azure Stack HCI, Azure Stack EdgeとAzure Stackファミリーが増えるなど色々と変化がありましたが、やはりデータセンターに導入できる「本当のクラウド環境」という意味ではAzure Stack Hubは現在でも唯一無二の存在です。そして先進的過ぎてまだまだ正しく理解されていないのが現状です。 今回は概要を理解した上で実際に触って体験いただき、さらにAzure Stack Hubを導入および運用する「Azure Stackオペレーター」のためのノウハウも知ることができる構成となっています。 ハンズオン 今回のハンズオンではAzureおよびAzure StackをもちいてIaaS, PaaS, FaaSの概要を体験してもらいます。 下記のような方を主な対象として考えています。 - クラウド未体験の方 - Azure / Azure Stackをまだ活用できていない方 - Azure Stackに触ってみたい方 - クラウドを利用していたとしても仮想マシンをポータルから手作業で作成している方 - クラウド基盤を活用する方法を体験いただければと思います。 ※第1回ハンズオンの内容と基本的に同一ですので、第1回に参加された方は是非サポート役に回っていただければと思います。 ハンズオンサポートはHCCJPの幹事企業関係者の方に限らずどなたでもボランティアとして参加いただけます。サポートの方は実際のハンズオンには参加いただかずサポートに専念して頂く形になりますのでその点はご了承ください。 ハンズオン実施は先着10名様のみ可能ですのでお早めにお申し込みください。 勉強会 今回の勉強会はAzure Stack Hubの概要にとどまらず、実際の導入を経験し、現在進行系で運用を行っているエンジニアだからこそできる話をMKI松本さんにしていただきます。 実際に運用してみてどうなのかという生の声も聞けます。いつもどおり匿名での質問も可能ですので普通のセミナーでは聞けないあんな事やこんな事を聞いちゃってください。 さらに、皆さんが聞きたい話を伝えたいという松本さんの心意気があり、HCCJPのFacebookグループ(https://www.facebook.com/groups/hybridcloud/)にて「聞きたいこと」を事前に伝えることができます。リクエストに必ず答えられるわけではありませんが、是非リクエストをいただければと思います。 懇親会 懇親会は勉強会会場から移動時間30秒のJBS社員専用カフェLucy’sです。おしゃれで美味しくて安いと評判のLucy’sで一人2800円で飲み放題もついてきます。会費(2800円)は当日現金で集金させていただきます。 ...

November 21, 2019 · 1 min · 胡田昌彦

AI・テクノロジーの情報を発信しています

YouTube

AI・テクノロジーの最新トレンドを動画で配信中

note

技術コラム・深掘り記事を公開中