カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(14)S3とは

AWS Simple Storage Service (以下、S3)は、AWS が提供する、安価で耐久性の高いオブジェクトストレージサービスです。容量は無制限(ただし、1つのオブジェクトの最大サイズは 5TB)です。

オブジェクトストレージとは?

ストレージとして一番メジャーなファイルストレージと比較すると、分かりやすいと思います。ファイルストレージはディレクトリ構造をもち、フォルダやファイルを管理しますが、オブジェクトストレージはディレクトリ構造を持ちません。フラットな構成で、ユーザーが独自にデータに対して情報(メタデータ)を付与することができます。このページが参考になります。

利用料とSLA

  • 1ヶ月あたり、0.025 USD/GB(月に 10GB 使っても30円程度。cf. EBS は、1ヶ月あたり 0.12 USD/GB)
  • データは複数のAZに保存され、その耐久性は、99.999999999%(イレブンナイン)

S3 の構成要素

バケット

オブジェクト( データ)を保存するための領域です。バケットは名前を付けて管理しますが、その名前は、AWS内でユニークである必要があります。

キー名

各オブジェクトに付けられる名前です。

オブジェクト

S3 上に保存あれるデータそのものです。各オブジェクトにはキーが付与され、「バケット名+キー名+バージョンID」で、必ずユニークになるURLが作成されます。

メタデータ

オブジェクトデータを管理するための情報です。オブジェクトの作成日時やサーズと言ったシステム定義情報以外にも、アプリケーションで必要となるユーザーが定義する情報をメタデータに保存することもできます。

S3 の使い方

REST や SOAP と言った HTTP ベースの Web API を使用して、S3 上のオブジェクトにアクセスします。

S3 はウェブの管理コンソールから、シンプルなオペレーションで使用することができます。やることは、バケット(フォルダ)を作り、その中にファイル(オブジェクト)やフォルダを保存していきます。

S3 上のバケットとその配下のフォルダ

S3 の機能

アクセス管理
  • ユーザーポリシー・アクセスポリシーなどでアクセスを管理
  • IAMで利用できるユーザーを管理
  • バケット単位で、ユーザーや送信元IPアドレスなどを制限
Webホスティング機能
  • 静的サイトであれば、S3だけで公開することが可能
  • ウェブサイトのラインディングページを保存したり、ウェイブサーバの障害時のSorry ページを置いておくなど
他のAWSサービスとの連携が豊富
  • Redshiftを使ってS3のデータを利用するSpectrum機能
  • S3にデータが保存されたらLumbdaを起動するFunction機能(起動トリガー)

S3 がよく使われるシーンの例

S3 は柔軟性に優れたサービスであるため、アイデア次第では使い方は無限大です。代表的な使われ方として、以下のものがあります。

  • バックアップデータの保存
  • ビッグデータ解析用のデータ一時保存
  • ETL (Extranc/Transform/ Load)の中間ファイルの保存
  • EC2インスタンスやコンテナからのログの転送
  • 静的コンテンツのホスティング

具体例:

1. 静的コンテンツの配置
  • 今、ご覧になっているこのブログのページで使っているイメージファイルも、S3 上に保存してあり、そこから配信しています。
2. ログなどのエクスポート先
3. バッチ連携用ファイルの保存先
4. 静的ウェブホスティング

静的ウェブホスティング機能を行う場合、注意点があります。

  • 静的コンテンツに限る
  • サーバサードの動的なコンテンツをホスティングすることはできない
  • 使用する独自ドメインとバケット名を一致させておく必要がある

ストレージクラス

S3 では、用途に応じて7つのランクを設けています。これをストレージクラスと呼びます。ストレージクラスにより、SLAが設定されます。

STANDARD(スタンダード)

これがデフォルトのストレージクラスです、低遅延と高スループットを兼ね備え、S3 の性能が最も発揮されるクラスとなります。

  • 耐久性:99.999999999%
  • 可用性:99.99%
STANDARD-IA(標準 IA)

STANDARDよりは保存にかかるコストが安価になるストレージクラスです。参照頻度の低いデータ向けとなるため、アクセスが必要のないデータ、それほど頻繁にアクセスしないデータ、といったデータを保存する時に向いています。

  • 耐久性:99.999999999%
  • 可用性:99.99%
ONEZONE-IA(1ゾーン IA)

単一AZ内のみでデータを複製するストレージクラスです。1つのAZ内でのみ複製を行うため、AZ単位で障害が発生した場合、データの復元ができない可能性が高いです。この点以外は、STANDARD-IAと同等のサービスレベルが提供されます。

  • 耐久性:99.999999999%
  • 可用性:99.5%
INTELLIGENT-TIERING(インテリジェントな階層型)

参照頻度の高低を明確に決めることができないデータ向けのストレージクラスです。STANDARDとSTANDARD-IAの2層構成となっており、30日以上参照されなかったデータは、自動的にSTANDARD-IAに移動されます。データの移動が発生するため、頻繁に移動は発生するとコストが高くなります。

  • 耐久性:99.999999999%
  • 可用性:99.9%
Glacier

ほとんど参照されない、アーカイブ目的のデータを保存するストレージクラスです。このクラスに保存されたデータにアクセスする場合、事前にアクセスリクエストする必要があります。またアクセスできるようになるまでに、数分から数時間かかるという特徴があります。

  • 耐久性:99.999999999%
  • 可用性:99.99%

上記5つのストレージクラス以外に、更に2つのストレージクラスが追加されているようです(2020年8月30日時点)。

Glacier Deep Archive

ほとんど参照されない、アーカイブ目的のデータを保存するストレージクラスです。アクセスできるようになるまでに、数時間かかるという特徴があります。1 年のうち 1 回か 2 回しかアクセスされないようなデータを対象とした、長期保存やデジタル保存をサポートします。特に、金融サービス、ヘルスケア、パブリックセクターなどの規制が厳しい業界を対象としており、コンプライアンス要件を満たすために 7ー10 年以上データを保管するように設計されています。

低冗長化

ほとんど参照されない、アーカイブ目的のデータを保存するストレージクラスです。推奨はされていないみたいです。

ライフサイクルの管理

S3 に保存されたオブジェクトは、その利用頻度に応じてライフサイクルを定義することができます。

移行アクション

データの利用頻度に応じて、ストレージクラスを変更します。最初はアクセス頻度が高いが、一定期間過ぎると低くなり、最後にはアーカイブさせると言った移行ができます。

有効期限アクション

指定された期限を越えたオブジェクトを、S3 から削除します。S3 は容量無制限のストレージサービスですが、保存容量が増えればコストも上がります。不要なデータは定期的に削除することが望ましいです。

バージョン管理

1つのオブジェクトに対して、複数のバージョンを管理(バージョニング)することができます。バージョニングは、バケット単位で有効・無効が指定できます。真・旧の両方のオブジェクトが保存されるため、保存容量が増えます。

アクセス管理

S3 のアクセス管理には、バケットポリシー、ACL、IAMが使用できます。

