ネットサービス

AWSの膨大で複雑なサービス群をすべて「たった1行」で説明していくとこうなる


AmazonのクラウドサービスであるAWSは、コンピューティングやデータベース、ストレージなど、膨大で複雑なサービスで構成されています。こうした豊富なサービス群をうまく組み合わせて利用する「ビルディングブロック」がAWSのメリットでもありますが、サービス数が多すぎてなかなか全体像を把握できないのも事実。フリーランスのエンジニアでありコンサルタントでもあるジョシュア・テイセン氏が自身のブログで、AWSのすべてのサービスを「たった1行」で説明しています。

Amazon Web Services
https://adayinthelifeof.nl/2020/05/20/aws.html

テイセン氏によると、Amazon Dashboardから利用可能なAWSのサービスは記事作成時点で163あるとのこと。そのすべてを正確に理解する必要はありませんが、基本を押さえておくことはいいことであり、問題の解決を容易にしてくれるとテイセン氏は語っています。というわけで、テイセン氏がAWSのサービスをたった1行で表した内容が以下。

◆コンピューティング
EC2:仮想的なプライベートサーバー
Lightsail:Amazonが提供するホスティングプロバイダ(VPS、DNS、ストレージ)
Lambda:PythonやNode.js、Goなどで書かれたコードを実行できる。並列実行も可。
Batch:EC2マシンでソフトウェアジョブを回せる
Elastic Beanstalk:マネージドな仮想マシンでソフトウェアを実行できる
Serverless Application Repository:(Lambdaに)デプロイ可能なサーバーレスアプリケーション用リポジトリ
Outposts:自分のデータセンターでAmazonのサービスを利用できる
Image Builder:EC2のイメージを自動で作成する

◆ストレージ
S3:ファイルストレージ。直接マウントはできないがHTTP経由でファイルをダウンロードできる。
EFSNFS。ネットワーク上のディスクを自分のマシンにマウントできる。
FSx:EC2マシンから接続できるWindowsかLustreのファイルシステム
S3 Glacier:バックアップやアーカイブのための低コストストレージシステム
Storage GatewayiSCSIなどを使ってS3を自分のマシンに接続できる
Backup:異なるAWSのサービス(EC2やRDSなど)のバックアップを自動で行ってくれる

◆データベース
RDS:マネージドなMySQL、PostgreSQLデータベース
DynamoDB:大規模&スケーラブルな非リレーショナルデータベース
ElastiCache:マネージドなMemcacheおよびRedisマシン
Neptune:グラフデータベース
Redshift:データウェアハウス。ストリームで処理できるデータを大量に保存できる。
QLDBイミュータブルかつ暗号で検証されるデータ(マネートランザクションなど)用のデータベース
DocumentDBMongoDBのクローン(完全な互換性はない)
Keyspaces:マネージドなApache Cassandraのクローン

◆マイグレーションとデータ転送
Migration Hub:データセンターからAWSへのマイグレーションを行う
Application Discovery Service:データセンターのサービス情報を収集
Database Migration Service:オンラインのままデータベースをRDSへマイグレーションできる。異なるデータ構造間でも可。
Transfer Family:S3を基盤とする(S)FTPサービス。FTPでS3バケットにデータを転送できる。
Snowball:AWSのマシンを取得してデータセンターに接続し、AWSにデータを高速に転送してくれる一連のサービス
DataSync:データセンターとAWS間でデータを同期する

◆ネットワークとコンテンツデリバリー
VPC:AWS内でVPNを使える
CloudFront:コンテンツデリバリネットワーク
Route 53:ドメインネームとレコードを管理する
API Gateway:HTTPのAPIを作成し、それらを異なるバックエンドに接続する
Direct Connect:自分のシステム(もしくはデータセンター)とAWS間を(物理的に)接続する
App Mesh:ECSやEKSのコンテナのサイドカーとしてEnvoyを自動的に実行する
Cloud Map:コンテナのためのサービスを検出する
Global Accelerator:アプリケーションをエッジロケーションで実行する。CDNのアプリケーション版

◆開発ツール
CodeStar:テンプレートのコードやCodeCommit、CodeBuildのテンプレを使ってアプリを迅速に開発できる
CodeCommit:Amazonのソースリポジトリ(gitのレポジトリなど)
CodeBuildCIサービス
CodeDeploy:デプロイメントサービス
CodePipeline:ワークフローを定義してCDを行う
Cloud9:オンラインのIDE
X-Ray:アプリケーションを分析したりデバッグしたりできる。PythonやNode.js、Goなどをサポート。

◆ロボティクス
RoboMaker:ロボットエンジニアのためのクラウドソリューション。シミュレーションやテスト、ロボット用アプリの安全なデプロイができる。

◆顧客ごとの最適化
IQ:必要にあわせてAWSの専門家を雇える
サポート:AWSのサポートセンター
Managed Services:AWSにAWSサービスの管理をお任せする

