skillup

技術ブログ

サーバー・ネットワーク

Azureの復習

投稿日:

今年からAzureの案件にはいっていろいろとインフラ周りを整理しておりますので、復習も兼ねて少しまとめておこうかと思います。

とりあえず出てくる重要な概念やサービスを五月雨に・・・

AzureAD(Active Directory)

Azureで行われる認証サービスです。シングルサインオンのため、一度のログインで複数のアプリケーションに(Azure他、Officeなどにも)アクセスできるようになります。

同じログインでも一般的に複数のアカウントを持つことが一般的かと思いますが、このアカウントのことをディレクトリといいます。

リージョン

AWSでも使われてますが、普通に地域で世界に60程度。同じ地域でも東日本リージョンと西日本リージョンのようにペアになっていることが多いようです。

可用性ゾーン

ゾーン1〜3などとデータセンターレベルで可用性を向上させる仕組みになります。

VM(=VirtualMachine)

普通に仮想マシンですね。AWSでいうとEC2です。これ自体に何かアプリをデプロイして・・というよりはローカルからここにつないでデバッグなどをするためにつかうことが多いのではないでしょうか。

リソースとリソースグループ

一般的な言い方だと思いますが1つ1つのサービスのことをリソースといい、各リソースはリソースグループに紐づいています。リソースグループとは親のようなものになるため、リソースグループを削除すると紐づいているリソースも全て削除されます。ちなみにリソースグループのリージョンと各リソースのリージョンはバラバラでもよいようです。

リソースはユーザーが任意に作成するのですが、複数のリソースからなるリソースを作ると管理や削除の面から専用のリソースグループが自動でつくられるようです。例えばVMの場合、仮想マシン以外にディスク、パブリックIPなどもつくられるため、専用のリソースグループがつくられます。

サブスクリプション

各リソースとそのコストを管理する仕組みとして、サブスクリプションがあります。主に支払などの単位を管理します。サブスクリプションの下にさまざまなリソースグループが紐付きさらにその下に関連するリソースが紐づきます。

現在の現場では本番用のサブスクリプションと開発用のサブスクリプションがあり、各リソースグループとリソースがこの下に紐づいています。

Storage

AWSでいうところのS3のようなストレージサービスになります。

主に以下のようなものがあるようです。

Azure Blob Storage

オブジェクト単位のデータでデータをアップロードorダウンロードできるようです。普通のファイルもそうですが、テキストデータやバイナリデータのようなものの格納も可能なようです。また静的なWebサイトのホスティングなどにも使われます。

Azure Files

VMやローカルのコンピューターに対してmountして共有が可能なようです。スナップショットやバックアップなどのファイルの記録なども可能です。

Azure Queue Storage

メッセージのキューの保存などで使われるようです。

Azure Table Storage

使ったことないのですが、NoSQL向けのデータストアのようです。

モニタリング系(Azure Monitor/LogAnalytics/Application Insights)

主に各リソースのパフォーマンスの監視やアラート、ログ出力などを管理するサービスです。

一般的なCPU使用率やメモリ以外には、例えばCPU使用率がn%になったらメールを飛ばす、などもできますし、LogAnalyticsというサービスでは、KQLというSQLに似た構文で、ログを抽出できます。

たとえば過去24時間以内に、特定のwebアプリでログレベル=infoのものでログ本文に****といったような文字が含まれているログの抽出などです。

Application Insightsではさらにアプリ単位のパフォーマンスチェックなどができます。

Logic Apps

Azure内のサービスを組み合わせて、連携させるサービスです。結局、使わなかったのですが、

  1. 決まった定時にLogAnalyticsから特定のクエリを抽出
  2. それをBlobStorageにCSVに加工して保存

といったサービスをノーコードで組みました。

AWSでいうとStepFunctionのようなもののようです。

AppService

いろんな言語のプラットフォームが搭載されていて、またスケリーングも可能なPaaSです。2021年-2022年のプロジェクトでゴリゴリ使ってました・・・

OSや言語ランタイムがすでに搭載されているので、バージョンアップなんかを気にすることなく、またロードバランサーも搭載さているので、アプリ開発だけに専念できます。

ソースをpullするか、成果物のzipをそのままエントリーポイントにデプロイすればいいのでめっちゃ楽です。herokuに近い感じ。AWSでいうと使ったことないのですが、Elastic Beanstalkというものが近いようです。

参考文献

全体像と用語がよくわかる! Microsoft Azure入門ガイド

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

パス名パラメータの未チェック・ディレクトリトラバーサル

本日もセキュリティ関係のネタを少々。ディレクトリ・トラバーサルという攻撃です。 Contents1 ディレクトリ・トラバーサルとは?2 被害3 対策4 参考リンク ディレクトリ・トラバーサルとは? g …

no image

サーバー設定ファイルについて apache

以前から気になっていたサーバーの設定ファイルに関しての疑問について調査。 本日はapacheについて学習しようと思います。 通常のapacheの設定ファイルは[crayon-661c9bfc2dc88 …

no image

nginxの設定&php-fpmインストール

本日、久しぶりにPHPのWebアプリを別サーバーに移行したのですが、nginxの設定でかなり手間取りましたのでちょっと記録しておきます。 Contents1 nginxの設定1.1 インストール1.2 …

no image

OSコマンドインジェクション

Contents1 OSコマンドインジェクションとは?2 被害3 対策4 参考リンク OSコマンドインジェクションとは? OSに対する命令文を不正に紛れ込ませて攻撃させる手法。 被害 サーバー内のファ …

no image

nginx基本

データベースについて勉強していましたが、実務でnginxを触る機会があったので、これを機に勉強。 Contents1 参考文献2 nginx基礎3 コアモジュール4 httpモジュール5 設定ファイル …

アーカイブ