ITの基礎知識

【IT知識ゼロからOK】サーバーとクラウドの基本 ― 生成AI時代のアーキテクチャ超入門・基礎編

【IT知識ゼロからOK】サーバーとクラウドの基本 ― 生成AI時代のアーキテクチャ超入門・基礎編

本記事について

当サイトを閲覧いただきありがとうございます。 本記事はシリーズ『生成AI時代のアーキテクチャ超入門』の「ITの基礎知識」編・第2弾として、サーバーとクラウドの基本を解説する記事です。

前回の記事では、Webサービスを「注文する客と応えるお店の分業」として説明しました。今回はその「お店側」、つまりサーバーについてもう一段深掘りしていきます。サーバーがどこに有って、誰が管理していて、なぜ「借りる」のが主流になったのか。このあたりが分かると、本編で頻繁に出てくるクラウドやAWSといった言葉が急に身近になると思います。

前回の記事をまだ読んでいない方は、先にこちらから読んでもらえるとスムーズです。

【IT知識ゼロからOK】Webサービスが動く仕組み ― 生成AI時代のアーキテクチャ超入門・基礎編senkohome.com/arch-intro-basics-web/

この記事の結論

  • サーバーは「24時間営業できる、お店用の高性能コンピュータ」と理解する
  • 現代はサーバーを買わずにクラウドで借りるのが主流になっている
  • 借り方には段階があり、どこまで自分で管理するかで種類が分かれる

そもそもサーバーとは何か

サーバーとは、ざっくり言えば「注文(リクエスト)を受けて応えるためのコンピュータ」のことです。

ここで大事なのは、サーバーというのは特別な魔法の箱ではなくて、中身は私たちが使っているパソコンと同じ仕組みのコンピュータだということです。CPUが有って、メモリが有って、データを保存する場所が有る。違うのは役割で、個人のPCが「自分のために働くコンピュータ」なのに対して、サーバーは「大勢のお客さんのために働くコンピュータ」なのです。

実際、技術的には自宅のパソコンをサーバーにすることも出来てしまいます。では、なぜ企業はわざわざ専用のサーバーを用意するのでしょうか?

なぜ自分のPCではダメなのか

理由は、お店の営業に例えると分かりやすいと思います。

まず、お店は24時間365日開けておく必要が有ります。Webサービスは深夜でも海外からでもアクセスされますので、自分がPCの電源を切ったらサービスが止まる、では話になりません。停電やネット回線のトラブルへの備えも必要です。

次に、同時に大勢のお客さんをさばく力が要ります。家庭用のPCは1人で使う前提の性能ですが、人気のサービスには何千人・何万人が同時にアクセスしてきます。席が4つしかない家庭のダイニングで、100人の団体客は受けられませんよね。

そして、壊れたときの被害が桁違いです。個人のPCが壊れても困るのは自分だけですが、サーバーが壊れるとサービスの利用者全員が困ってしまいます。なので、部品を二重化したり、壊れてもすぐ交換できる仕組みにしたりと、家庭用とは比べものにならない備えが必要になるのです。

データセンターという場所

こうした要求に応えるために、サーバーはデータセンターという専用の施設に置かれています。

データセンターというのは、大量のサーバーを安全に動かし続けるための建物です。無数のコンピュータがラック(棚)にぎっしり並んでいて、大容量の電源、停電に備えた自家発電、コンピュータの熱を逃がす強力な空調、そして厳重な入退室管理が備わっています。世界中のWebサービスの実体は、こうした建物の中のどこかのコンピュータで動いている、というわけです。

普段まったく意識しませんが、動画を見ているときも買い物をしているときも、実際にはどこかのデータセンターにあるコンピュータと通信しているのだと考えると、少し面白くありませんか?

自前で持つか、借りるか ― オンプレとクラウド

さて、ここからが本題です。企業がサーバーを用意する方法は、大きく2つに分かれます。

一つは「自前で買って、自分の建物に置く」方法で、これをオンプレミス(略してオンプレ)と呼びます。レストランで言えば、土地を買って自分のビルを建てるようなものです。全部自分の好きなように出来る反面、建てるのに時間とお金がかかりますし、設備の維持も全部自分でやることになります。

もう一つが「借りる」方法で、これがクラウドです。クラウドの実体は、先ほどのデータセンターを巨大な規模で運営している会社(AmazonやGoogle、Microsoftなど)が、その中のコンピュータを必要な分だけ貸してくれるサービスです。テナントを借りて営業するイメージですね。

借りる方式の何が良いかというと、まず始めるのが圧倒的に早いです。ビルを建てるには年単位の時間がかかりますが、クラウドなら申し込んだ数分後にはサーバーが使えてしまいます。それから増やしたり減らしたりが自由です。お客さんが増えたら広い区画に移り、減ったら狭くして家賃を下げる、といったことが簡単に出来ます。建物の保守はオーナー側がやってくれるので、こちらは商売に集中出来るのも大きいです。

こうした理由から、現代の新しいサービスはほぼクラウドで作られるようになりました。本編で頻繁に出てくるAWS(Amazon Web Services)は、このクラウドの世界最大手です。他にGoogleのGCP、MicrosoftのAzureという大手がいて、この3社で世界の大部分を占めています。

借り方にも段階がある ― IaaS・PaaS・SaaS

クラウドの「借り方」には段階が有ります。本編でも頻出する考え方なので、賃貸物件の例えで押さえておきましょう。

