前提
・Udemy動画でAWSの勉強をしているのですが、そのメモ書きとなります。
インフラの基礎知識
エンジニアの現場では当たり前のように使われるワードの定義を、改めて学び直しました。
何となく知っているつもりになっていたけれど、人に説明してと言われると難しかったりする。。
インフラとは?
・システムやサービスの土台となるもの。
・主にサーバーとネットワークで構成される。
サーバーとは?
・ユーザー(クライアント)に対してサービスを提供する側のコンピュータのこと。
・Webサーバー、DBサーバーなど、役割によって名前が変わってくる。
クライアントとは?
・サーバーにサービスを依頼し、情報を受け取る側のコンピュータのこと。
・クライアントと言われたら、個人が扱うパソコンやスマホをイメージすれば、大体意味が通じると思う(文脈によっては変わるかも?)
※サーバーもクライアントも、全てコンピュータ。コンピュータは与えられる役割によって呼び名が変わる。文脈によって微妙に意味が変わってくる厄介な言葉なので、注意しましょう
ネットワークとは?
・複数のコンピュータを繋いで、データのやり取りを行えるようにする仕組み
サブネットとは?
・ネットワークをいくつかに分割したもの。ネットワークの中にある、小さなネットワーク。
・サブネットごとで、役割を分けたりすることができる。
・(例)サブネットAは、インターネットからアクセスできるよう設定し、Webサーバーを置く。サブネットBは、インターネットからはアクセスできず、ユーザーからデータを直接見れないように設定し、DBサーバーを設置する。このように、サブネットは、ユーザーに見せたいものを見せて、見せたくないものを隠すなど、セキュリティの設定などで使える。
クラウドとは?
・ネットワークを通してコンピューターリソースを利用する仕組みのこと。
・個人的には、クラウドと言われたら雲の中にある場所とか物(要するにサービス)を、ネットワークという紐でひっぱてきて使うイメージでいる。
・AWSはクラウドを利用したサービス。
・メリット:手早く準備できて、初期コストが低い。
・デメリット:クラウドを提供するサービス側の影響が強く、時にその都合に降り回れされる。最終的にかかるコストが予想しづらい。
オンプレミスとは?
・インフラを1から自分で用意して、自分で管理・運用すること。(例)サーバーとなる物理的なパソコン(据え置き型の)を用意し、そのパソコンにOSとか必要なソフトをインストールし、ネットワークと繋げられるように設定し、、、など、1から準備すること。
・メリット:自由度が高く、外部からの影響も最小限に済む。
・デメリット:準備が面倒で、初期コストがかかる。
ビットとバイト
・ビットとは、コンピュータで扱う数値の最小単位。0と1の2進数で表現される。
・8ビット=1バイト
IPアドレスとは?
・ネットワーク上でコンピュータを識別するためするための、インターネット上の住所となる数値。
・ネットワーク上では重複しない数値。
・32ビットの整数値(2進数)
・0と1で表現する2進数のままだと人間には分かりにくいので、8ビット区切りで4つに分け、10進数に変換している。
・IPアドレスの範囲は「0.0.0.0」〜「255.255.255.255」。どうして255が最大なのかは、8ビットの2進数で表現できる最大値が「11111111」で、これを10進数に変換すると255になるから。
・例)2進数「10101100 00010100 00000001 00000010」→10進数「172.20.1.10」
参照:2進数、8進数、10進数、16進数相互変換ツール
パブリックIPアドレスとプライベートIPアドレスの違いは?
・パブリックIPアドレスは、インターネットに接続する際に使うIPアドレス。
・ICANNというアメリカの非営利団体が管理している(IPが重複していると接続できなくなるから)
・一般のユーザーは、プロバイダーやサーバー事業者経由でIPを借りる(AWSからも借りられる)
・プライベートIPアドレスは、インターネット上で使わないIPアドレス。
・社内のネットワークなどで使われる。
AWSについて
AWSとは?
・Amazon社が提供するクラウドサービス。インターネット上でいろいろできるサービスを、無料〜有料で提供している(本当に色々)。100以上のサービスが存在する。
ルートユーザーとIAMユーザーとは?
・ルートユーザーとは、AWSアカウントに紐づく権限の一種。AWSの各サービスと、そのAWSアカウントで作られた全てのリソース・情報に対して、全アクセス権を持つ。要は全部見れるし、全部更新・削除ができる。
・何でもできるからこそ、企業などチームの場合は、あまり使わないようにするのが一般的。アカウントの変更や解約、サポートプランの変更の時などに使うくらい。
・IAMユーザーとは、AWSでの作業用のユーザー。
・IAMユーザーは、作業者ごとに個別に作成することができる。
・IAMユーザーは、ユーザーごとに権限を変えることができる。
・(例)企業であるWebサービスを運営する際、その会社でAWSアカウントを一つ作ったとします。チームメンバーが3人いたとして、AさんBさんCさんに、それぞれIAMユーザーを作成して渡す。AさんのIAMユーザーは、更新・削除・閲覧を全てできる。BさんのIAMユーザーは、更新と閲覧ができる。Cさんのものは、閲覧しかできない。こんな風に、社員の役割ごとに与える権限を変えることができる。
EC2とは?
・Elastic Compute Cloudの略で、AWSが提供するクラウド上の仮想サーバーを提供するサービス。
・特徴としては①すぐに起動でき秒単位の従量課金 ②サーバーの追加・削除、マシン性能の変更もすぐできる ③多種多様なOSやソフトウェアの組み合わせが用意されている
など。
EC2インスタンスとは?
・EC2でインターネット上に作成するサーバー。
AMIとは?
・Amazon Machine Imageの略。
・サーバーの雛形のようなもので、一つのAMIから同じEC2インスタンスをいくつも作成が可能。
・AMIを使うことで、同じような設定のインスタンスを作成する際に、1から設定する必要がなくなる。
リージョンとは?
・AWSがサービスを提供する地域のこと。東京リージョン、米国東部(バージニア北部)リージョンなど。
・日本には、東京リージョンと大阪リージョンの二つがある。
・リージョンによって、使えるサービスと使えないサービスがある。
・リージョンによって、同じサービスでも値段が違ったりする。
アベイラビリティゾーン
・複数のデータセンターがまとまった所のこと。
・一つのリージョンの中に、2つ以上のアベイラビリティゾーンがある(らしい)。
・2つ以上あることで、災害などで一方のデータセンターが機能停止しても、もう一方の物でサービスを稼働し続けることができる。
SSHとは?
・自分のパソコンとサーバーを安全に繋ぐシステムのこと。
・通信内容が暗号化される、ログイン方法の一種。
・SSHは、クライアント側(自分のPC)とサーバー側、両方に入れる。それぞれSSHクライアント、SSHサーバーと呼ぶ。
・(例)SSHを使ってEC2にログインする流れ。
自分のPC側から「ログインさせて!」とログインしたいサーバーにリクエストを送ると、SSHサーバーがリクエストを送ってきた人が誰かなのかを確認して、問題がなければログインさせてくれます。
このクライアントとサーバーのやり取りは暗号化された通信で行われるから、第三者が盗聴しようとしても中身が確認ができず、安全。
要するに、SSHサーバーは、サーバーの前に立つ警備員。SSHクライアントは、ユーザーが持つ身分証明証のようなもの。
公開鍵認証とは?
・サーバーを用意した人だけが、そのサーバーにアクセスできるようにするセキュリティの仕組み。
・EC2では、SSHログインをする際、この公開鍵認証を使う。
※公開鍵認証の説明をすると長くなるので、今度別の記事に記載します。
EC2インスタンスのストレージ(EBSとインスタンスストア)
・ストレージとは、データを保管する場所のこと。
・EC2インスタンスには、主に2種類のストレージがある。
・1つはEBS(Elastic Block Store)。EBSは、あるインタンスから別のインスタンスに付け替えることができる。
・EBSは、インスタンスを(一時)停止・削除しても、残しておくことができる。なので、長期保存したいデータなどはEBSで保管する。
・EBSは別途料金がかかる。
・もう1つはインスタンスストア。
・インスタンスに紐づく、一時的なデータの保管場所。
・インスタンを停止・削除すると、一緒に消えてしまう。なので、長期保存したいデータなどは入れないようにする。
・無料で使える。
まとめ
AWSの公式ドキュメントは、専門用語を説明するのに、容赦無く別の専門用語を多用するので、
私のような初学者がAWS公式に行くと、調べる前より分からないことが増える、という事態になりがち。
一つずつ、ワードの整理したいと思います。
※※前述した通り、噛み砕いた言葉に直したゆえ、厳密な定義とはずれている可能性はございます。
もしこの記事見て、「この説明は間違っているよ」と気づいた方が入れば、ご指摘いただけますと助かりますm(__)m
参照
AWS:ゼロから実践するAmazon Web Services。手を動かしながらインフラの基礎を習得
↑「サーバーとは?」「ネットワークとは?」など、本当に基本的なIT用語の解説から、AWSの基本サービスを説明してくれる動画です。僕みたいにインフラの知識に不安のある人でも、AWSを腹落ちして使い方を覚えられます。素晴らしく分かりやすい。
2020年に初公開の動画ですが、今見たら(2022/05/21)最終更新日が「5/2022」と最近なので、アップデートし続けている様子。AWSは画面が頻繁に変わるので、教材探しに苦労します。。