◆ブロックチェーン
Managed Blockchain:ブロックチェーン

◆衛星
Ground Station:衛星通信サービス

◆量子技術
Braket:なんらかの量子技術。記事作成時点ではプレビュー段階でよくわからないとのこと。

◆マネジメントとガバナンス
Organizations:複数の組織やアカウントの設定
CloudWatch:さまざまなAWSの要素からログを取得する
Auto Scaling:自分で設定した入力やルールに基づいてリソースをスケールする
CloudFormation:テンプレートを使ってAWSの要素を作ったり設定したりできる
CloudTrail:AWSサービス内で誰が何をしたか記録する
Config:AWSリソースの設定を監査する
OpsWorksChefAnsibleによる自動化
Service Catalog:クラウド内のアイテムやコードなどのリストを管理
Systems Manager:アプリごとなど、自由にリソースをグループ化し、データを見ることができる
AppConfig:アプリケーションの設定データを保存したり公開したりできる
Trusted Advisor:アカウントについてのコストやセキュリティなどの問題のチェックをしてくれる
Control Tower:複数のアカウントの管理
License Manager:ライセンスの管理
Well-Architected Tool:システムについてのアンケートを作成し、ベストプラクティスに沿っているか確認できる
Personal Health Dashboard:AWSのステータスページ
Chatbot:AWSをSlackと連携できる
Launch WizardMS SQLSAPのソフトウェアをデプロイする
Compute Optimizer:最適なリソースを発見し、コスト削減の方法を指示してくれる

◆メディアサービス
Elastic Transcoder:S3のファイルを異なるフォーマットに変換したり、S3に戻したりする
Kinesis Video Streams:メディアストリームをキャプチャする
Elemental MediaConnect:不明とのこと
Elemental MediaConvert:メディアを異なるフォーマットに変換する
Elemental MediaLive:ライブビデオを不特定多数に共有する
Elemental MediaPackage:不明とのこと
Elemental MediaStore:不明とのこと
Elemental MediaTailor:動画のブロードキャストに広告を挿入できる
Elemental アプライアンスとソフトウェア:オンプレミスでビデオを作成できる。基本的には上記のサービスを組み合わせたもの。費用がかかりそう。

◆機械学習
SageMaker:機械学習ツール
CodeGuru:機械学習でJavaのコードをプロファイルする
Comprehend:機械学習によってメールやツイートの内容を機械に理解させ、分類させる
Forecast:データから予測する
Fraud Detector:プレビュー段階でわからない
Kendra:質問による検索サービス
Lex:音声会話やチャットボットを作成できる
Machine Learning:非推奨。SageMakerが後継。
Personalize:データに基づいて個人に最適化されたレコメンデーションを作成できる(Mahout?)
Polly:テキストから音声へ異なる言語で変換できる
Rekognition:画像中の物体や人物を認識する
Textract:画像中のテキストを認識してテキストとして出力する(光学文字認識)
Transcribe:音声をテキストに変換する
Translate:テキストを他言語に翻訳する
DeepLens:機械学習を行うビデオカメラ
DeepRacer:機械学習でレース車両をプログラムし競い合うゲームの一種
Augmented AI:機械学習をより良くするために人間を学習のフローに参加させる
DeepComposer:コンピューターが作曲する。文字通りものすごいもの。

◆分析
Athena:クエリデータをS3バケットに保存する
EMR:ビッグデータフレームワーク実行してスケールできる
CloudSearch:マネージドなドキュメント検索システム(ElasticsearchのAWS版)
Elasticsearch ServiceSaaSのElasticsearch
Kinesis:分析可能なかたちで膨大なデータを収集する(ELKスタックのようなもの?)
QuickSightビジネスインテリジェンスサービス
Data PipelineDynamoDBやRDS、S3にデータを移動させたり変形させたりできる
Data Exchange:目的のデータを利用できるAPIを探してくれる、高額になる可能性あり
GlueETLサービス、データの品質を上げ、検証してくれる
Lake Formationデータレイクを作成する
MSK:SaaSのApache Kafka

◆セキュリティと識別、コンプライアンス
IAM:ユーザーやAWSサービスを管理できるAWSの権限システム
Resource Access Manager:Route 53やEC2などのAWSリソースを他のアカウントと共有できる
Cognito:ユーザーとパスワード管理システム。アプリケーションのユーザー管理に便利。
Secrets Manager:キーなどの暗号化データを保護してくれる。シークレットの自動ローテートも可能。
GuardDutyCloudTrailやVPCのログを自動でスキャンし脅威に備える
Inspector:ネットワークやマシンの(セキュリティ上の)問題を自動で検出してくれる
Macie:S3バケット内のデータを分析し、個人情報をチェックしてくれる
Single Sign-On:アプリケーションでシングルサインオン機能を利用できる
Certificate Manager:SSL証明書の管理や(無料の)証明書を発行できる
Key Management Service:暗号化キーの管理
CloudHSMハードウェアセキュリティモジュール。暗号鍵の生成と操作が可能。
Directory Service:SaaSのActive Directory
WAFとShieldウェブアプリケーションファイアウォール。ルールを設定したり事前に用意したルールを指定したりできる。
Firewall Manager:組織内の異なるアカウントのファイアウォール管理
Artifact:クラウドコンプライアンスのドキュメント(ISO/IEC 27001のようなもの)
Security Hub:GuardDutyやInspector、Macieなどを利用した総合的なセキュリティチェッカー
Detective:(Security Hubなどから)セキュリティ上の問題をログに残す

