【特別企画】

PaaSを用いればもっと楽になる? クラウド運用をより効率化するためのヒント

 

近年、必要に応じてリソースが得られるパブリッククラウドの需要は急速に増加している。IDC Japanが2015年8月に発表した「国内パブリッククラウドサービス市場 2014年の実績と2015年~2019年の予測アップデート」では、2015年の国内パブリッククラウドサービス市場規模について前年比29.5%増の2516億円と予想。実際、周辺の企業で導入したという話題も増えているのではないだろうか。

クラウドのレイヤーは、大きく3つに分けることができる。ソフトウェアをインターネット経由で利用する「SaaS(Software as a Service)」、アプリケーションが稼働するプラットフォームをインターネット上のサービスとして提供する「PaaS(Platform as a Service)」、インフラストラクチャをインターネット上のサービスとして提供する「IaaS(Infrastructure as a Service)」だ。

各種サービスやシステムの環境を構築する場合、PaaSもしくはIaaSが候補となるが、実はPaaSのメリットに気付かずIaaSを選んでしまっている企業も多い。そこで本稿では、クラウドの構築と運用をより効率化する手段として「PaaSを用いる方法」について見ていこう。

そもそもPaaSとは?

まずはPaaSとIaaSの違いについておさらいしたい。

IaaSで各種サービスやシステムを構築する際は、その準備段階として仮想サーバにOSをインストールした後、利用するプログラミング言語やデータベースの設定を行う必要がある。ここで課題となるのは、サービスやシステムの構築頻度が高くなるほど手間と時間を要し、それだけ開発業務にかけられる時間が減ってしまうこと。

アプリケーション開発を手がけるエンジニアは、あくまでもクオリティの高いアプリケーションを効率的に開発するのが本業であり、インフラの構築・運用・管理は雑務でしかない。この雑務に多くの手間と時間を費やし、本業がおろそかになるようでは本末転倒だ。

一方、PaaSの場合は必要な環境がそろった状態でスタートすることが可能。これにより、プログラム開発に注力できるため、結果として質の高いサービスやシステムを短納期で仕上げられるのである。

それでは、事業者側ではPaaSについてどのように捉えているのだろうか。国産クラウドサービス「ニフティクラウド」において、2013年12月からインテグレーションに必要な機能をPaaSとして提供している、ニフティ クラウド事業部 クラウドプラットフォーム部の担当者に話を聞いてみた。

ニフティクラウド 小林氏:ニフティクラウドにおけるPaaSの位置付けとしては、ミドルウェアやオープンソリューションをパッケージ化し、お客様が扱いやすい形で運用まで含めた自動化の仕組みを提供するものが多いですね。

DBやDNS、構築の仕組み自体などに弊社が有する技術やノウハウを盛り込むことで、お客様が自ら設計・構築する手間や運用工数の削減につながります。


ニフティクラウド 五月女氏:PaaSには現在、大きく分けて2つのパターンが存在しています。アプリケーションを置くだけで動作するものと、ニフティクラウドのようにこれまでIaaSのインテグレーションで必要だった各パーツを自動化したものです。

ニフティクラウドでは、お客様のインテグレーションをいかに支援できるかという観点から、この自動化したパーツを「エンジニアリングパーツ」として提供しています。特定の用途というよりも、汎用的なWebサービスやシステムなどに用いられるミドルウェア部分を自動化するためのツール、といったイメージです。


ニフティクラウド 竹内氏:設計は従来通りで、たとえば「DBの運用だけを省きたい」といった場合に使えるのがエンジニアリングパーツの大きなポイントです。DBならRDBに置き換えるなど、もともとお客様が手動で構築していた部分をそのままスケールできるため、さまざまな環境で手間なく柔軟にお使いいただけます。