クラウドの借り方3段階(賃貸物件の例え) 右に行くほど「自分でやること」が減り、そのぶん自由度も下がる IaaS 空き物件を借りる 部屋(コンピュータ)だけ借りて、 内装も設備も自分で整える 例: AWSのEC2 自分でやること: ・OSの設定や更新 ・プログラムの設置 ・セキュリティ対策の大半 自由度: 高 手間: 大 PaaS 設備付き物件を借りる 厨房設備まで整った物件。 持ち込むのは自分のレシピだけ 例: Vercel・Cloud Run 自分でやること: ・プログラムを書いて置く (OSや設備の管理は不要) 自由度: 中 手間: 小 SaaS 出来上がった店を使う 完成したサービスを お客さんとして利用するだけ 例: Gmail・Slack 自分でやること: ・使うだけ (作る側の仕事はない) 自由度: 低 手間: ほぼゼロ 本編の技術選定は「どの借り方にするか」を決めている場面がとても多い

IaaS(イアース)は、空っぽの物件だけ借りる方式です。部屋(コンピュータ)は用意してもらえますが、内装や設備にあたる部分(OSの設定やソフトの設置)は全部自分でやります。自由度は高いのですが、そのぶん手間もかかります。

PaaS(パース)は、厨房設備まで整った物件を借りる方式です。持ち込むのは自分のレシピ(プログラム)だけで良いので、開発者はプログラムを書くことに集中出来ます。

SaaS(サース)は、もう出来上がっているお店をお客さんとして使う方式です。GmailやSlackのように、自分では何も作らずにサービスをそのまま利用します。

本編を読んでいると、「マネージドサービスに寄せる」という表現が繰り返し出てきます。これは要するに「自分でやることが少ない借り方(PaaS寄り)を選んで、浮いた時間を商売そのものに使おう」という考え方のことです。この感覚さえ掴めていれば、本編のインフラ談義はかなり読みやすくなると思います。

サーバーとクラウドのよくある勘違い

ここで、初心者の方が持ちやすい勘違いをいくつか整理しておきます。私の周りでも実際によく聞くものばかりです。

まず「クラウドは雲の上のどこかにデータが有る」という勘違いです。クラウド(雲)という名前のせいで実体のないものに聞こえてしまうのですが、ここまで読んでいただいた通り、実体は地上のデータセンターに置かれた物理的なコンピュータです。日本向けのサービスなら、東京や大阪のデータセンターで動いていることが多いです。雲どころか、意外とご近所だったりします。

次に「クラウドは常に安い」という勘違いです。確かに始めるのは安いのですが、クラウドは基本的に使った分だけ課金される従量制なので、使い方を間違えると請求額が跳ね上がります。使っていないサーバーを借りっぱなしにしていた、というのは電気をつけっぱなしで外出するようなもので、実際によく起きる失敗です。本編に「コスト管理」という記事が丸々1本有るのは、これが理由です。

そして「大手のクラウドを使えば落ちない」という勘違いです。残念ながら、AWSほどの大手でも障害で止まることは実際に有ります。なので本編では、「壊れない前提」ではなく「壊れても営業を続けられる構え」(冗長化と言います)を作る話が繰り返し出てきます。支店を2つ持っておいて、片方が停電してももう片方で営業する、というイメージです。

最後にもう一つ。「1台のサーバー=1台の物理的なコンピュータ」とは限りません。現代では仮想化という技術で、1台の高性能なコンピュータを、あたかも複数台であるかのように分割して使うのが当たり前になっています。大きなビルをパーティションで区切って複数のテナントに貸すようなものですね。クラウドで借りる「サーバー1台」は、大抵このパーティション1区画のことです。

本編用語との対応表

今回の賃貸物件の例えと、本編で実際に使われる用語の対応を一覧にしておきます。本編で分からなくなったら、ここに戻って読み替えてみてください。

今回の例え本編での用語意味
お店用の建物・部屋サーバー、EC2、仮想マシンサービスを動かすコンピュータ
土地を買ってビルを建てるオンプレミス自前でサーバーを持つ方式
テナントを借りるクラウド(AWS・GCP・Azure)必要な分だけ借りる方式
どの街に物件を借りるかリージョン世界のどのデータセンター群を使うか
客が増えたら広い区画へスケールアップ/スケールアウト性能や台数を増やして対応すること
管理人付き物件マネージドサービス面倒見をクラウド側に任せる借り方
支店を2つ持つ冗長化・マルチAZ片方が壊れても営業を続ける構え

ちなみに「リージョン」は本編のクラウド関連記事で必ず出てくる言葉なのですが、要するに「どの街の物件を借りるか」です。お客さんの近く(日本向けなら東京)に借りた方が、注文と返事の往復が速くなります。

本編との繋がり

サーバーとクラウドの話は、本編では主に「システムアーキテクチャ」カテゴリで扱われています。どのクラウドを選ぶか、どの借り方にするか、料金をどう管理するか、といった話が続きますが、全て今回の「物件選び」の延長線上の話です。

システムアーキテクチャ概要 ― 最初に決める骨組み ― 生成AI時代のアーキテクチャ超入門senkohome.com/arch-intro-system-overview/

この記事に関連する記事

まとめ

本記事はサーバーとクラウドの基本について、賃貸物件の例えで解説しました。如何だったでしょうか。

サーバーは24時間営業のためのお店用コンピュータで、現代はデータセンターの設備をクラウドとして借りるのが主流になっています。そして借り方には、空き物件(IaaS)から設備付き(PaaS)、完成したお店(SaaS)まで段階が有る。この3点を押さえておけば、本編のインフラ関連の話は大枠で追えるはずです。

次回の基礎編では、材料の保管庫にあたる「データベースの基本」を解説していく予定です。

シリーズ目次に戻る → 『生成AI時代のアーキテクチャ超入門』の歩き方

それでは次の記事も閲覧いただけると幸いです。