More Related Content Similar to Azureでクラウドを何となく理解する Similar to Azureでクラウドを何となく理解する (20) Azureでクラウドを何となく理解する29. 参考文献
• IaaS/SaaS/PaaS/DaaS、それぞれのちがいを詳しく説明。 – 株式会社キャパ CAPA,Inc.
• Azure Web AppをGitで継続的デプロイする – Qiita
• ToruMakabe/ImpressAzureBookDotNetCore
• Azure Machine Learning でいきなり機械学習 – Qiita
• Azure Machine Learning のサンプルを使って機械学習を始めてみよう! – Microsoft Japan Data Platform
Tech Sales Team Blog
• 高機能 Wiki「Crowi」を Docker で手軽に試す - らくがきちょう
• nooby-noob/docker-node-crowi
Editor's Notes 突然ですがクラウドと言ったら何を思い浮かべるでしょうか? ネットで調べるとクラウドの定義は色々出てきますが、私はこれが一番しっくりきました。
つまり、ネットワークやデータベース、マシンそのものといった「リソース」をサービスとして提供するビジネス、それがクラウドだということです。 これは、Microsoftのサミットの基調講演で最近目にする図です。
「デジタル・トランスフォーメーション」とは「ITの浸透が、人々の生活をあらゆる面でより良い方向に変化させる」という概念ですが、MicrosoftはこれをIntelligent CloudとIntelligent Edgeという二つの大きな枠組みで実現しようとしています。
つまり、これからクラウドはより一層ITインフラとしての役割が大きくなっていくだろう、ということです。 クラウドの主な種類がこちらです。着色しているところが「ユーザが特に活用する部分」を表します。
Azureは主にIaaSとPaaSを提供しています。 今回はAzureを例にご説明します。 Azureはここに挙げられているように非常に多くのサービスを提供しています。
例えばCompute、Storage、NetworkingといったサービスはIaaS寄りで、Web and Mobile、Integration、Analytics & IoTなどはPaaS寄りといえるでしょう。更にそれらの中にも細かい機能があり、とてもじゃないですがその全部を今回説明することはできません。 言葉で説明していても理解が追いつかないので実際にいじってみることにします。 クラウドというと何となくお金がかかるイメージがありますが「お試し」だけなら割と気軽にできて、Azureでは30日間、200ドルの範囲でサービスを試用できたりします。 2台に負荷分散された仮想マシンからSQLデータベースにセキュアにアクセスするHTTPサーバを構築してみます。 次にAzure App Serviceを利用したアプリケーションPaaSについてご紹介します。 Azure App Serviceはユーザアプリケーションを動かすための基盤で、用途別に以下のようなサービスがあります。
Web App
Webサイト、Webアプリケーションのための基盤
Mobile Apps
モバイルアプリケーションのバックエンドに特化したサービス
API Apps
REST APIを提供するアプリケーションのための基盤
Logic Apps
できる限りコーディングせずにアプリケーションを創るためのワークフローと部品を提供するサービス
Functions
小さなコードをイベント駆動で手軽に実行できる基盤 今回はWeb Appに絞って説明します。
Web Appはこのようなシステム構成になっていて、グレー部分はAzureが管理しています。そのためユーザは仮想マシンやネットワーク、OS導入やパッチ適用などの維持管理を行う必要がなく、設定したランタイムやコンテナの上にビルド済みのアプリケーションをデプロイするだけでWebアプリを動かすことができます。
またグレー部分は完全なブラックボックスというわけではなく必要に応じて管理ツールからログなどを参照することもできるようになっています。 現在、サポートしているランタイムはこの通りです。DockerはLinuxのみ対応です。 ということで今度はWebサーバを立ててみましょう。 クラウドを活用したWebアプリ紹介のついでにこんなのも。 PostgreSQLに蓄積したデータをJupyterで分析し、そのソースコードをGitLabで管理。
設計書やノウハウ的なものをCrowi(マークダウンが使えるWiki)にまとめる。
データの永続化が問題点。 せっかくの大阪AI勉強会なのでAIに関連したことも紹介しておきましょう。 Azureには「Azure Machine Learning Studio」というGUIベースで機械学習ができる環境が用意されています。
前回ご紹介したSonyの「Neural Network Console」にも似ていて、直感的にDeep Learningを動かすことができます。 Azure AI Galleryから適当に。 最後になりますが、これからの「クラウドファースト」社会に向けて私の個人的な意見を一言述べさせて頂きます。 冒頭の「デジタル・トランスフォーメーション」でも触れましたが、クラウド基盤をベースとして世の中の様々なデバイスがインターネットに接続される時代になってくると思います。
世の中はますます便利になると共にコンピュータインフラが必須のものとなり、クラウドの存在が更に重要になってくることでしょう。
そう聞くと皆さんも「クラウド覚えなきゃ」と感じるかもしれません。 ただ、クラウドは一筋縄ではありません。
ネットワークエンジニアやデータベースエンジニアがそれ一つ極めているだけで技術者としての価値を成しているように、インフラは最も基本的かつ難しい技術分野なのです。
クラウドでWebサーバ一つ立てるにしても、お試しならまだいいかもしれませんが、本番運用を考えたら負荷分散がどうだとかプロトコルがどうだとか、セキュリティがどうだとか、色んなことを考えなければなりません。 ただ、皆さんはインフラエンジニアになりたいですか?
なりたいなら、先ほどのようなことを徹底的に理解し、使いこなせるようになる必要があるでしょう。 私は少なくともそうではないです。
別にインフラをやらないからと言ってエンジニアとしての道がないわけではないし、デジタル・トランスフォーメーションの資料のようにクラウドと相互にやり取りするEdgeデバイスを作っていくことだってエンジニアとしての重要な役割なはずです。
そういった「システムエンジニア」の人たちにとって、ではクラウドとは一体どうあるべきなのでしょうか。 私は「クラウドでこんなことができる」あるいは「クラウドがあればこんなに便利になる」ということを知識として持っていることが重要なのではないかと思います。
AIもそうですが、一つの技術を極めてそれでやっていくのは容易なことではありません。
結局、どこまでを「基本」の落とし所とするかが焦点になってくるのではないでしょうか。