バケットポリシーは、バケット単位でのアクセス制御を行います。

オブジェクト単位での制御には、ACLやIAMを使用します。

データの暗号化

暗号化は、サーバ側での暗号化とクライアント側での暗号化の2種類があります。

サーバ側での暗号化は、データがS3 に書き込まれる時に暗号化され、読み取る時に復号化されます。

クライアント側での暗号化は、AWS SDK を使って、S3 に送信される前にデータの暗号化が行われます。復号化は、クライアント側で暗号化されたデータのメタデータから、どのキーで復号化するのかが判断されます。

サーバ側での復号化は、バケットに対してとオブジェクトに対して行えます。

バケットに対しての暗号化
オブジェクトに対しての暗号化

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(13)VPC、EC2、ELB、Route 53 を使ってみる

VPC、EC2、ELB、Route 53 と学んできましたので、これらを組み合わせて使って、動作確認をしてみます。

ドメイン名の取得

今回はドメイン名の取得に、「お名前.com」を使います。期間限定で無料のドメインが取得できたり、1円のドメインが取得できたりします。

以下のリンクから、ドメイン名の取得ができます。

ドメイン名取得の手順

お名前.comの管理画面にログインします。

「ドメインを登録する」をクリックします。

使いたいドメイン名を入力し、「検索」をクリックします。入力したドメイン名が実際に使用可能かのチェックを行います。

私の使おうとしているドメインですと、「.work」なら1円で使えますね。期間限定で0円というのもやっています。その時期を狙うのも手です。

今回は1円で進めます。「.work」をクリックして選択します。

「お申し込みへ進む」をクリックします。

内容を確認し、「次へ」をクリックします。

「申し込む」をクリックします。事前にクレジットカード等の登録が必要です。

処理が開始されます。

ドメインの取得は完了です。

ネームサーバーの登録

AWSの管理コンソールに移動し、検索テキストボックスに「Route 53」と入力します。Route 53 が表示されるので、それをクリックします。

Route 53 の管理コンソールが表示されます。

「DNS 管理」をクリックします。

ホストゾーンを作成していきます。

ドメイン名に、先ほど取得したドメイン名を入力します。

タイプは「パブリックホストゾーン」を選択します。

「ホストゾーンの作成」をクリックして、ホストゾーンを作成します。

ホストゾーンが作成されました。

NS(Name Server)のところに表示されているのが、AWSで使用できるネームサーバーです。これをメモします。

お名前.com管理画面のトップに戻り、「ネームサーバーを登録する」をクリックします。

先ほど取得したドメイン名が表示されますので、その名前のチェックボックスにチェックを入れます。

「ネームサーバーの選択」のところで、「その他」タブをクリックします。

「その他のネームサーバーを使う」のネームサーバーのテキストボックスに、先ほどのAWSのネームサーバーを入力していきます。

4つのネームサーバーの入力が完了し、「その他のネームサーバーを使う」が選択されていることを確認し、「確認」をクリックします。

再度、登録内容を確認し、「OK」をクリックします。

画面上部に「完了しました」が表示されれば、ネームサーバーの登録は完了です。これで、AWS側のネームサーバーを使用することになりなります。

レコードの作成

Route 53 の管理コンソールに戻ります。

「レコードの作成」をクリックします。

ルーティングポリシーの画面が表示されます。

今回は「シンプルルーティング」を使用します。「次へ」を押して進みます。

「シンプルなレコードを作成」をクリックします。

レコード名は空白のままにします。

今回はELBを使いますので、「値/トラフィックのルーティング先」で、ELBのインスタンス名を選択します。

「レコードタイプ」はAを選択します。

「シンプルなレコードを作成」をクリックします。

内容を確認し、「レコードを作成」をクリックします。

レコード一覧に、ELBにトラフィックを向けたAレコードが作成されました。これで、kk-test.work 向けに流れてくるトラフィックは、ELBに向かいます。

実際に確認してみましょう。

kk-test.work 向けにPingを打ってみます。返ってくるIPアドレスを確認してみて下さい。ELBのものになっています。

NSLOOKUPでも確認してみましょう。ドメイン名とIPアドレスが表示されますね。

DIGでも確認してみましょう。ドメイン名とIPアドレスが表示されますね。

ウェブサーバーの設定変更

ウェブサーバーにSSHでリモートログインし、HTMLディレクトリーに移動します。

cd /var/www/html

このディレクトリーに、「index.html」というファイルを作成します。

sudo vim index.html

ブラウジングした時に表示させる内容を記入します。

<html>
<body>
Hello World. This is Web-01.<br>
<?php echo 'hoge'; ?>
</body>
</html>

早速、ブラウザーで確認してみましょう。”http://kk-test.wok” にアクセスしてみます。

先ほど、index.html に記入した内容が見えますね。

Route 53 の管理コンソールに戻ります。

「レコードを作成」をクリックします。

シンプルルーティングを選択し、「次へ」をクリックします。

「シンプルなレコードを定義」をクリックします。

レコード名は「www」にします。

「値/トラフィックのルーティング先」は「レコードタイプに応じたIPアドレスまたは別の値」を選択し、テキストボックスにELBのDNS名を入力します。

「レコードタイプ」は「CNAME」を選択します。

「シンプルなレコードを定義」をクリックし、レコードを作成します。

CNAME レコードが作成されました。

レコード一覧にも追加されています。

またブラウザーで確認してみましょう。今度は、「http://www.kk-test.work/index.html」にアクセスします。

index.html の内容が表示されました。

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(12)EC2のイメージ取得と起動

EC2のイメージの取得は2種類あります。

  • AMI: EC2の仮想インスタンスのある時点の断面
  • Snapshot: EBSのある時点の断面

Snapshot/AMIのどちらを取得する場合も、EC2の対象となる仮想インスタンスは停止をさせてから行う必要があります。停止をしないと、データの生合成が取れない可能性があります。

「イメージの取得」オペレーションを行うと、スナップショットとAMIの両方が作成されます。

それでは、実際にイメージの取得をしていきたいと思います。

ちなみに、事前にAmazon LinuxをEC2で作成し、Apacheをインストールしてあります。

EC2イメージの取得

インスタンスの停止

対象となる仮想インスタンスを選択します。今回は、事前にEC2上に起動させているAmazon Linuxです。

「アクション」から「インスタンスの状態」→「停止」をクリックします。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-1-1024x532.png

「停止する」をクリックして、インスタンスを停止させます。

画像に alt 属性が指定されていません。ファイル名: 停止2Pasted-Graphic-2-1024x493.png

インスタンスの停止が開始されるので、「インスタンスの状態」のステータスを確認します。

しばらくすると、ステータスが「Stopped」に変わります。インスタンスの停止が完了です。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-4-1024x493.png

イメージの作成

「アクション」→「イメージ」→「イメージの作成」をクリックします。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-5-1024x513.png

イメージの名前と説明を記入し、「イメージの作成」をクリックします。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-6-1024x507.png

