Azureのサーバー
Azureのサーバーは、仮想サーバーを中心としたコンピューティングサービスです。WindowsサーバーやLinux、SQLサーバーなどの仮想マシンを用いて環境を構築し、使用します。
【参考】:Azure コンピューティング
Azure コンピューティングサービスは、複数の製品で構成されています。コンテナサービスやバッチサービスなど、用途に応じて最適なサービスを選択することもできます。汎用サーバーのほか、ゲームプラットフォームとしてもサーバーを利用することができます。
【参考】:ゲーム開発用Azure
そもそもAzureとは
Azureとは、マイクロソフト社が提供するクラウドコンピューティングサービスを指します。Azureのクラウドデータセンターは、世界をカバーするリージョン単位に管理されており、200以上の製品サービスが提供されます。
Azureの動作状況はウェブサイトに公開されており、障害発生時には優先度に応じて必要な情報が掲載され、透明性が高い運用がなされます。
【参考】:Microsoft Azure 【参考】:Azure 製品 【参考】:Azure の状態
Azureのサーバー導入メリット
Azureはマイクロソフト社によって提供されます。そのためマイクロソフト社製のソフトウェアとの親和性が高く、操作性やデータ連携の点で優れています。
特にWindows環境で動作するソフトウェアは、クライアントとサーバーが連携し、オンプレミスとクラウドを意識しないハイブリッドクラウド環境を構築することが可能です。
Azureにおいてもクラウドサービス事業者のメリットである、総所有コスト(TCO)を削減することができます。分かりやすく言うと、Azureはどこでサーバーが稼働しているかを意識せずに必要なサービスや仕組みが利用でき、さらにコスト削減が可能になるサービスと言えます。
Azureの料金体系
Azureの料金体系は、従量課金制です。ワークロードは、「汎用」「コンピューティングの最適化」「メモリの最適化」「ストレージの最適化」「GPU」「ハイパフォーマンスコンピューティング」のカテゴリーに分類されています。
各カテゴリーは、仮想マシンのシリーズからなり、コア数とメモリ量・一時ストレージ量が、シリーズごとに設定されています。
【参考】:Azure の価格 【参考】:Windows Virtual Machines の料金 【参考】:Linux Virtual Machines の料金
Azure サーバーサービスの種類
Azureのサーバーサービスは、仮想マシンとサーバーレスのソリューションで構成されています。さらに用途別にいくつかのサービスが提供されます。想定する用途はソリューション別に紹介されています。
【参考】:Azure ソリューション
Azureの仮想マシンソリューション
Azureの仮想マシンソリューションは、大まかにOS別に分けられて提供されます。仮想マシン上では、SQL ServerやOracleなどのDBMS、SAPなどの業務プラットフォームとして利用します。
【参考】:Azure Virtual Machines 【参考】:SAP on Azure
主な仮想マシンは、以下のものが提供されています。
・Windows用仮想マシン Windowsサーバーのワークロードを稼働します。具体的には、Windows ServerやSQL Server、.NETなどをクラウド環境に移行できます。
・Linux用仮想マシン Linux用仮想マシンでは、Red HatやSUSE、Ubuntuなど多くのディストリビューションから選択可能です。Kubernetesのコンテナ管理を用いたデプロイや、マーケットプレースから仮想マシンのAzure用イメージを選択することもできます。
【参考】:Azure の Linux 仮想マシン
・SQLサーバー用仮想マシン SQL Serverのワークロードは、Azure SQLファミリーとして用途別に提供されます。Azure Virtual Machinesは、汎用サーバーの仮想マシンのほかSQLサーバー向けにも提供されます。SQL Serverは、マイクロソフト社製品のため、総所有コストは他のクラウド事業者よりも削減効果が見込まれます。
【参考】:Azure Virtual Machines における SQL Server
Azureのサーバーレスソリューション
Azureにおいても、サーバーレスソリューションが提供されます。サーバーレスとは、必要な時に必要なサービスを利用できる環境を指します。
通常は、事前にサーバーサービスの契約を行いますが、サーバーレスでは、需要変動や特定イベントをトリガーにサーバーレスのクラウドリソースを利用し、管理の手間なくサービス稼働させることができます。
【参考】:Azure サーバーレス
主に利用するのは、以下のサービスです。
・Azure Functions Azure Functionsは、定義するイベントで駆動する関数を定義し、任意のプログラミング言語のコードから実行します。具体的には、負荷状況に応じてスケーリングを行い、使用時のみ課金されます。
使用可能な言語は、C#やJavaScript、F#・Java・PowerShell・Python・TypeScriptなどです。Visual StudioとVisual Studio Codeからも利用できます。
【参考】:Azure Functions 【参考】:Azure Functions でサポートされている言語
・Azure Container Apps Azure Container Appsは、サーバーレス環境でコンテナをデプロイします。HTTPのトラフィックや、KEDA(Kubernetes Event-driven Autoscaling)のスケールトリガーを用いて、業務のジョブやDB処理に応じたスケーリングが可能です。
Kubernetesを用いて、自動的にデプロイからスケールまで実行するオーケストレーション環境を構築することも可能です。
【参考】:Azure Container Apps 【参考】:Kubernetes on Azure
・App Service App Serviceでは、ウェブアプリケーションやモバイルアプリ、APIアプリケーション、Dockerコンテナをホストし利用することができます。アプリの開発からデプロイ、そしてスケーリングを行います。 .NET、JavaやNode.js、Python・PHPが、WindowsやLinux、コンテナ環境で操作できます。
【参考】:App Service
Azureの構築方法
Azureの構築は、Azure Portalというポータルサイトを通して行います。仮想マシンの作成から開発、デプロイまでの手順がドキュメントにまとめられています。
【参考】:Azure での仮想マシン
仮想マシンの作成
Azure Portalの「仮想マシン」をクリックし、「仮想マシンの作成」で新規のリソースグループを作成します。「インスタンスの詳細」で「仮想マシン名」を設定し、アカウント情報と受信ポートを入力後、「確認および作成」で仮想マシンを作成します。
【参考】:クイック スタート:Azure Portal で Windows 仮想マシンを作成する 【参考】:クイック スタート:Azure portal で Linux 仮想マシンを作成する
仮想マシンの環境構築
仮想マシンの作成完了後に、環境構築を行います。Azure Portal上から「リソースに移動」をクリックし、利用することができます。仮想マシンへの接続はRDPを用いてリモートデスクトップを表示させ、接続します。
その後、必要なソフトウェアをインストールし、環境構築を進めます。SSHで接続することもできます。Azure Cloud ShellというCLI(コマンドラインインターフェース)を利用したり、PowerShellを利用したりすることもできます。詳細については、以下のチュートリアルをご確認ください。
【参考】:チュートリアル:Azure PowerShell を使用して Windows VM を作成および管理する 【参考】:チュートリアル:Azure CLI を使用した Linux VM の作成と管理
Azureのサーバー活用でコスト削減を目指しましょう
Azureのサーバーを活用することで、マイクロソフト社が提供するWindows ServerやSQL Serverを含めた総所有コストの低減が期待できます。Azure公式サイトの試算によると、Azureとクラウド事業者最大手のAWSと比較し、最大5倍のコストメリットがあることがアピールされています。
【参考】:Azure 製品別の価格の詳細
上記比較は2018年11月の一般公開価格に基づくデータで、現状のコスト試算は言及されていません。それでもマイクロソフト社製品を多用するユーザーはその恩恵を受けることができ、クラウドサービスの選定候補としておすすめです。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから