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

AWSを学ぶ(15)Glacier とは何か?どの様に使うのか?

AWS Glacier

Amazon Glacier (以下、Glacier)は、99.999999999の耐久性を持ちながら、容量あたりの費用を抑えたアーカイブストレージサービスです。価格は安いのですが、データの取り出しの際には時間がかかってしまうという特徴があります。

ちなみに、Glacier というのは、グレイシアと読み、日本語で「氷河」という意味です。

オンプレミスの環境ですと、磁気テープを使って長期のデータ保存を行いますが、磁気テープでのバックアップには、「長期保存」、「取り出しに時間がかかる」、「アクセス頻度は低い」といった特徴があります。Glacierは、このイメージで使用されます。

S3の様に、保存するデータに対して名前を付ける事はできず、自動採番された「アーカイブID」で管理されます。

Glacierへのデータの保存は、APIによる操作、またはS3のライフサイクル管理により行われます。

余談ですが、私は以前、クラウドバックアップ関連の製品を取り扱っていたのですが、その製品がS3 やGlacier にデータを保存することができました。Glacier を保存先とする時に、設定にちょっと困ったのですが、ここがポイントでした。Glacier はS3 のバケットを経由しないと、データの保存ができないです(API を使えば別ですが)。

Glacier の価格

Glacier は非常に低コストと言われますが、具体的に価格を見てみましょう。S3と比較してみます。AWSの公式サイトに価格が掲載されています。

S3 標準GlacierS3 Glacier Deep Archive
条件最初の50TB/月      1分から12時間の取り出し     年に1、2回のアクセスで、12時間以内でのデータ取り出し
GBあたりのコスト(USD)0.0250.0050.002
S3 と Glacier のコスト比較

ちなみに私の自宅のNASには、約2TBのデータが保存されています。これをAWSのクラウドストレージ にバックアップして保存すると想定してみます。

S3 と Glacier のコストシミュレーション

1ドル120円換算で計算していますが、S3 Glacier Seep Archive だと月にして4ドル(日本円で480円)です。確かにすごく安いですね。これなら個人でも可能な金額です。

Glacier の構成要素

Glacierは、以下の4つの要素から構成されます。基本的にはS3と同じ(ただし呼び方は異なる)です。

ボールト(S3: バケット)

アーカイブを保存するための領域です。ボールトで使われる名前は、リージョン、及びアカウント内で一意であれば良いため、たのアカウントで使用されている名前も利用できます

アーカイブ(S3: オブジェクト)

Glaceirに保存されるデータのことです。各アーカイブには一意のアーカイブIDとオプションの説明が割り当てられます。アーカイブIDには、138バイトのランダムな文字列が自動的に割り当てられ、ユーザーが指定する事はできません。

インベントリ

各ボールトに保存されているアーカイブの情報(サイズ、作成日、アップロード時に指定された説明など)を収集します。1日に1回の頻度で更新されるため、最新の情報が反映されるまでに時間がかかります。マネージメントコンソールから確認する事で、リアルタイムで状況が見られます。また、ListVaults API を使用することもできます。

ジョブ

アーカイブやイベントリに対して検索をしたり、データをダウンロードするといった要求に対して処理を実施し、それらの処理状況を管理します。

Glacier を使ってみよう

ボールトの作成

AWS 管理コンソールの検索から、「Glacier」を入力し、Glacierの管理コンソールにアクセスします。

「ボールトの作成」をクリックします。

ボールトを作成するリージョンを選択し、ボールトの名前を付けます。

イベント通知の画面が表示されます。

今回は「通知を有効にしない」を選択します。

確認画面が表示されます。

設定内容を確認し、「送信」をクリックします。

ボールトが作成されました。

ボールト名をクリックしてみると、ボールトの中が見られます。まだデータ(アーカイブ)は何も保存していませんので、アーカイブ数は 0 のままです。

アーカイブデータの保存

Glacier のボールトには、上述の通り、直接アクセスができません。API または、S3 のライフサイクルを使用します。

S3 の使い方については、AWSを学んでみる14で調べてみましたので、そちらをご参照下さい。

S3 上の指定したバケツにデータを保存します。

ストレージクラスで、「Glacier」を選択します。

設定内容の確認をし、「アップロード」をクリックして、データを転送します。

転送したデータの名前の「ストレージクラス」を見てみると、Glacier になっています。これでデータがアーカイブとして、Glacier 上に保存されました。

データの取り出しオプション