PaaSに関しては、まだ一般的に"開発業務を効率化できる"というイメージがあまり浸透していないようだが、ニフティ社内では逆にIaaSと比べてPaaSの利用率が圧倒的に高いそうだ。これは、同社が提供しているさまざまなWebサービスの開発にPaaSを利用し、大幅な業務効率の向上を実現しているため。現在ニフティクラウドでは「RDB」「DNS」「ESS(メール配信)」「MQTT」「タイマー」「Automation」という6種類のエンジニアリングパーツを提供しているが、これらは顧客のニーズからだけでなく、社内で使い続ける中で生まれたものも多いとのこと。

また、絶対数ではまだIaaSの方が多いものの、伸び率で見ると最近はPaaSの方が高い傾向にあるという。たとえばゲーム開発会社など、あまり構築に時間をかけられないような企業から高評価を得ていたり、エンタープライズ向けに検討したいといった問い合わせも多いそうだ。

■ 関連記事

PaaSを使ってなにができるの?

それではここで改めて、ニフティクラウドで提供しているエンジニアリングパーツの概要を紹介しておこう。


  • RDB

DBサーバの構築・運用・規模拡大に関する作業を、簡単かつ分かりやすいUI上で行えるエンジニアリングパーツ。冗長化や自動バックアップに加えて、リソース監視・DBログ取得、ある時点のDBサーバをもとに新しいDBサーバの作成が可能な「ポイントインタイム・リカバリー」、読み出しの負荷を分散できる「リードレプリカ」など多彩な機能を備えている。

  • DNS

DNSサーバを構築・管理・運用できるエンジニアリングパーツ。レコードごとに設定が可能な「重みづけラウンドロビン」、東西リージョンを併用した可用性の高いシステムが構築できる「フェイルオーバー」などの機能を備えており、ドメイン取得から管理まで一貫したサービスを提供する。

  • ESS(メール配信)

SMTPリレー/REST APIによりニフティクラウド上のシステムと容易に連携できるメール配信エンジン。配信時間指定はもちろん、送信先メールサーバの特徴を分析し、適切なメール配信スピード制御/IP制御/並列配信制御をリアルタイムに行うことで、1時間100万通もの安定したメール配信実績を持つ。

  • MQTT

IoT・M2M向けに適した軽量かつシンプルなメッセージ配信プロトコル「MQTT(MQ Telemetry Transport)」のブローカーサーバー部分を提供するエンジニアリングパーツ。専用GUIからの容易なメッセージ配信が行えるほか、WebSocketポートへの対応、作成したブローカーに対するアクセスコントロール、QoSなど多彩な機能を備えている。

  • タイマー

定期的なジョブの実行に必要なタイマー機能を提供するエンジニアリングパーツ。ニフティクラウド上のサーバや定期的なバッチ処理をコントロールパネルから容易に登録することができ、ログの転送・集約ツール「fluentd」などへの連携も行える。

  • Automation

用途に合わせた設定済サーバの作成に加え、コントロールパネルでリソースごとに行っていた各機能の作成・管理がまとめて実施できるエンジニアリングパーツ。オンプレミス環境やプロジェクトホスティングサービス「Github」、クラウドストレージなどに保管されたアプリケーションの管理・デプロイも実施できる。


各パーツのニーズについては、さまざまなシステムにDBが使われていることから、RDBがトップ。メール配信に使われるESSやDNSもかなり需要が増えているそうだ。Automationに関しては、他の国内ベンダーではあまり提供していないこともあり、あまり知られていない機能だが、実際に活用しているユーザーからは非常に評価が高いという今後の伸びが期待されるパーツのひとつとなっている。

これらのエンジニアリングパーツは、実際にどのようなシーンで活用されているのか。実例なども踏まえて聞いてみた。

ニフティクラウド 小林氏:メールサーバやDNSは、オープンソースの技術を使えば誰でも構築が可能な反面、それをパブリックで公開するとなるとかなりのスペックやセキュリティが要求されます。大手企業なら専任担当者を任命できるかもしれませんが、本来そこにはあまりリソースを割きたくないはずです。

そのような際にエンジニアリングパーツを使うと、脆弱性に対するアップデート対応など運用面の負担をニフティの専任エンジニアが受け持つため、最小限のリソースで安定したサービス提供が可能になります。