イメージの作成が開始されるので、「閉じる」をクリックします。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-7-1024x505.png

画面左側メニュー「イメージ」の中の「AMI」をクリックします。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-8-1024x499.png

ステータスが「Available」になっていれば、イメージの取得は完了です。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-9-1024x514.png

スナップショットとAMIの両方を確認します。両方とも作成されてますね。

イメージからの仮想インスタンスの起動

使用するイメージを選択し、「起動」をクリックします。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-10-1024x514.png

その後は、インスタンスをEC2上で普通に起動させる時と同じ手順です。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-11-1024x505.png

インスタンスの起動が完了したら、SSHでログインしてみます。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-12-1024x511.png

Grepして見てみると、Apacheが既にインストールされているのが分かります。初期時にインストールすると、Apacheは入っていないので、取得したイメージから起動したインスタンスだと分かりますね。

画像に alt 属性が指定されていません。ファイル名: 停止Pasted-Graphic-13-1024x511.png

イメージの削除

イメージの削除時の注意点は、「登録解除」というオペレーションを行う必要がある点です。失敗を含めて、実際に見ていきます。

画面左側メニューから「スナップショット」をクリックします。

スナップショットの一覧が表示されます。

画像に alt 属性が指定されていません。ファイル名: image-10-1024x225.png

「アクション」から「削除」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-11-1024x238.png

スナップショットの削除のポップアップが出ますので、「はい、削除する」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-12-1024x366.png

スナップショット削除中のエラーが表示され、削除ができません。何度、「はい、削除する」をクリックしても同じです。

画像に alt 属性が指定されていません。ファイル名: image-13-1024x391.png

一旦、「キャンセル」をクリックします。

画面左側のメニューから、「イメージ」→「AMI」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-14-1024x380.png

対象のスネップショットを選択し、「アクション」→「登録解除」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-15-1024x246.png

このイメージの登録を解除して良いですか?のポップアップが表示されますので、「次へ」をクリックします。

登録解除が行われ、AMIが削除されます。

画像に alt 属性が指定されていません。ファイル名: image-16-1024x353.png

画面左側のメニューから「スナップショット」をクリックします。

対象となるスナップショットを選択し、「アクション」→「削除」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-17-1024x353.png

今度は、スナップショットが削除できましたね。

ポイント

  • イメージの作成の際には、対象のインスタンスを停止させる。
  • イメージの作成を行うと、スナップショットとAMIの両方が作成される。
  • イメージの削除の際は、AMIの「登録解除」を行う必要がある。
  • スナップショットからAMIを作成することもできる。

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(11)ストレージサービス

AWSのストレージサービスは、代表的なものとして、以下のものがあります。

  • Amazon EBS (Elastic Block Store)
  • Amazon EFS (Elastic File System)
  • Amazon S3 (Simple Storage Service)
  • Amazon Glacier
  • Amazon Storage Gateway

2020年8月時点では、AWSの公式ページで記載されているトレージサービスとしては、11個あるみたいです。

Amazon EBSは、ブロックストレージです。ブロックストレージとは、データをブロック単位で管理するストレージのことです。データベースや仮想インスタンスのイメージ保存領域として使われます。プロトコルとしては、SATA、SCSI、FCでアクセスされます。

Amazon EFSは、ファイルストージです。ブログストージの上にファイルシステムを構築し、データをファイル単位で階層で管理し、複数のクライアントからネットワーク上で共有としてアクセスさせる用途で使います。プロトコルとしては、NFS v4.0/v4.1でアクセスされます。

Windowsで標準に使用されるファイル共有プロトコルであるSMB(SMB v2.0 – v3.1.1)向けのファイルストレージとしては、以下のものがあります。

  • Amazon FSx for Windows File Server

ファイルストレージとしては、以下のものもあります。Luster クライアントから使用され、S3と連携ができます。

  • Amazon FSx for Lustre

Amazon S3/Glacierは、オブジェクトストレージです。ファイルに任意のメタ情報を追加して、オブジェクトとして管理します。ファイルの内容を直接操作することは出来ず、HTTP/S経由での操作で使用されます。プロトコルとしては、HTTP、またはHTTPSでアクセスされます。

Amazon Storage Gatewayは、ストレージサービスというよりは、データ転送サービスです。データ転送として、Storage Gatewayの他に、以下のものもあります。

  • AWS DataSync
  • AWS Transfer Family
  • AWS Snow サービス

AWSが提供するストレージサービスはたくさんあるので、まずは一番代表的なEBSから学んでいきたいと思います。

Amazon EBS

EC2のOSの領域として利用されます。追加ボリュームとして複数のEBSをEC2にアタッチすることも可能となります。

EBS は単一のEC2にのみアタッチ可能なサービスです。複数のEC2インスタンスから同時にアタッチする用途には使えませんません。

また、EBSは作成時にAZを指定するため、異なるAZのEC2インスタンスから使うということもできません。

異なるAZのEC2インスタンスに使わせたい場合、EBSのスナップショットを取得し、そのスナップショットから指定のAZでEBSボリュームを作成することで、アタッチが可能となります。

EBSのボリュームタイプ

EBSのボリュームタイプとして、以下の4つがあります。

  1. 汎用 SSD (gp2)
  2. プロビジョンド IOPS SSD (io1)
  3. スループット最適化 HDD (st1)
  4. Cold HDD (sc1)

1. 汎用SSD

EBSの中で最も一般的なもので、SSDを使ったボリュームタイプです。1TB未満のボリュームでは、一時的なIOPSの上昇に対応できるように、バースト機能が用意されています(デフォルトはこのタイプ)。

2. プロビジョンドIOPS SSD

EC2の中で最も高性能なSSDをベースとしたボリュームタイプです。EC2でデータベースを使うなど、高いIOPSが求められる時に使われます(高いIOPS性能が必要であればこのタイプ)。

3. スループット最適化HDD

スループットを重視したボリュームタイプです。ログデータの処理やバッチ処理のインプット用ファイルといった、大容量ファイルを高速に読み取る用途で使われます(スループットが必要であればこのタイプ)。

4. Cold HDD

性能は低いですが、一番コストが安いボリュームタイプです。アクセス性能がそれほど求められないデータに、シーケンシャルでアクセスさせるなど、アーカイブの用途で使われます(アクセスが少ないのであればこのタイプ)。

ベースライン性能とバースト性能

プロビジョンドIOPS以外のストレージタイプには、ストレージ容量に応じてベースライン性能があります。

プロビジョンドIOPS以外のストレージタイプには、バースト性能という指標もあります。

ただし、バースト性能は一時的な処理量の増加に対応するためのものであるため、これに頼った祭神ずはしないことが推奨されます。

ただし、バースト性能は一時的な処理量の増加に対応するために使われるものであるため、これなら頼ったサイジングはしないことが注意点となります。

EBSの拡張と変更

EBSボリュームの変更と拡張作業時には、以下の注意点があります。

  • EBSボリュームに対して変更を行った場合、同一のボリュームに対しての変更は6時間以上開ける必要があります。
  • 現行世代以外のEC2インスタンスタイプで使用中のEBSボリュームに対する変更は、インスタンスの停止なEBSボリュームのディタッチが必要となります。

容量の拡張

EBSボリュームは、容量が足りなくなれば、何度でも拡張が可能となりますが、最大容量は、1ボリュームあたり16TBとなります。

オンライン中のEBSボリュームを変更した場合、OS側からファイルシステムの拡張作業を行わないと、OSから拡張した領域が見えません。これは、VMWARE vSphereなどのハイパーバイザー上で動いている仮想インスタンスのストレージ領域を拡張した時と同じですね。

ボリュームの拡張はできますが、縮小はできません。どうしても縮小したい場合は、新規のEBSボリュームを使い、古い方のボリュームを削除するといったオペレーションを行う必要があります。

ボリュームタイプやIOPSの変更

「gp2を使っていたが、io1に変更したい」など、あとからでもタイプの変更が可能となります。

また、追加のプロビジョニングを行い、IOPSを増やすことも可能です。IOPSに関しては、増減のどちらも可能となります。ただし、IOPSの変更は、24時間程度かかると見ておいた方が良いです。

可用性・耐久性とスナップショット

コンポーネントが障害になった際に備え、EBSは内部的にAZ内の複数の物理ディスクにレプリケーションが行われており、一般的なHDDよりも可用性が高いです。このため、SLAは99.99%と言われています。

また、EBSにはスナップショット機能があり、バックアップを取ることで、必要な時点へ戻すことも可能となります。

スナップショット取得時の注意点は、スナップショットを取る際、必ず対象となる仮想インスタンスを停止させることです。停止をさせないと、データの不整合が発生する可能性があります。

スナップショットを作成すると、AMIも同時に作成されます。後からスナップショットを使って、AMIを作成することもできます。

スナップショットを削除したい場合、AMIの「登録解除」を行わないと削除ができません。

EBSの停止

EBSはEC2お仮想インスタンスにアタッチして使用します。EC2は使用しない時に「停止」という操作を行い、稼働を停止することができます。停止中のEC2仮想インスタンスに課金はされません。しかし、EC2仮想インスタンスを停止にしていても、EBSには課金が発生します。

セキュリティー

EBSにはストレージ自体を暗号化するオプションがあり、暗号化はEC2仮想インスタンスのブートボリュームとデータボリュームの両方に適用ができます。暗号化にはAES256が使用されています。暗号化は、すべての EBS ボリュームタイプでサポートされます

暗号化オプションを使うと、ボリュームが暗号化されるだけでなく、暗号化されたボリュームからのスナップショットも暗号化されます。

EBS暗号化の適用範囲

  • ボリューム内の保存データ
  • ボリュームとインスタンスの間で移動されるすべてのデータ
  • ボリュームから作成されたすべてのスナップショット
  • それらのスナップショットから作成されたすべてのボリューム

既に作成済みのボリュームを暗号化したい場合は、以下の手順で行います。

  1. ボリュームのスナップショットを取得
  2. スナップショットを暗号化
  3. 暗号化されたスナップショットから新規のEBSボリュームを作成
  4. 暗号化されたスナップショットから新規のEBSボリュームを作成

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(10)RDSとは

RDS: Relational Database Service は、AWSがマネージドサービスで提供するリレーショナルデータベースサービスです。

リレーショナルデータベース(RDB)とは?

RDBとは関係性データベースとも呼ばれ、行と列の2つの軸で表されるデータベースのことです。イメージとしては、高機能なExcelと考えると分かりやすいです。このリンクが参考になります。

マネージドサービスとは?

マネージドサービスとは、通信サービスやITサービスなどのうち、サービスの利用に必要な機器やソフトウェアの導入や管理、運用などの業務も一体的に請け負うサービスのこと。このリンクが参考になります。

つまりRDSを使うことにより、サーバーやOS、パッチ当てなどをAWS側でサービスに含めて提供してくれるので、ユーザー側で管理する必要がなくなるということです。

これにより、構築にかかる負荷を少なくすることができ、ユーザー側は、ビジネスとして価値を生む「コア」となる部分に注力することができるようになります。クラウドって感じです。素晴らしいですね。

青色の部分が、ユーザー側管理となるもの
AWSで提供されるマネージドサービスの例
  • Amazon RDS
  • Amazon RedShift
  • Amazon ElastiCache
  • Amazon S3
  • Amazon Route 53
  • Amazon CloudFront
  • Amazon SQS
  • Amazon SES

RDSの基本

RBSは、AWSが提供するリレーショナルデータベース(RDB)のサービスです。

AWSのRDSで対応しているデータベースは、以下のものがあります。

  • Amazon Aurora:Amazonが提供しているリレーショナルデータベースです。
  • Postgre SQL:オープンソース型の人気が高いリレーショナルデータベースです。
  • MySQL:MySQLもオープンソース型のリレーショナルデータベースです。
  • Mariaデータベース:MySQLをもとに作られたデータベースです。操作性や使用方法はMySQLによく似ています。
  • Oracle:世界で最初に採用されたRDBMSで、最も広く利用されています。
  • SQL Server:マイクロソフト社が提供しているRDBです。

RDSの特徴

AWSのマルチAZを使うことで、マスター・スレーブ構成が簡単に作れますので、DBの可用性を上げることができます。

マスター側のデータが書き変われば、自動でスレーブ側に同期もしてくれます。

通常、DBサーバーはフロントエンドとなるウェブサーバーを経由してアクセスすることになりますが、ウェブサーバーからDBサーバーにアクセスするときは、IPアドレスではなく、「エンドポイント」と呼ばれるアドレスのようなもので接続をします。

AWS内のDNSでこのエンドポイントと実際にDBサーバーが使っているIPアドレスのマッピングをしていますので、マスター側機器の障害時にスレーブ側機器に切り替わっても、マッピングも更新されますので、エンドポイントは変わりません。

AWS内のDNSでこのエンドポイントと実際にDBサーバーが使っているIPアドレスのマッピングをしていますので、マスター側機器の障害時にスレーブ側機器に切り替わっても、マッピングも更新されますので、エンドポイントは変わりません。

リードレプリカ

DBへのトランザクションが増えて負荷が上がると、システム全体のパフォーマンスが低下してしまいます。

また、DBの特徴として参照のトランザクションがほとんどとなります。このため、参照専用のDBを用意できます。これがリードレプリカです。

DBのレコード内容を変更や削除したい場合、マスターとなる機器側を変更すれば、リードレプリカ側の機器にも情報が同期されます。

バックアップの自動取得

  • スケジューリングを行い、自動的にバックアップとしてのスナップショットを取得することができます。もちろんマニュアルでのバックアップも可能です。
  • スナップショットを元に、新しいDBを構築することも可能となりますので、ある時点のデータに戻したいとなった時ににも使えます。
  • EC2上に自分でDBサーバーを立てた場合、Cronなどを使ってバックアップのスケジューリングをする必要があるが、RDSはマネージドサービスなので、その機能も提供されます。

パッチ当ての自動実施

  • OSレベルでのパッチ当てが必要となった場合、スケジューリングをしてメンテナンスウィンドウを設けて、自動で実施することが可能です。

パラメーター設定

  • RDSの制約として、SSHを使ってDBサーバーに接続することはできず、SQLコマンドを使って接続する必要があります。
  • その代わりに、パラメーターグループという機能があり、管理コンソールから設定が可能となります。
  • この設定変更も、スケジューリングを行い、メンテナンスウィンドウを設けて実施することができます。

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(9)ELB を使ってみよう

最初に、東京リージョンの EC2 に、ウェブサーバーを2台起動させておきます。

今回はWindows2019 サーバーを 2台起動し、手っ取り早くウェブサーバーにしたいので、04 Web Server というフリーソフトを使ってウェブサーバーにしています。

まずは、ELB (Elastic Load Balancer) がどんなものか使ってみたいので、基本的な設定で動かしてみます。

ELB の種類

ELB (Elastic Load Balancer) には3種類あります。選択するときに気をつけるべき点は、以下の通りです。

  • Application Load Balancer (ALB)

バランシング の対象プロトコルがHTTP(S)の時はこれ

  • Network Load Balancer (NLB)

バランシング の対象プロトコルがHTTP(S)以外のTCPまたはUDPの時はこれ

  • Classic Load Balancer (CLB)

EC2-Classicの環境でバランサーを使いたい時はこれ

実際に使われるのはALBかNLBで、CLBは今は使われることはないです。

ELB (Elastic Load Balancer) の作成

東京リージョンの EC2 の管理コンソールにログインします。

左側のメニューの中の「ロードバランシング」から「ロードバランサー」をクリックします。

ELB の管理コンソールが表示されます。

画面上部にある「ロードバランサーの作成」をクリックします。

ロードバランサーの種類を選ぶ画面が表示されます。

今回は NLB(Network Load Balancer)を使ってみましょう。真ん中のロードバランサーの「作成」をクリックします。

ロードバランサーの設定画面が表示されます。

ロードバランサーの名前を入力します。

VPCを選択します。今回は東京リージョンのデフォルトVPCを使います。

次に、ウェイブサーバーが存在するサブネットを選択します。

タグも付けておきます。

セキュリティーのエラーメッセージが表示されますが、今回はHTTPでの基本的な動作確認ですので無視します。画面右下の「次の手順」をクリックします。

ルーティングの設定画面が表示されます。

ターゲットグループの名前を付けます。このターゲットグループというのは、EC2に起動させたウェブサーバー2台をグループ化した名前です。

今回は、ヘルスチェックはそのままで使います。「次の手順」をクリックします。

ターゲットの設定画面が表示されます。

画面下部にインスタンスが見えます。これがEC2に起動したウェブサーバー2台です。両方のチェックボックスにチェックを入れ、その上にある「登録済みに追加」をクリックします。ポートは80のまま利用します。

登録済みターゲットの方に、2つのインスタンスが表示されます。これでターゲットの設定はOKです。「次の手順」をクリックします。

最終ステップです。設定内容を確認します。設定内容に問題がなければ、「作成」をクリックします。

ELBの作成が開始されます。「閉じる」をクリックします。

EC2の管理画面に戻り、ロードバランサーをクリックし、ELBの管理コンソールに戻ります。

状態がProvisioningになっているのが見えますので、状態が完了になるまで待ちます。

ELBの動作確認

通信の宛先の確認をします。

ELBのインスタンスの「基本的な設定」の中に「DNS名」が見えます。これがELBの宛先アドレスのホスト名となります。

このELBのDNS名をブラウザーで指定します。

http://dns-name

MacBookからアクセスすると、ウェブサーバー2号機に接続しています。

次に、Windowsからアクセスすると、ウェブサーバー1号機に接続しています。ロードバランシング成功ですね。送信元IPアドレス毎に、接続先のウェイブサーバーを使い分けています。

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]

価格:2,618円
(2020/8/12 12:20時点)
感想(0件)

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(8)CloudFront って何だろう

Amazon CloudFront とは

Amazon CloudFront(以下CloudFront)は、HTMLファイル、CSS、画像、動画といった静的コンテンツやストリーミングといった動的コンテンツをキャッシュし、オリジンサーバー(本来のアクセス先)の代わりに配信する、AWSのCDNサービスです。

CloudFrotでは、エッジローケーションと呼ばれるデータセンターを通じてコンテンツ配信が行われます。世界中に120を超えるエッジローケーションがあり、CloudFront を使うと、ユーザーから最も近いエッジローケーションからコンテンツを配信できます。

例えば、日本のユーザーが北米にあるサーバーにアクセスすることを考えてみましょう。

CloudFront を使わない場合、エンドユーザーは、オリジンサーバーとなる北米にあるサーバーにアクセスすることになります。距離遅延としては、180ミリ秒くらいありレスポンスが非常に遅いです。

CloudFront を使う場合、エンドユーザーは最寄りの CloudFront に接続できます。日本のユーザーは日本にある CloudFront にアクセスができるため、距離遅延を非常に小さく抑えられます。

※ 実際の距離遅延は、利用している回線や利用状況によっても変動します。

CoudFront ですが、代表的なところですと、以下のようなサービスで利用されています。

Amazon Prime Video

  • NFLのサーズデーナイトフットボールを、世界200カ国以上でスムーズに配信するためにCloudFrontを利用
  • 遅延の少ないライブ映像を提供することができるため、ユーザーに最新の試合の様子を迫力のある状態で提供

Hulu

  • CloudFrontをはじめとしたAWSのインフラストラクチャーで、定額制動画配信サービスライブ映像を配信
  • 急に視聴者が増えてトラフィック量が増大したとしても、スムーズにサービスを提供が可能

CloudFront の構成

CloudFront には、以下の構成要素があります。

1. バックエンド
  • オリジンサーバーのことを言います。
  • オリジンサーバーとして、ELB、 EC2、 S3、 オンプレのサーバーを指定できます。
  • URLのパスに応じて、異なるオリジンサーバーを指定することも可能となります。
  • これにより、1つのドメインで複数のサービスを提供することも可能となります。
2. エッジサーバー
  • CloudFront のことを言います。
3. キャッシュ
  • ユーザーからリクエストを受けたエッジサーバーは、要求されたファイルが自分の中にキャッシュとしてあるかを確認します。
  • キャッシュとしてない場合、オリジンサーバからファイルを取得し、それをキャッシュとして保持します。
4. キャッシュルール
  • 拡張子やURLパス毎に、キャッシュ期間を指定するとこが可能となります。
  • デフォルトでは24時間キャッシュが保持されます。

具合的に何ができるのか?

CloudFront を利用すると、オリジンサーバーの代わりに、ユーザーに対してレスポンスを返すことができます。これにより、以下のメリットがあります。

ユーザーへのコンテンツ配信
  • 静的ファイルや動的ファイルを、ユーザーに最も近いサーバーから配信できる。
ストリーミングの配信
  • 動画や音声といったストリーミングデータの配信を、ユーザーから最も近いサーバーから行える。
  • Adobe MEdia Serverなど複数の製品に対応している。
CDNデータキャッシュ
  • 初回のアクセスの際に、オリジンサーバから取得したコンテンツをキャッシュする。
  • 次回以降は、キャッシュの期限が切れるまで、キャッシュしたコンテンツを配信する。
エッジセキュリティー
  • AWSのさまざまな組み込み保護機能を利用可能となり、ネットワークレベル、アプリケーションレベルの両方でのセキュリティーが提供される。
  • オリジンサーバーを、DDOS攻撃から守ることができる。
レポーティング
  • キャッシュが使われた割合やエラー率といった統計情報を、レポートとして参照できる。

CloudFront を利用することにより、以下の4つの課題を解決できます。

・サーバーの負荷

画像や動画など、ファイルサイズが大きいコンテンツへのアクセスの度にオリジンサーバーへアクセスさせると、サーバーの負荷が高くなりますが、CloudFront を使うことで、その負荷を減らすこともできます。

・ネットワーク遅延の低減

サーバーを日本国内に設置してサービスを提供したとして、海外からのアクセスが多い場合、距離遅延の値が大きくなります。CloudFront を使ってユーザーに近いところから配信すれば、その遅延を低減できます。

・コストの削減

初期費用は無料で始められ、「リクエスト数+送信量」での従量課金となります。新規ユーザーは12ヶ月間、500GB のデータ送信と2,000,000回のHTTP/HTTPS リクエストが無料になります。

・可用性の向上

予想外のアクセスがあっても、オリジンサーバーの高負荷やサーバーダウンによるサービスの影響を避けられます。

ディストリビューション

ディストリビューションは、CloudFront による配信の方式です。方式としては2つあります。

1. ダウンロードディストリビューション
  • 静的なコンテンツ向け
  • HTTP/HTTPSを利用して、HTML、CSS、画像などのデータを配信
2. ストリーミングディストリビューション
  • 動的なコンテンツ向け
  • HLS(Apple HTTP Live Streaming)や RTMP(Real Time Messaging Protocol)を利用して、動画のストリーミングを配信

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]

価格:2,618円
(2020/8/12 12:20時点)
感想(0件)

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(7)Route 53 について

Amazon Route 53 とは

Amazon Route 53 (以下 Route 53) は、AWS が提供する DNS サービスのことです。Web コンソールや API から簡単にドメイン情報やゾーン情報を設定したり管理したり可能となります。

Route 53 は、以下の機能を持つ DNS です。

  • ドメイン管理機能
  • 権威 DNS 機能

権威 DNS なので、自分が保持しているドメイン名以外の名前解決は行いません。また、こういった情報を保持していない DNS を区別して、キャッシュ DNS と呼びます。

また、Route 53 は単にドメイン情報や DNS 情報を管理するだけでなく、ネットワークトラフィックのルーティングや接続先のシステムの状況に応じた接続先の変更も行えます。

Route 53 では、こういったオプションを使って、可用性やレスポンスを高めることができます。

Route 53 の特徴

信頼性

  • 高い SLA(100%と言われている)

この高い信頼性の部分ですが、4つのネームサーバーで構成されているため、4台のサーバが同時に障害になることはないということから、100% としているようです。

コスト

  • 使った分のみのコストで非常に安価

柔軟性

  • 7つのトラフィックルーティングポリシー

ドメインの管理

Route 53 を使って、新規のドメインを取得したり、更新したりの手続きができるため、ドメインの取得からゾーン情報の設定まで、一貫した管理が可能になります。

ドメインの年間利用料は、通常の AWS 利用料の請求に含めることができるため、自動更新機能を使って更新漏れも避けられます。

ホストゾーン

レコード情報の管理単位です。通常はドメイン名となります。

DNS では IP アドレスとドメイン名やホスト名を変換する「アドレス帳」を持っていますが、AWS ではこれをホストゾーンと呼んでいます。

例えば「kkinternal.com」のレコード情報を DNS で管理する場合、「kkinternal.com」がホストゾーンということになる。

レコード情報

「www.kkinternal.com」は「192.168.1.100」という IP アドレスを持つといったような、ドメイン名又はサブドメイン名と IP アドレスを変換するための情報のことです。

一般的な DNS のレコード:

DNS の基本レコードについては、以下のようなものがあります。

  • A レコード:ホスト名に対する IPv4 アドレスを定義(Address)
  • AAAA レコード:ホスト名に対する IPv6 アドレスを定義
  • CAA レコード:ドメインまたはサブドメインの証明書の発行を許可する認証機関 (CA) を定義(Certification Authority Authorization)
  • CNAME レコード:ホスト名やドメイン名の別名を定義(Canonical Name)
  • MX レコード:ドメイン宛てのメールサーバーのホスト名を定義(Mail Exchange)
  • NAPTR レコード: 動的委任発見システム (DDDS: Dynamic Delegation Discovery System) アプリケーションで、1つの値を別の値に変換または置き換えるために使用(The Naming Authority Pointer)
  • NS レコード:ゾーンを管理するネームサーバー名を定義(Name Server) 
  • PTR レコード:アドレスに対するホスト名(逆引き)を定義(Pointer Resource)
  • SOA レコード:DNS サーバの動作を決める基本情報を定義(Start Of Authority)
  • SPF レコード:送信ドメイン認証を定義(Sender Policy Framework)
  • SRV レコード:負荷分散サービスの提供や冗長性の確保、サービスポート番号(Service Location)
  • TXT レコード:ホスト名に関連づけるテキスト情報(文字列)を定義 (Text)

Route 53 が使える DNS レコード:

Route 53 で使用できるレコードは、上記の一般的なレコードの他に、Aliasレコードというものがあります。

  • Alias レコード:CloudFront(AWS が提供する CDN サービス)や ELB,、S3(AWS が提供するオブジェクトストレージの1つ)などといった AWS のリソースを FQDN 指定できる。
CNAME レコードでも同じようなことが可能であるが、Zone Apex にも登録できるという点が CNAME と異なる。

これ、正直なところ、私にはあまりピンときません。DNS に関する深い知識がありませんので。とりあえず、「CNAME レコードでは制限(Zone Apex には登録ができない)があるが、Alias レコードの方にを使うとその制限がない」くらいで理解しておきます(何事も学ぶことを進めていけば、後から分かるようになります!)。

DNS を深く理解している方は、こちらのサイトに違いについていろいろと記述がありますので、読んでみると理解が深まるかもしれません。

Zone Apex とは

ドメインそのものを指します。つまり、「kkinternational.com」が Zone Apex になります(「www.kkinternal.com」などがサブドメイン)。

「kkinternal.com」を S3 のウェブホスティングサービスにアクセスする独自ドメインとして利用したい場合、Route 53 以外の DNS では CNAME の仕様上、登録ができない。