Glacierにアーカイブしたデータを閲覧するためには、「データの取り出しリクエスト」を行う必要があります。取り出しリクエストを行ってから実際に取り出しができる様になるまでの待ち時間に応じて、高速、標準、バルクの3種類のリクエストオプションがあります。

高速

1−5分程度後でのデータ取得

標準

3−5時間程度後でのデータ取得

バルク

5−12時間後でのデータ取得。次の日に見られれば十分というケースに使用

データの取り出し設定オプション

データ取り出し時の設定オプションは3つあります。Glacier 上のボールトを指定し、「設定」をクリックして設定ができます。

  • 無料利用枠のみ: 無料枠の範囲でデータの取り出しができます。それを超えるデータ量になると、取得リクエストは拒否されます。
  • 最大取得率: 1時間あたりの最大取得率で価格が変わります。
  • 取得制限なし: 制限をかけません。

Glacier Select

Glacier Select は、アーカイブデータに対してSQL を実施し、条件にあったデータを抽出する機能です。つまり、Glacier に保存されているデータを直接検索することができ、アーカイブ全体を取得する必要がありません。

特定のデータだけをアーカイブから取り出せる便利な機能なのですが、使用には、対象のアーカイブデータは非圧縮のSCV形式出なければならばならないなどの条件があります。

Glacier Select は、まもなく Amazon Athena と Amazon Redshift Spectrum と統合される予定とのことです。

データの暗号化

Glacier にデータ保存する時は、SSLを使ったデータ転送が行われます。またGlacier に保存されるデータは、標準で暗号化されます。

もし独自の暗号化方式を使用したい場合は、Glacierに保存する前にその暗号化方式で暗号化を行い、そのデータをGlacierに転送します。

データのセキュリティーに関して、AWSの公式サイトでは、以下の様に記載されています。

AWS では、お客様のプライバシーに絶えず注意を払っています。弊社のお客様はデータのセキュリティを重視しています。そのため、弊社にはシステムを 24 時間体制でモニタリングしている世界トップクラスのセキュリティ専門家チームがおり、お客様のコンテンツを保護しています。AWS により、暗号化、移動、保管管理機能を含め、常にデータを保有しているという認識を持って、最も安全なグローバルインフラストラクチャを構築できます。データセンターとリージョンを相互接続する AWS グローバルネットワークを流れるすべてのデータは、安全性が保証された施設を離れる前に物理レイヤーで自動的に暗号化されます。すべての VPC クロスリージョンピアリングトラフィックや、カスタマーまたはサービス間の TLS 接続などといった追加の暗号化レイヤーもあります。AWS Key Management System (KMS) が管理するキーを使用する、あるいは FIPS 140-2 レベル 3 検証済み HSM を使って CloudHSM で独自の暗号化キーを管理することにより、転送中および保存中のデータを簡単に暗号化して、許可されたユーザーのみがアクセスできるようにするツールを提供しています。AWS では、地域および地方のデータプライバシー法や規制を順守していることを示すために必要な管理と可視性も提供しています。グローバルインフラストラクチャの設計により、データが物理的に配置されている地域を完全に制御し、データ常駐要件を満たします。

