クラウドとは
クラウドはクラウドコンピューティングの略で、必要なときに必要なだけコスパよくリソースを使用できる、コンピューティングリソースの利用形態のひとつのこと。
従来のオンプレミス環境と異なり、リソースの拡張や縮小を動的に行うことができ、リソースの負荷状況に応じた自動的なスケーリングも可能。
サービスの提供形態
主に3つの形態で提供される。
IaaS(Infrastructure as a Service)
インフラストラクチャ(仮想サーバーやネットワークなど)の提供。
PaaS(Platform as a Service)
アプリケーション実行に必要なプラットフォームを提供。
SaaS(Software as a Service)
完成したソフトウェアサービスの提供。
検討の際はSaaS→PaaS→IaaS
の順で検討し、なるべく開発運用コストを下げていく必要がある。
クラウドの種類
パブリッククラウド
クラウド事業者(例:AWSやGCPなど)が企業や個人にクラウドサービスを提供するもの。
基本クラウドといえばこれに値する。
利用するリソースを柔軟に対応できるが、障害発生時などは自社で対応できない。
プライベートクラウド
自社など組織専用のクラウド環境。
自由度が高く、障害発生時に自社での対応を行うことができる反面、リソースの最大量を確保しておく必要があったりとかなり大きいコストがかかる。
規模が大きく自社で運用した方が安い場合や、セキュリティ面でパブリッククラウドを上回るスペックを実現したい場合などに選択される。
基本的にコストが最低限で抑えられるものから優先的に適用できないか検討していく必要がある。
ハイブリッドクラウド
パブリッククラウドとプライベートクラウドを組み合わせた形態。
主要なクラウドサービス
ストレージサービス
基本的なクラウドサービスのひとつで、データ保存やバックアップの用途に使用される。
例:AWS-S3
オブジェクトストレージという、オブジェクト単位で格納削除などをできるもの。
耐久性と可用性がポイントで実質容量無制限。
使った分に対しての従量課金なため、低コストで抑えられる。
仮想サーバー
物理的なサーバー上に複数の仮想的なサーバーを動作させたもので、物理サーバーと同様の機能を提供している環境。
例:AWS-EC2
IaaSなため、サーバーで実行できることは大抵可能。
数分でサーバーを利用開始することができ、性能を決めるスケールアップ・ダウン、数の増減ができるスケールアウト・ダウンが容易。
オートスケーリング機能を使用したら自動で変更することができる。
-
ロードバランサー
複数のサーバーにアクセスを振り分ける負荷分散が可能。
障害対策にもなる。 -
オートスケーリング
負荷に応じて自動的にスケールを対応することができる。 -
スナップショット
仮想サーバーのディスクをバックアップする仕組み。
(AWS-S3に保存される)
ネットワーク
例:AWS-VPC
仮想的なネットワークをAWS上に作成することができる
例:AWS-Route53
DNSサービス
可用性100%
データベース
整理された形でデータを保存・検索できるサービス。
高いスケーラビリティを提供する。
例:AWS-RDS
マネージドサービス(クラウド活用例)
クラウド事業者がハードフェア、OSなどを管理してくれるサービス
これにより運用の手間が省けたり、コストダウン、品質確保につながる
データ分析
例:AWS-RedShift
ビッグデータ(大量のデータ)を保存分析するためのサービス
EMRという高速にビッグデータを分散処理してくれるオープンソースフレームワークもある。
BIツール
例:AWS-QuickSight
大量に蓄積したデータから必要な情報を集約し、見やすくするもの。
ビジネスの意思決定において判断材料とするとわかりやすい。
IoT連携
モノがインターネットに接続される仕組み。
ロボット掃除機だったり、スピーカーによる操作などが該当する。
今後色々なものがインターネットと繋がっていくことが予想されている。
クラウドでのシステム構築のメリット
- 物理サーバーなどを使う必要がなくなる
- オンプレミスでは難しい規模のシステム構築を行うことができる
- コスト面やセキュリティ面での柔軟な対応
責任分界点
どこまでがクラウド事業者の責任で、どこからが利用者の責任なのかを定義するもの。
- IaaS:OS以降は利用者責任
- PaaS:アプリ以降は利用者責任
- SaaS:基本的に利用者は使用のみ
まとめ
クラウドはセキュリティや障害のリスクがあることは前提とするため、サービスの停止やデータの消失などは常にあり得る。依存しすぎず対策を予め取っておくことが大事。
パブリッククラウドの場合はサービス終了などの可能性も考えられるため、なるべく大手のサービスを利用したり、バックアップを取って置いたりで対策すること。
また、クラウドでは物理的な場所をわけたりと、災害対策を行い可用性を高める工夫もされている。