ニフティクラウド 五月女氏:DBは構築するよりも、その後の「冗長化」「バックアップ」「メトリックの監視」という部分が一番面倒なものです。これらをニフティクラウドが代わりに行うことで、お客様の作業にかかる手間や時間が大幅に削減できます。

また、メールサーバの運用もシステム管理者にとって大きな負担です。たとえば「メールが相手先に届かない」という場合でも、原因としてはDNSによる名前解決ができない、IPアドレスの汚れ、サーバが負荷に耐えられないなど、実にさまざまな原因が考えられます。エンジニアリングパーツを使えばこれらの処理を自動化できるため、エンドポイントのURLにメール送るだけで済んでしまいます。


ニフティクラウド 小林氏:ニフティクラウドのIaaSはAPIを利用できますが、例えば時間指定でサーバを起動するといった操作を行うとしてもAPIに関しての知識を学ぶ必要があるため、実際のところ使い切るまでに至らないお客様は多いと思います。しかしエンジニアリングパーツのタイマーを使えば、各種バッチ処理やサーバの稼働時間設定が簡単に行えるため大変便利です。


ニフティクラウド 五月女氏:たとえばSIerがエンドユーザー向けにクラウドシステムを作る際、定型の“勝ちパターン“となる構成があるようなら、Automationに流すだけでテンプレートのサーバやRDBを構築できるため大変便利です。

ニフティクラウドでご提供しているコントロールパネルのように、本番環境と同じものをバックエンドで構築し、新バージョンが完成したら本番環境と入れ替える、といった「blue-green デプロイメント」的な使い方もできます。手間や時間はもちろん、人為的要因のミスを減らせるのも大きいですね。


ニフティクラウド 小林氏:新しいWebアプリケーションを開発する場合、大抵はWebサーバ/アプリサーバ/DBサーバを2台ずつ、計6台構築すると思います。普通に作ると結構な手間がかかりますが、Automationを使えばリードタイムの大幅な短縮が可能です。


冒頭で述べたように、パブリッククラウドで各種サービスやシステムの環境を構築する場合、IaaSでの構築・運用を前提にしている企業はまだ多い。しかし、ニフティがPaaSとして提供しているエンジニアリングパーツを使えば、開発や運用を大幅に効率化することができる。ちなみに、ニフティクラウドの開発・運用においてもエンジニアリングパーツのひとつ「Automation」が幅広く活用されているそうだ。

最後に、PaaSを採用する上でのアドバイスをもらえたので、こちらも参考にしていただきたい。

ニフティクラウド 小林氏:同じ冗長化や可用性を高める仕組みを構築する場合でも、オンプレミスとクラウドでは使う技術やノウハウ、勘所などに違いが出てきます。こうした点で、ニフティクラウドのIaaSを基礎から学んで設計するより、必要なエンジニアリングパーツがそろったPaaSを使った方が、設計工数の削減や製品リリースまでのリードタイム短縮につながるわけです。お客様の代わりに私たちが学んだ成果を、ぜひ有効活用してください。


ニフティクラウド 五月女氏:PaaSの仕様や操作方法などは、提供している事業者によって結構異なります。中にはデータの持ち方やロジックから違うこともあるので、比較検討時にはしっかりと仕様や操作方法を確認しておくと良いでしょう。


(マイナビニュース広告企画:提供 ニフティ)

人気記事

一覧

イチオシ記事

新着記事

Windows 10ミニTips 第121回 OneDriveの同期を一時停止する
[00:00 9/30] パソコン
ブラッド・ピット、映画試写会への参加断念「今、家庭の問題に焦点を…」
[23:49 9/29] エンタメ
東尾理子、夫・石田純一の出馬騒動への不満爆発!?「話が下手なのに」
[23:37 9/29] エンタメ
きくち正太がおとなの週末に登場、イブニングで島耕作の上司・中沢喜一の読切も
[23:17 9/29] ホビー
劇場版『マジェスティックプリンス』、サブタイトル決定! 新ビジュアル公開
[23:00 9/29] ホビー