AWS 公式ウェブサイト

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

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

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ]価格:2,618円
(2020/8/30 16:09時点)
感想(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関連の記事:

関連する記事:

最近の記事:

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

AWSを学ぶ(4)EC2を理解しよう

EC2とは

Amazon Elastic Compute Cloud の略で、AWSで提供されるコンピューティングサービスの1つです。

簡単に言えば、仮想マシンを起動させられるサービスです。

EC2では仮想サーバはインスタンスという単位で管理され、数回クリックすれば起動してくるため、サーバの調達までのリードタイムは大幅に短縮が可能となります。

EC2の便利さを考えるために、オンプレとの比較をしてみましょう。

オンプレ環境では、物理サーバを手配し、そこにOSをインストールし、ラックを増設し、ネットワークや電源の管理をするといった様々な作業が必要となり、新しいサービスをリリースするまでに、1ヶ月くらいはかかるでしょう。

そして、こんなに時間をかけて準備したにも関わらず、予想を超えるトラフィックやリクエストを処理できず、ビジネスチャンスの逃してしまったり、逆にリソースを余らせてしまい、結果として赤字になるなんてこともあり得えます。

EC2を使えばサービスの提供までのリードタイムを大幅に短縮させられます。

ビジネスにとって重要なところはどこなのでしょうか。サービスを用意するところではないですよね。サービスを如何に効率よく提供し続けビジネスを行うことです。つまり、ビジネス価値を生む行為に集中できる様になります。

AWSが提供するコンピューティングサービスには、以下のものがあります。

  • Amazon Elastic Compute Cloud (EC2)
  • AWS Lambda
  • Amazon Elastic Container Service (ECS)
  • Amazon Elastic Container Service for Kubernetes (EKS)
  • Amazon Fargate
  • Amazon Lightsail

EC2の仕組み

EC2では、使用したいイメージを選択しインスタンスを実行します。このイメージのことを、Amazon Machine Image(AMI)と呼びます。AMIは、 エイエムアイ、又はアミと呼ばれます。

EC2で使えるAMIには2種類あります。

  1. Amazon Linux、 Red Hat Enterprise Linux、Microsoft WindowsといったAWS が標準で提供しているのも
  2. 各ベンダーがサービスをプリインストールしたもの

ユーザーはインスタンスの断面をAMIにすることもでき、それをバックアップとすることも可能となります。

EC2のメリット

EC2には以下のメリットがあります。

  • 簡単にスペック変更
  • 従量課金でのコスト
  • サービス提供までの時間短縮
  • 簡単に冗長化

EC2の最大の魅力は、仮想インスタンスのスペックを簡単に変更が可能であることにあります。つまり、サービスのキャパシティーを柔軟に拡大や縮小が可能となります。

例えば、あなたのビジネスが夏によく売れる商品だとして考えてみましょう。

夏によく売れるのですから、夏時期にリクエスト数が増えるはずです。

この傾向が分かっている場合、どこを目安にサーバーのスペックを考えるべきでしょうか。

以下の様に、最低でも緑色のラインのリスエストをさばくことができるスペックが必要です。大抵の場合、それに1.2とか1.5とか掛けて、少し大きめのスペックでサーバーを用意すると思います。

それにより、ピーク時のリスエストには対応できる様にな離ますが、夏以外がそれほどリスエスト数がありません。無駄がありますよね。以下の黄色の部分は全て無駄になります。

EC2を利用すれば、必要な時に必要となるスペックと台数のサーバーを簡単に用意することができます。クラウドなので、使用したら使用した分だけの料金しかかかりません。コストも抑えられます。

EC2での冗長化

ビジネスを止めないためには、冗長化は非常に重要なポイントとなります。

ECCでの冗長化では、Auto Scalingを使用することができます。

Auto Scalingを使用すると、リクエストやトラフィックの増加に合わせて、EC2のインスタンス数を増加させたり減少させたりすることができます。

例えば、

  • CPU負荷が80%を超えたら、インスタンスを2台追加する
  • CPU負荷が60%を下回ったら、インスタンスを2台減らす

Auto Scalingの機能ですが、ELBと呼ばれるロードバランサーと一緒に使用されます。

ELB: Elastic Load Balancerはレイヤー4(L4)やレイヤー7(L7)で動作するロードバランサーです。EC2上で動作し、EC2のインスタンスに対してトラフィックを負荷分散するだけでなく、インスタンス自体の負荷を監視し、負荷がしきい値を超えたらインスタンスう数を増やしたり、しきい値を下回ったらシンスタンス数を減らしたりする機能を持ちます。

ELBには、以下の3つの種類があります。

Classic Load Balancer (CLB)Network Load Balancer (NLB)Application Load Balancer (ALB)
HTTP, HTTPS, TCP TCPHTTP, HTTPS
古いタイプのLB
リクエストレベル(L7)と接続レベル(L4)の両方に対応
接続レベル(L4)で動作
TCPトラフィックのロードバランシング
リクエストレベル(L7)で動作
HTTPとHTTPSトラフィックの高度なロードバランシング

EC2が分かってきたのではないでしょうか。EC2では、仮想インスタンスというサーバーを起動させられるのですね。これでプライベートサブネットとパブリックサブネットの2つの役割が分かったと思います。

アプリケーションは一般的に3ティアー構成を取っています。

フロントエンドのノードはエンドユーザーからのリクエストを受けますが、バックエンドのノードはエンドユーザーからのアクセスは不要であり、ノード間の通信のみとなります。

思い出してみてください。パブリックサブネットはIGWを経由してインターネットと通信ができましたよね。それに対して、プライベートサブネットは、IGWとは通信をさせませんので、インターネットとの通信はできません。

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

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

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

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

AWS関連の記事:

関連する記事:

最近の記事: