サイオスAzure課金管理サービスのアーキテクチャ

◆ Live配信スケジュール ◆
サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。
⇒ 詳細スケジュールはこちらから
⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください
【4/18開催】VSCode Dev Containersで楽々開発環境構築祭り〜Python/Reactなどなど〜
Visual Studio Codeの拡張機能であるDev Containersを使ってReactとかPythonとかSpring Bootとかの開発環境をラクチンで構築する方法を紹介するイベントです。
https://tech-lab.connpass.com/event/311864/

こんにちは、サイオステクノロジー技術部武井です。

今回は、弊社が提供するサービス「サイオスAzure課金管理サービス」のアーキテクチャについて説明したいと思います。

サイオスAzure課金管理サービスとは?

大学・官公庁でのAzure利用料金管理を容易にするためのSaaS型サービスです。Azureは、非常に便利ですが、ちょっと気を緩めると、あっという間に使いすぎて、すごい料金を請求されることになります。Azureの利用料金を適切に管理し、使いすぎを防止することが可能です。詳細は以下のURLを参照下さい。

https://sios.jp/products/edu/azure-billing.html

サイオスAzure課金管理のアーキテクチャ

サイオスAzure課金管理サービスのアーキテクチャには、1つの設計理念があって、それは「構成する全てのシステムがPaaSであること」です。IaaSですと、OSやアプリケーションサーバーのセキュリティアップデートを余儀なくされます。PaaSであれば全てAzureが面倒を見てくれます。

以下がシステム構成図です。

Screen Shot 2017-10-16 at 7.35.42

アプリケーションサーバーはAzure Web App、ジョブ実行環境はAzure Web Job、データベースはAzure SQL、メールサーバーはSendGrid、キューはAzure Storageキューと、全てPaaSで構成されています。

Azure Web App

Webアプリケーションを動かす環境です。Java、PHP、C#等様々な言語をサポートしています。OSもLinuxとWindowsから選択ができますが、2017年10月16日現在、JavaをサポートしているのはWindowsだけだそうです・・・。Linuxも早くサポートしてほしいです。

デプロイ方法も多種あり、便利なのはgitによるデプロイです。

サイオスAzure課金管理サービスでは、管理者向けのWebインターフェースを提供しています。JavaのWebアプリケーションフレームワークであるSpring Bootをベースとしたアプリケーションが稼働しています。

Azure Web Jobs

Azure WebJobsとは、Azureにて、crontabで定義するような定期処理、もしくはデーモンプロセスのようなものを起動するための仕組みです。

スケールアウト、スケールアップも管理ポータルから可能で、楽ちんです。

サイオスAzure課金管理サービスでは、APIによって取得した課金情報のデータベースへの格納、メッセージキュー監視などに利用しています。

Azure SQL

Microsoft SQL ServerのPaaS版です。バックアップも全て自動で取得してくれますので、アプリケーションエンジニアは、開発に専念できます。

サイオスAzure課金管理サービスでは、APIによって取得した課金情報を保存し、集計するために利用しています。

SendGrid

メールを送信するためのサービスです。SDKが提供されており、簡単にメールを送信ができます。

一番すごいのは無料枠でのメールの送信量です。月25,000通送信できます。ほとんどの場合は、Freeでいいのでは?

Azure課金管理サービスでは、あらかじめ定めた仕様限度額を超えた場合のアラートメール送信に利用しています。

Azure Storageキュー

メッセージキューのための仕組みです。AzureにはAzure StorageキューとService Busキューの2種類あります。平たくいってしまえば、前者は機能は少ないけれど高速、後者は多機能だけど若干レスポンスが遅いかもといったところです。

Azure課金管理サービスでは、メール送信、仮想マシン作成、ユーザー一括作成処理など、非常に時間のかかる処理を非同期で行うために利用しております。各システムが、Azure Storageキューにメッセージをキューイング、Workerプロセスが常時キューを監視し、メッセージの内容に応じて、適切な処理を行います。

アバター画像
About 武井 宜行 269 Articles
Microsoft MVP for Azure🌟「最新の技術を楽しくわかりやすく」をモットーにブログtech-lab.sios.jp)で情報を発信🎤得意分野はAzureによるクラウドネイティブな開発(Javaなど)💻「世界一わかりみの深いクラウドネイティブ on Azure」の動画を配信中📹 https://t.co/OMaJYb3pRN
ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

0人がこの投稿は役に立ったと言っています。


ご覧いただきありがとうございます。
ブログの最新情報はSNSでも発信しております。
ぜひTwitterのフォロー&Facebookページにいいねをお願い致します!



>> 雑誌等の執筆依頼を受付しております。
   ご希望の方はお気軽にお問い合わせください!

Be the first to comment

Leave a Reply

Your email address will not be published.


*


質問はこちら 閉じる