◆モバイル
Amplify:AWSでフロントエンド&バックエンドアプリを自動生成して自動デプロイさせる
Mobile Hub:今はAmplifyの一部に
AppSync:接続可能なバックエンドのAPIを作成できる。Amplify経由でも作成可能。
Device Farm:AWSのBrowserStack。異なるモバイル端末やブラウザでのテストを自動で行える。

◆ARとVR
Sumerian:わからない。テイセン氏の環境ではブラウザがクラッシュしたとのこと。

◆アプリケーション統合
Step Functions:Amazon独自の言語でマシン構成を記述できる
AppFlow:自動で複数のアプリを連携できる(Zapierみたいなもの?)
EventBridgeイベントバスシステムのようなもの
MQ:Amazonが管理するApache ActiveMQ
Simple Notification Service:メールやSMSなどでシステムに関する通知ができる
Simple Queue Serviceメッセージキューシステム
SWF:ワークフローを作成できる

◆AWSのコスト管理
Cost Explorer:AWSの費用状況を可視化
Budgets:AWSの予算を作成
Marketplace:ソフトウェアインストール済みのAMIを検索し購入できる

◆カスタマーエンゲージメント
Connect:AWSのコールセンタープラットフォーム
Pinpoint:テンプレートに沿ったメールやSMS、電話による応答ができる
Simple Email Service:メール送信ができる。メールプロバイダー。

◆ビジネスアプリケーション
Alexa for Business:ビジネスとAlexaを結びつける
Chime:ZoomのAWS版
WorkMail:GmailやGoogleカレンダーのAWS版

◆エンドユーザーコンピューティング
WorkSpaces:WindowsもしくはLinuxの仮想デスクトップサービス
AppStream 2.0:アプリケーションをブラウザに配信できる
WorkDocs:オンラインに文書を保存し管理できる
WorkLink:イントラネットにモバイル端末で接続できる

◆IoT
IoT CoreMQTTブローカーを通してIoTデバイス群を管理する
FreeRTOS:自動でIoT CoreやGreengrassに接続できるマイコン用RTOS
IoT 1-Click:Lambdaなどのシステムと1クリックで接続し管理できる
IoT Analytics:分析のためにさまざまなメッセージを構造化して保存できる
IoT Device Defender:デバイスの異常を検知しアクションを起こす
IoT Device Management:IoTデバイスをグループ化し、ジョブのスケジュールやリモートアクセスの設定ができる
IoT Events:デバイスの利用状況を監視し、AWSサービスやジョブをデバイス自ら実行できる
IoT Greengrass:IoT Coreへの接続が断続的な場合、メッセージブローカーはローカルで相互通信可能な200台までのデバイスにメッセージをバッファできる
IoT SiteWise:産業機器からのデータを収集、構造化、分析、可視化する
IoT Things Graph:IoTデバイスがAWSサービスとどう通信しているかを可視化できるCloudFormationのような構築サービス

◆ゲーム開発
GameLift:ゲームサーバーを低遅延でAWSにデプロイする

◆コンテナ
Elastic Container RegistryDocker HubのようにDockerイメージを保存できる
Elastic Container Service:EC2やFargate上でコンテナを起動できる
Elastic Kubernetes Service:SaaSのKubernetes

AWSには150を超えるサービスが存在しており、そのすべてに精通するのは不可能に近いですが「それで問題ない」とテイセン氏。自分の利用したいサービスとまったく関わりのないサービスも存在するからです。ほとんどのサービスは非常にうまく説明されており、簡単に始めることができたとテイセン氏は語っています。なお、テイセン氏はスマートデバイスを扱った経験がないため、AWSのIoTに関するサービスの専門家がサービスについて教えてくれることを期待しているそうです。

この記事のタイトルとURLをコピーする

・関連記事
Pythonでコードを書いてAWSやKubernetesのシステム構成図を出力できる「Diagrams」 - GIGAZINE

Amazon・Google・Microsoftのクラウドのパフォーマンスを比較した結果が公開中 - GIGAZINE

AWSを10年運用してわかったことをAmazonの最高技術責任者が語る - GIGAZINE

AWSやGCPといったクラウドサービスのセキュリティ項目を無料で監査できるオープンソースソフト「Scout Suite」レビュー - GIGAZINE

in ネットサービス, Posted by log1n_yi

You can read the machine translated English article here.