Amazon Web Servicesとは、日本や世界の企業を陰で支配する、Amazonの謎のウェブサービスである。
Amazonといえば、一般的には通販サービスのイメージが強い。 しかし営業利益を見ると、AWSが通販と同等、あるいはそれ以上の利益を叩きだしている。 [1]
Amazonにとって、AWSは主要な稼ぎ頭なのだ。
それなのにAWSが一般に知られていないのは、主に以下のような理由がある。
しかし、AWSは巷のレンタルサーバ屋などとは一線を画す存在なのだ。そこでここでは、まず利用ケースとしてウェブサービスを始める場合を例として挙げ、それをもとにAWSの機能を説明する。
まず、こんなケースを想定してみよう。
……もうやだこの会社。
おそらくこのプロジェクトの問題は数えきれないほどあるだろう。しかし一番の問題は、この会社にウェブサービスを提供する土台がないことである。そこで、ブラウザゲームのような、我々一般ユーザー使うウェブサービスを提供するには、あらかじめどんな準備が必要なのか考えてみよう。
ここで挙げたものはサービスを開始・運用するために必要な要素のごく一部だが、実に複数の要素が絡んでいるのが分かるだろう。
さらに加えて言えば、これら要素のほぼ全てで専用のソフトウェアを導入する必要があったり、マシン自体を設定したりと何かと複雑な手順が必要である。すると、そのための手順書の作成や再設定の手間も無視できないものになってしまう。
上記の例で挙げたような面倒な諸々を、すべてブラウザ上の画面操作から済ませることができる。CUI(aws cli)を使えばコマンド操作も可能である。
例えば、画面上からサーバのスペックを指定すれば、Amazonがどこかのデータセンターで保有するマシン(仮想マシン)が払い出され、リモートで利用可能になる。一方、目的に応じたサーバやソフトの設定をすでに終え、その機能だけを画面から利用可能にしたサービスをAWSでは100以上も用意しており、実際に利用する場合はむしろこちらがメインになる。また、上記の例ではウェブサービスの例を挙げたが、コーディングなど開発に関する機能や、AI(機械学習)など流行りの機能もAWSは揃えている。
AWSの強みはこれらサービスの豊富さと手軽さである。上手に組み合わせることで、管理しやすい、更新が楽、アクセスが早いといった特徴を持つ「サービス作りの土台」を手軽に組み立てることができる。後述するAWS Lambdaなどを使うことで、サーバを使わずサービスを提供することも可能である。
一方、各サービスを組み合わせるのがメインの利用法になるため、一度AWSを使ったら、その後もずるずるとAWSを使い続ける……という事態に陥りやすい。もうAWSのない開発は考えられない、というIT企業は少なくない(はず)。
AWSには100以上ものサービスがあると前述したが、ここではその中で主要な物を紹介する。
比較的イメージしやすい「レンタルサーバ」に一番近いのがコレ。CPU、メモリ、ディスク容量などを指定するとそのマシンがリモートで利用可能になる。マシンを作ったり消したりコピーしたりが気軽にできる。また料金は高額になる(例えば2021年9月時点において、東京リージョンでp2.xlargeインスタンス(4CPU・61GBメモリ・GPUメモリ12GB)のインスタンスは1.542ドル/時だが、r5.2xlarge(8CPU・64GBメモリ)は0.608ドル/時。ディスク代はどちらにも含まれない)ものの、AI開発にほぼ必須のGPU付きマシンも使える。
なお、多くのレンタルサーバとは異なり、時間単位で借りられるので(60秒以上1秒単位)、本当に必要な時だけ借りる運用も可能。
ロードバランサ。EC2と一緒に使うのが基本で、実際Web上の起動はEC2のサービスコンソールから行う。
Dockerコンテナのレジストリ。後述するECSと併用するのが基本。
Dockerコンテナをオーケストレーションする仕組み。KubernetesベースのEKSというのもある。コンテナ基盤としてFargateを用いると、下にあるインスタンスのことは一切気にしなくて良くなる。
監視サービスがメイン。これにより高負荷になったらイベントを発生させるなどの処理が可能。
自動でインスタンスの数を増減させるEC2 Auto Scalingと、DynamoDBのキャパシティなどを増減させるApplication Auto Scalingの2種類がある。
ストレージサービス。GoogleドライブやDropboxがちょっとリッチになった感じと言えばだいたいあってる。
データベース。MySQLやPostgreSQLなど有名なデータベースはだいたい利用可能。
上記と同じようにデータベースなのだが、SQLベースではなく、Partition KeyとSort Keyを用いて検索する。
DNSサービス。ドメイン管理自体をAWSに任せても良いし、ドメインは他で管理してDNSサーバだけをAWSで借りてもよい。
サーバを使う、すなわち「CPUやメモリなど、リソースを確保したうえで何か処理をする」のではなく、「リクエストやアクションなど、処理そのもの」を指定し、それに対し課金するサービス。サーバの設定にうんざりしなくて済む、リソースの見積もりや不足から開放されるなどのメリットがあり、最近流行している。
CDNサービス。S3と併用すると、サーバを借りることなく静的なWebページを構築することが可能。
API提供サービス。裏にLambdaを繋げることで、APIシステムを簡単に構築可能。
バカでかいAmazon EC2インスタンスでUnrealEngineをビルドしている動画をどうぞ。動画についている「Spot Instance使えば1時間5ドルくらいですね」というコメントが、そのバカでかさを物語っている(Spot Instanceというのは、いつ終了するかわからないが、入札した額より料金が上がらない限り、スポット料金で利用可能なインスタンス。オハイオリージョンで、Windowsインスタンスを1時間借りた場合、3.9961ドルの費用がかかる(2022年8月28日11時51分現在)が、オンデマンドインスタンスだと6.372ドルである)。
こんなバカでかいサーバを時間単位で借りられるのも、Amazon Web Servicesの強みでもある。
掲示板
35 ななしのよっしん
2023/12/23(土) 00:32:46 ID: roWfjhkzec
>>30
何ならサービスに応じてクラウド基盤やSaasも使い分けたりするぞ
Abemaのワールドカップ配信が良い例だが、
CDNを①AWS、②Akamaiの2種類で冗長化して、それぞれを東京とソウルリージョンで冗長化してた。
大阪リージョンはAWS media servicesが利用できないため選定対象外にしたらしい。
36 ななしのよっしん
2024/05/02(木) 16:23:53 ID: fz08Rem/fG
空のS3バケットでAWSの請求額が爆発的に増加するとの指摘、Amazonはさっそく問題に対処すると発表 - GIGAZINE
https://
37 ななしのよっしん
2025/04/15(火) 18:28:22 ID: E41/nv/vxw
大規模障害発生中
提供: ゴースー
提供: ネブカドネザル
提供: カニカマ(※蟹ではない)
提供: のえ
提供: hi-lite
急上昇ワード改
最終更新:2025/04/24(木) 06:00
最終更新:2025/04/24(木) 06:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。