トラフィックルーティングポリシー

DNS の名前解決の問い合わせに対して、どの様に応答するかを決めるルーティングポリシーが 7つあります。

このポリシーについては、トラフィックルーティングポリシーのAWS のサイトをしっかり読むことをお勧めします。

1. シンプルルーティング

  • 標準 DNS のレコードを使用
  • 標準的な 1対1 のルーティング(1つのリソースに対してトラフィックをルーティンング)

2. フェールオーバールーティング

  • アクティブ/スダンバイ方式
  • アクティブ側のシステムへのヘルスチェックが失敗した場合、スダンバイ側システムへルーティング
  • Sorry サーバーを登録しておけば、本番機の障害時に Sorry コンテンツを表示させることができる

3. 位置情報ルーティング

  • ユーザーの位置情報(DNS リクエストの位置情報)に基づき、トラフィックをルーティング
  • 日本からのアクセスは日本語のコンテンツの Web サーバーに接続させることができる

4. 地理的近接性ルーティング

  • リソースの場所に基づき、トラフィックをルーティング
  • トラフィックの発信元の地理的リージョンのサイズをバイアスという値で定義
  • トラフィックをある場所のリソースから別の場所のリソースに移動する際に使用

5. レイテンシールーティング

  • 複数箇所にサーバーが分散されて設置されている場合、遅延が最も小さいサーバーにリクエストをルーティング
  • 特定サーバーだけ高負荷になった場合にリクエストを分散

6. 複数値回答ルーティング

  • 1つのレコードに異なる IP アドレスを複数登録し、ランダムに接続させる
  • 複数のリソースへルーティングするため、ヘルスチェックで NGとなったサーバーにはアクセスをさせない
  • 正常に稼働しているサーバーに対してのみの負荷分散が可能

7. 加重ルーティング

  • 指定した比率で複数のリソースにトラフィックをルーティング(重みを使ってトラフィック負荷を分散)
  • 拠点をまたがってリソースの異なるサーバーが設置されている場合、リクエスト比率を調整することが可能
  • テストのために新しいサービスをリリースしたサーバーに、一定割合のユーザーを誘導するといった使い方もできる

その他の機能

トラフィックフロー

トラフィックルーティングポリシーを組み合わせると、どうしても複雑になってしまいます。

  • ルーティングポリシーを組み合わせることで、さまざまなルーティング環境を構築できる。
  • しかし、各レコード間の設定が複雑になる。

これを管理しやすくするためのツールがトラフィックフローになります。ビジュアル的に分かりやすく組み合わせるためのツールで、複雑なルーティングをビジュアルエディターで構成することが可能になります。

  • 複雑なルーティングをビジュアルエディターで構成することが可能
  • ルールのバージョン管理やロールバックも可能
  • 少々価格が高い(ポリシーあたり 50 USD/月)

DNS フェールオーバー

Route 53 が持つフォールトトレランスアーキテクチャーになります。システムに異常が発生した場合でも、被害を最小限に抑える仕組みを提供します。

稼働中のシステムに障害が発生しウェブサイトの閲覧ができなくなった場合、一時的に接続先を Sorry サーバーに切り替えるといった感じで動作させられます。

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]

価格:2,618円
(2020/8/12 12:20時点)
感想(0件)

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 技術一般 認定資格

AWSを学ぶ(6)EC2 を使ってみよう

EC2 にインスタンスを起動

私は AWS を英語表示で使用していますので、日本語表示の時と表示が異なるかもしれませんが読み替えてください。

AWS のマネジメントコンソールにログインします。

検索のテキストボックスに、EC2 と入力します。EC2 の名前が表示されるので、それをクリックします。

EC2 の管理コンソールが表示れます。(画面が新しくなりましたね)

画面上部にあるリージョンの名前をクリックすると、使用できるリージョンの一覧が表示されます。

今回は東京リージョンを使用します。

EC2 の東京リージョンの管理コンソールが表示されます。

左側にあるメニューの中の「Instances」の中の「Instances」をクリックします。

インスタンスの管理コンソールが表示されます。

「Launch Instance」をクリックします。

利用可能なインスタンスの一覧が表示されます。

今回は、Windows サーバーを起動させてみましょう。上部の検索テキストボックスに「Windows」と入力して、エンターキーを押します。

利用可能な WIndows サーバーの一覧が表示されます。

今回は、一番上の Microsoft Windows Server 2019 Base を使います。

その名前の右側にある「Select」ボタンを押します。

インスタンスタイプです。今回は起動確認のテストですので、無償で使える小さいタイプを選択します。

画面右下の「Next」ボタンを押して進みます。

よく使う項目は、以下の3つでしょう。入力したり、プルダウンメニューから選択します。

  • インスタンスの数
  • ネットワーク
  • サブネット

今回は、以下のように設定します。

  • インスタンスの数 = 1
  • ネットワーク = VPC-TKY(私が東京リージョンに作成したVPC)
  • サブネット = ap-northeast-1a

上記以外にも、ドメインに参加させるかとか、ストップボタンを押した時にどうさせるかとかなど、いろいろ設定ができます。今回は起動確認テストですので、全てそのままにします。

画面右下の「Next」を押して進みます。

ストレージの設定画面が表示されます。

これから起動させる Windows サーバー 2019 が使用するストレージの設定です。Windows だとCドライブになります。

Cドライブ以外にもドライブが欲しい場合は、「Add New Volume」を押して追加が可能です。

今回は起動確認テストですので、30GB のまま進めます。

画面右下の「Next」ボタンを押して進みます。

ちなみに、「Volume Type」のところで、SSD なのか、HDD なのかといったストレージのタイプも選択が可能です。

タグの画面が表示されます。

タグは付箋のようなもので、後からみた時にどのインスタンスなのか分かりやすいようにするためのものです。

タグはオプションですので、なしでも問題ありませんが、インスタンス数が増えてくると管理が困難になってきますので、何らかの値を入れておくことがお勧めです。

「Add Tag」をクリックします。

タグは以下のように入力してみました。

  • Key = Win2K19-20200811
  • Value=test

「Next」を押して進みます。

セキュリティーグループの設定です。

Windows インスタンスの場合、初期状態で RDP を許可するルールが入っています。

「Add Rule」ボタンを押して、ルールを追加できます。

ルールには、以下の項目があります。

  • タイプ: TCP、UDP、ICMP、HTTP、HTTPS、SSH など、何を対象にするのかをいろいろと選べます。
  • プロトコル:TCP、UDP、ICMP で、タイプを選択すると、ここも選択されます。
  • ポートの範囲:CUstom TCP や Custom UDP などをタイプで選んだ場合、ポート番号を指定できます。
  • 送信元:通信の送信元を指定できます。どこからアクセスでもOKやこのIPアドレスのみなどです。
  • ディスクリプション:後から見て分かるように、このルールの説明を記述します。

以下は、カスタムTCPを選択して、ポート番号として 8088 から 9099 を許可した例です。

送信元は「全て」「特定の IP アドレスや範囲」が指定できますが、セキュリティーグループも指定できるところが特徴です。

今回は起動確認テストなので、RDP のみを許可して起動させます。

画面右下の「Review and Launch」ボタンを押して進みます。

さあ、最終ステップです。今まで自分が設定した内容を確認しましょう。

起動させるインスタンスのサイズは正しいですか?起動させるリージョン、VPC、サブネットは正しいですか?

インスタンスの詳細も確認してください。

インスタンスにアタッチするストレージの内容やタグの内容も確認します。

全ての内容が自分の設計通りであることが確認できたあ、画面右下の「Launch」ボタンを押して進みます。

最後にキーペアを設定します。

これは、インスタンスにログインする際に使用します。既存でキーペアがある場合は、それを使用することもできますが、今回は新規で作成します。

「Create a new key pair」を選択し、「Key pair name」にキーペアの名前を入力します。

「Download Key Pair」ボタンを押して、キーペアのファイルをダウンロードします。

キーペアのファイルのダウンロードが完了したら、「Launch Instances」ボタンを押して、インスタンを起動させます。

インスタンスの起動が始まります。

画面上部に見えるインスタンス ID をクリックします。

EC2 の管理画面に自動的に移動し、起動中のインスタンスが見えます。

ステータスが「Initializing」になっているのが見えると思います。「起動中」の意味です。インスタンスの起動までには、少し時間がかかります。このステータスの部分を見ておいてください。

ステータスが「2/2 Checks Passed」になれば、起動完了です。

起動させたインスタンスのグローバル IP アドレスも確認できますね。

インスタンスのログインパスワードの入手

画面上部のメニューの「Action」から、「Get Windows Password」を選択します。

以下のようなパスワード取り出し画面が表示されますので、Key Pair Path のところで「Choose File」ボタンを押し、先ほどダンロードしたパスワードファイルを指定します。

パスワードファイルを正常に読み込むと、以下のように証明書の内容が表示されます。

画面右下の「Decrypt Password」ボタンを押して、パスワードを表示させます。

パスワードが表示されました。パスワードをメモしたら「Close」ボタンを押して、画面を閉じてください。

インスタンスへのログイン

パスワードが入手できたので、今度はインスタンスにログインしましょう。

画面上部メニューの中の「Connect」ボタンを押します。

Windowsの場合、RDP のファイルをダウンロードすると簡単です。「Download Remote Desktop File」をクリックして、デスクトップに保存します。

RDP ファイルをダブルクリックして、RDP 接続を開始します。

私は Macbook を使用していますので、Windows とは画面が異なりますが、以下のようなパスワードを求める画面が表示されます。先ほどメモしたパスワードを入力してください。

AWS 東京リージョンの自分のVPC 内に起動させた Windows のデスクトップが表示されます。

インスタンスの削除

EC2 の管理コンソールに戻ります。

画面上部のメニューの中から、「Action」→「Instance State」→「Terminate」を選択します。

インスタンスを削除して良いかの確認画面が表示されます。

画面右下の「Yes, Terminate」ボタンを押して削除します。

インスタンスのシャットダウンが開始されます。

シャットダウンが完了するまで、しばらく時間がかかります。「Instance State」の部分を見ておいてください。

Terminated の表示になったら、インスタンスの削除は完了です。

インスタンスが完了したら、必ず EBS のストレージも削除されているかも確認することをお勧めします。

残っていたら、削除しておきましょう。インスタンスを削除しても EBS が残っているとお金がかかります。

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]

価格:2,618円
(2020/8/12 12:20時点)
感想(0件)

カテゴリー
2020年 AWS AWS Solutions Architect - Associate クラウド コンピューター 認定資格

AWSを学ぶ(5)EC2の性能とコストの考え方

EC2の性能をどう考えるか

EC2ではインスタンスタイプというものがあり、インスタンスのスペックを選択することができます。

オンデマンドタイプですと、例えば、m5.largeとかp2.8xlargeなどがあります。AWSのサイトに、スペックと価格の記載があります。

この「m」とか「p」は、インスタンスファミリーと呼ばれ、「何に対して最適化しているのか」を示しています。

インスタンスファミリー何に対して最適化なのか
 t, m汎用
 cコンピューティング
 p, gGPU
 x, r, zメモリー
 i, dストレージ
https://aws.amazon.com/jp/ec2/pricing/on-demand

インスタンスファミリーの後ろの数字は世代を表します。つまり、数字の大きいものがより最新ということになります。

一般的には、世代の新しいもののほうがスペックが良く、価格も安いです。

「xlarge」や「4xlarge」の部分が、インスタンスサイズを表し、数字の大きいものの方がスペックが高いということになります。

以下のものが、2020年8月11日時点でのm5インスタンスファミリーの性能と価格です。性能と価格は変更されることがありますので、必ずAWSのサイトを参照してください。

汎用-現行世代

EC2のコスト

EC2では、インスタンスを使ったら使った分だけ課金される「従量課金型」です。

この「使った分だけ」ですが、以下の様な考え方になります。

  • インスタンスが「Running」状態であった時間
  • 「Running」状態であったインスタンスのインスタンスタイプやリージョン

インスタンスを稼動させるリージョンによっても価格が変わるので注意です。

インスタンスの状態は3つあります。

  1. Running: 起動中
  2. Stopped : 停止中
  3. Terminated:  削除済み

EC2では、起動しているインスタンスのみが課金対象になり、停止中や削除されたインスタンスに対しては課金されません

インスタンスの削除に関して、注意点としては以下の点があります。

  • 停止中のインスタンスでも、、EBS(EC2インスタンスにアタッチして使うブロックストレージ)の費用はかかる
  • インスタンスを削除してもEBSは残るものもあるので注意(インスタンスを削除した時は必ずEBSも確認する)

私も過去に、インスタンスを削除したにも関わらず、EBSのストレージが消えていなかったために、コストがかかってしまっていたという経験があります。

スポットインスタンスとリザーブドインスタンス

オンデマンド

  • インスタンスの利用時間によって、料金が発生するタイプです。
  • 短期間や限られたタイミングでのみ利用したいという時に合います。

スポットインスタンス

  • AWSが余らせているEC2リソースを、入札形式で安く利用できるタイプです。
  • ただし、他のユーザーから利用リクエストが増え、リソースの余がなくなると、インスタンスが自動的に中断されます。
  • 一時的にテストや開発で高いスペックのインスタンスを利用したいというケースには良いです。

リザーブドインスタンス

  • 長期利用を約束することで、割引が得られるタイプです(料金先払い)。
  • 例えば、1年間で購入すると40%程度も費用を削減できるケースもあります。
  • 最初はまずオンデマンドで利用し、これでもう大丈夫となったら、リザーブドインスタンスで本番稼動という形が良いのではと思います

この教材を使って勉強してます。

AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]

価格:2,618円
(2020/8/12 12:20時点)
感想(0件)

AWS関連の記事:

関連する記事:

最近の記事: