AWS 是什麼? (完整指南)

什麼是 AWS

AWS 是什麼?

過渡到雲可能很困難,尤其是在您不熟悉行話和概念的情況下。 為了充分利用 Amazon Web Services (AWS),首先了解基礎知識很重要。 我將討論一些有助於您入門的關鍵術語和概念。

什麼是雲計算?

雲計算是一種交付模式 信息 通過基於 Web 的工具和應用程序而不是本地服務器或個人計算機從 Internet 檢索資源的技術服務。 雲計算允許用戶訪問存儲在遠程服務器上的應用程序和數據,從而可以通過 Internet 連接在任何地方工作。

Amazon Web Services 等雲服務平台提供各種可用於構建和運行應用程序的服務。 這些服務通過 Internet 提供,可以通過基於 Web 的工具或 API 訪問。

雲計算的好處是什麼?

雲計算有很多好處,包括:

 

– 可擴展性:雲服務旨在實現可擴展性,因此您可以根據需求的變化輕鬆添加或刪除資源。

– 即用即付定價:使用雲計算,您只需為使用的資源付費。 無需前期投資。

– 靈活性:雲服務可以快速供應和發布,因此您可以快速試驗和創新。

– 可靠性:雲服務旨在提供高可用性和容錯能力。

– 全球覆蓋:雲服務可在全球多個地區使用,因此您可以將應用程序部署在離用戶更近的地方。

什麼是亞馬遜網絡服務 (AWS)?

Amazon Web Services (AWS) 是 Amazon.com 提供的一個全面的、不斷發展的雲計算平台。 AWS 提供範圍廣泛的服務,可用於在雲中構建和運行應用程序,包括計算、存儲、數據庫和網絡。

AWS 是一種按使用量付費的服務,因此您只需為使用的資源付費。 無需前期投資。 AWS 還提供免費服務層,可用於了解和試驗該平台。

本地與雲

內部部署與。 雲計算

另一個需要理解的重要概念是本地計算和雲計算之間的區別。 本地計算是指在您自己的服務器上本地存儲的應用程序和數據。 另一方面,雲計算是指存儲在遠程服務器上並通過互聯網訪問的應用程序和數據。

雲計算使您可以利用規模經濟和現收現付的定價模式。 使用本地計算,您必須在硬件和軟件方面進行大量前期投資,並且您還需要負責維護和升級您的基礎架構。

IaaS、PaaS 和 SaaS 之間有什麼區別?

雲服務主要分為三種類型:基礎架構即服務 (IaaS)、平台即服務 (PaaS) 和軟件即服務 (SaaS)。

 

IaaS的 是一種雲計算,可為用戶提供對存儲、計算和網絡資源的訪問。 IaaS 提供商管理基礎設施並為用戶提供自助服務平台來配置和管理資源。

 

PaaS的 是一種雲計算類型,它為用戶提供訪問用於開發、部署和管理應用程序的平台的權限。 PaaS 提供商管理基礎設施並提供可用於開發、部署和管理應用程序的平台。

 

SaaS的 是一種雲計算,可為用戶提供對軟件應用程序的訪問權限。 SaaS 提供商管理基礎架構並提供可供用戶使用的軟件應用程序。

軟件作為服務

AWS 的全球基礎設施

AWS 是一個全球雲計算平台,在全球 70 個地區擁有 22 多個可用區。 區域是相互隔離的地理區域,每個區域包含多個可用區。

可用區是設計為與同一區域中的其他可用區隔離的數據中心。 這確保瞭如果一個可用區出現故障,其他可用區將繼續運行。

AWS 上的開發人員工具

亞馬遜使用 API 調配和管理資源的調用。 AWS 命令​​行界面 (CLI) 是一種可用於管理 AWS 資源的工具。

AWS 管理控制台是一個基於 Web 的界面,可用於配置和管理資源。

AWS 還提供了一組 SDK,可用於開發在 AWS 上運行的應用程序。 支持的編程語言包括 Java、.NET、Node.js、PHP、Python 和 Ruby。

 

您可以通過多種不同的方式管理 AWS 的 API 調用:

 

– AWS 管理控制台:AWS 管理控制台是一個基於 Web 的界面,可用於調用 API。

 

– AWS 命令​​行界面 (CLI):AWS CLI 是一種可用於調用 API 的工具。 可以在 Linux、Windows 和 Mac OS 中運行調用。

 

– AWS 軟件開發工具包 (SDK):AWS SDK 可用於開發進行 API 調用的應用程序。 這些 SDK 可用於 Java、.NET、PHP、Node.js 和 Ruby。

– Amazon 簡單存儲服務 (S3):S3 提供

 

適用於 AWS 的 IDE:有多種不同的集成開發環境 (IDE) 可用於在 AWS 上開發應用程序。 Eclipse 是一種流行的開源 IDE,可用於開發 Java 應用程序。 Eclipse 可用於連接到 AWS 並進行 API 調用。Visual Studio 是 Microsoft 的一種流行 IDE,可用於開發 .NET 應用程序。 Visual Studio 可用於連接到 AWS 並進行 API 調用。

 

– AWS API 網關:AWS API 網關是一個 託管服務 可用於創建、發布和管理 API。

 

進行 API 調用時,您需要指定 HTTP 方法(例如 GET、POST 或 PUT)、路徑(例如 /users 或 /items)和一組標頭。 請求正文將包含您發送到 API 的數據。

 

來自 API 的響應將包含狀態代碼、標頭和正文。 狀態代碼將指示請求是否成功(例如 200 表示成功或 404 表示未找到)。 標頭將包含有關響應的信息,例如內容類型。 響應正文將包含從 API 返回的數據。

基礎架構即代碼 (IaC)

AWS 允許您使用基礎設施即代碼 (IaC) 來配置和管理資源。 IaC 是一種在代碼中表示基礎設施的方式。 這允許您使用代碼定義您的基礎架構,然後可以使用這些代碼來配置和管理資源。

 

IaC 是 AWS 的重要組成部分,因為它允許您:

– 自動配置和管理資源。

– 版本控制您的基礎設施。

– 模塊化您的基礎設施。

 

AWS 提供了幾種不同的方式來使用 IaC 來配置和管理資源:

 

– AWS CloudFormation 服務:CloudFormation 允許您使用以 JSON 或 YAML 編寫的模板來定義您的基礎設施。 然後可以使用這些模板來供應和管理資源。

 

– AWS 命令​​行界面 (CLI):AWS CLI 可用於使用 IaC 預置和管理資源。 AWS CLI 使用聲明性語法,允許您指定基礎設施的所需狀態。

 

– AWS SDK:AWS SDK 可用於使用 IaC 來配置和管理資源。 AWS 開發工具包使用命令式語法,允許您指定要執行的操作。

 

為了使 IaC 有效,了解 AWS 工作原理的基礎知識很重要。 這包括了解如何使用 API 來供應和管理資源。 了解 AWS 提供的不同服務以及如何使用它們也很重要。

 

AWS 雲開發工具包 (AWS CDK) 是一個工具包,允許您使用代碼定義您的基礎設施。 AWS CDK 使用聲明性語法,可以輕鬆定義您的基礎設施。 AWS CDK 適用於 Java、.NET 和 Python。

 

使用 AWS CDK 的好處包括:

– 使用 AWS CDK 很容易上手。

– AWS CDK 是開源的。

– AWS CDK 與其他 AWS 服務集成。

 

AWS CloudFormation 如何工作?

AWS CloudFormation 堆棧是作為一個單元創建和管理的資源集合。 堆棧可以包含任意數量的資源,包括 Amazon S3 存儲桶、Amazon SQS 隊列、Amazon DynamoDB 表和 Amazon EC2 實例。

 

堆棧由模板定義。 該模板是一個 JSON 或 YAML 文件,用於定義堆棧的參數、映射、條件、輸出和資源。

 

當您創建堆棧時,AWS CloudFormation 將按照資源在模板中定義的順序創建資源。 如果一個資源依賴於另一個資源,AWS CloudFormation 將等待創建依賴資源,然後再創建堆棧中的下一個資源。

 

AWS CloudFormation 還將按照資源在模板中定義的相反順序刪除資源。 這確保資源不會處於未定義狀態。

 

如果在 AWS CloudFormation 創建或刪除堆棧時發生錯誤,堆棧將回滾到之前的狀態。

 

什麼是 Amazon S3 存儲桶?

Amazon S3 存儲桶是文件的存儲位置。 Bucket可以存儲任何類型的文件,例如圖片、視頻、文檔等。 存儲桶被組織到文件夾中,類似於文件夾在您的計算機上的使用方式。

 

存儲桶中的文件可通過 URL 訪問。 文件的 URL 由存儲桶名稱和文件路徑組成。

 

什麼是亞馬遜 SQS?

Amazon Simple Queue Service (SQS) 是一種消息隊列服務。 消息隊列用於存儲需要由應用程序處理的消息。

 

SQS 使分離和擴展微服務、分佈式系統和無服務器應用程序變得容易。 SQS 可用於傳輸任何類型的消息,例如命令、通知或警報。

 

什麼是亞馬遜 DynamoDB?

Amazon DynamoDB 是一種快速、靈活的 NoSQL 數據庫服務,適用於需要在任何規模下保持一致的個位數毫秒延遲的所有應用程序。 它是一個完全託管的雲數據庫,支持文檔和鍵值數據模型。

 

DynamoDB 使開發人員能夠構建現代的無服務器應用程序,這些應用程序可以從小規模開始並擴展到全球範圍以支持數百萬用戶。

 

什麼是亞馬遜 EC2?

Amazon Elastic Compute Cloud (EC2) 是一種 Web 服務,可在雲中提供可調整大小的計算容量。 它旨在讓開發人員更輕鬆地進行網絡規模的雲計算。

 

EC2 提供了多種針對不同用例進行優化的實例類型。 這些實例可用於從運行 Web 服務器和應用程序服務器到運行大數據應用程序和遊戲服務器的一切。

 

EC2 還提供自動縮放和負載平衡等功能,使您可以根據需要輕鬆擴展或縮減應用程序。

 

什麼是 AWS Lambda?

AWS Lambda 是一種無服務器計算服務,讓您無需預置或管理服務器即可運行代碼。 Lambda 處理底層基礎設施的所有管理,因此您只需編寫代碼,讓 Lambda 處理其餘部分。

 

Lambda 是運行後端服務的絕佳選擇,例如 Web API、數據處理作業或 cron 作業。 Lambda 也是運行需要根據需求向上或向下擴展的應用程序的不錯選擇。

 

什麼是亞馬遜 API 網關?

Amazon API Gateway 是一種 Web 服務,可以輕鬆創建、發布、維護、監控和保護任何規模的 API。

 

API 網關處理接受和處理來自客戶端的請求所涉及的所有任務,包括流量管理、授權和訪問控制、監控和 API 版本管理。

 

API Gateway 還可用於創建公開來自其他 AWS 服務(例如 DynamoDB 或 SQS)的數據的 API。

 

什麼是亞馬遜 CloudFront?

Amazon CloudFront 是一種內容分發網絡 (CDN),可加快靜態和動態 Web 內容的分發,例如 HTML 頁面、圖像、視頻和 JavaScript 文件。

 

CloudFront 通過稱為邊緣位置的全球數據中心網絡交付您的內容。 當用戶請求您的內容時,CloudFront 會將請求路由到最能提供內容的邊緣站點。

 

如果內容已緩存在邊緣位置,CloudFront 會立即提供。 如果內容未緩存在邊緣位置,CloudFront 會從源(存儲原始文件的 Web 服務器)檢索它並將其緩存在邊緣位置。

 

什麼是亞馬遜 Route 53?

Amazon Route 53 是一種可擴展且高度可用的域名系統 (DNS) 服務。

 

Route 53 根據多種因素將用戶請求路由到您的應用程序,包括請求的內容、用戶的地理位置以及您的應用程序的狀態。

 

Route 53 還提供健康檢查以監控應用程序的健康狀況,並自動將流量從不健康的端點路由出去。

 

什麼是亞馬遜 S3?

Amazon Simple Storage Service (S3) 是一種對象存儲服務,可提供行業領先的可擴展性、數據可用性、安全性和性能。

 

S3 是存儲您需要經常訪問的數據(例如網站圖像或視頻)的絕佳選擇。 S3 還可以輕鬆存儲和檢索您需要與其他人或應用程序共享的數據。

 

什麼是亞馬遜 EFS?

Amazon Elastic File System (EFS) 是一種用於 Amazon Elastic Compute Cloud (EC2) 實例的文件存儲服務。

 

EFS 提供了一種簡單、可擴展且經濟高效的方式來管理雲中的文件。 EFS 旨在與 EC2 實例一起使用,並提供高可用性和持久性等功能。

 

什麼是亞馬遜冰川?

Amazon Glacier 是一種安全、持久且低成本的數據歸檔存儲服務。

 

Glacier 是長期存儲不需要經常訪問的數據的不錯選擇。 存儲在 Glacier 中的數據可能需要幾個小時才能檢索,因此它不適合需要實時訪問數據的應用程序。

 

什麼是 AWS 存儲網關?

AWS Storage Gateway 是一種混合存儲服務,可讓您在本地訪問幾乎無限的雲存儲。

 

Storage Gateway 將您的本地應用程序連接到雲,從而可以輕鬆地在雲中存儲和檢索數據。 Storage Gateway 可與各種存儲設備一起使用,例如硬盤驅動器、磁帶和 SSD。

 

什麼是 AWS 雪球?

AWS Snowball 是一種 PB 級數據傳輸服務,它使用物理存儲設備將大量數據傳入和傳出 Amazon Simple Storage Service (S3)。

 

當您需要高吞吐量或低延遲時,或者當您想要避免 Internet 帶寬成本時,Snowball 是傳輸數據的不錯選擇。

 

什麼是亞馬遜雲搜索?

Amazon CloudSearch 是一種完全託管的搜索服務,可讓您輕鬆地為您的網站或應用程序設置、管理和擴展搜索引擎。

 

CloudSearch 支持廣泛的搜索功能,例如自動完成、拼寫更正和通配符搜索。 CloudSearch 易於使用,並提供與您的用戶高度相關的結果。

 

什麼是亞馬遜彈性搜索服務?

Amazon Elasticsearch Service (Amazon ES) 是一項託管服務,可讓您輕鬆地在 Amazon Web Services (AWS) 雲中部署、操作和擴展 Elasticsearch。

 

Elasticsearch 是一種流行的開源搜索和分析引擎,它提供了一組強大的功能來索引、搜索和分析數據。 Amazon ES 讓您可以輕鬆設置、擴展和監控您的 Elasticsearch 集群。

 

什麼是亞馬遜 Kinesis?

Amazon Kinesis 是一種基於雲的服務,可以輕鬆收集、處理和分析實時流數據。

 

Kinesis 可用於廣泛的應用程序,例如處理日誌文件、監控社交媒體活動以及為實時分析應用程序提供支持。 Kinesis 使實時收集和處理數據變得容易,因此您可以快速獲得見解。

 

什麼是亞馬遜紅移?

Amazon Redshift 是一個快速、可擴展的數據倉庫,可以輕鬆存儲和分析數據。

 

Redshift 是數據倉庫、商業智能和分析應用程序的不錯選擇。 Redshift 易於使用並提供快速的性能。

 

什麼是 AWS 數據管道?

AWS Data Pipeline 是一種基於雲的服務,可以輕鬆地在不同的 AWS 服務之間傳輸數據。

 

Data Pipeline 可用於在 Amazon S3、Amazon EMR、Amazon DynamoDB 和 Amazon RDS 之間移動數據。 Data Pipeline 易於使用,並提供了一種在雲中管理數據的簡單方法。

 

什麼是 AWS 導入/導出?

AWS Import/Export 是一種數據遷移服務,可以輕鬆地將大量數據傳入和傳出 Amazon Web Services (AWS) 雲。

 

Import/Export 可用於在 Amazon S3、Amazon EBS、Amazon Glacier 和您的本地存儲設備之間移動數據。 導入/導出快速可靠,可用於快速高效地傳輸大量數據。

 

什麼是 AWS OpsWorks?

AWS OpsWorks 是一種基於雲的服務,可以輕鬆地在 Amazon Web Services (AWS) 雲中部署和管理應用程序。

 

OpsWorks 可用於管理各種規模的應用程序,從小型網站到大型 Web 應用程序。 OpsWorks 易於使用,並提供了一種在雲中管理應用程序的簡單方法。

 

什麼是亞馬遜 CloudWatch?

Amazon CloudWatch 是一項基於雲的服務,可讓您輕鬆監控 Amazon Web Services (AWS) 資源。

 

CloudWatch 可用於監控 Amazon EC2 實例、Amazon DynamoDB 表和 Amazon RDS 數據庫。 CloudWatch 易於使用,並提供了一種監控 AWS 資源的簡單方法。

 

什麼是亞馬遜機器學習?

Amazon Machine Learning 是一項基於雲的服務,可以輕鬆構建、訓練和部署機器學習模型。

 

機器學習是一種流行的技術,用於構建可用於預測未來事件的預測模型。 Amazon Machine Learning 易於使用,並提供了一種構建、訓練和部署機器學習模型的簡單方法。

 

什麼是亞馬遜簡單通知服務?

Amazon Simple Notification Service (Amazon SNS) 是一種基於雲的服務,可以輕鬆發送和接收通知。

 

SNS 可用於將消息發送到 Amazon SQS 隊列、Amazon S3 存儲桶或電子郵件地址。 SNS 易於使用,並提供了一種發送和接收通知的簡單方法。

 

什麼是亞馬遜簡單工作流服務?

Amazon Simple Workflow Service (Amazon SWF) 是一種基於雲的服務,可以輕鬆構建、運行和擴展後台作業。

 

SWF 可用於處理圖像、轉碼視頻文件、索引文檔和運行機器學習算法。 SWF 易於使用,並提供了一種運行後台作業的簡單方法。

 

什麼是 Amazon Elastic MapReduce?

Amazon Elastic MapReduce (Amazon EMR) 是一種基於雲的服務,可以輕鬆處理大數據。

 

EMR 可用於在 Amazon EC2 實例上運行 Apache Hadoop、Apache Spark 和 Presto。 EMR 易於使用,並提供了一種處理大數據的簡單方法。

架構完善的基礎設施的 AWS 概念

AWS 架構良好的基礎設施概念是一組用於在 Amazon Web Services 上構建和運行應用程序的指南。

 

架構完善的框架可幫助您決定如何在 AWS 上設計、部署和操作您的應用程序。 架構完善的框架基於五個支柱:性能、安全性、可靠性、成本優化和卓越運營。

 

性能支柱可幫助您設計高性能的應用程序。 安全支柱可幫助您保護您的應用程序免受安全威脅。 可靠性支柱可幫助您設計具有高可用性的應用程序。 成本優化支柱可幫助您優化 AWS 成本。 卓越運營支柱可幫助您有效地運營您的應用程序。

 

當您在 AWS 上設計和運行您的應用程序時,請務必考慮架構良好的框架的所有五個支柱。

 

忽略任何一個支柱都可能導致未來出現問題。 例如,如果您忽略安全支柱,您的應用程序可能容易受到攻擊。 或者,如果您忽略成本優化支柱,您的 AWS 賬單可能會比需要的高。

 

架構完善的框架是開始使用 AWS 的絕佳方式。 它提供了一組指南,可以幫助您決定如何在 AWS 上設計、部署和操作您的應用程序。

 

如果您是 AWS 的新手,我建議您從架構良好的框架開始。 它將幫助您以正確的方式開始並避免一些常見的錯誤。

AWS 上的安全性

AWS 與客戶共同承擔維護安全性和合規性的責任。 AWS 負責保護客戶用來構建和運行其應用程序的底層基礎設施。 客戶負責保護他們放在 AWS 上的應用程序和數據。

 

AWS 提供了一組可用於保護您的應用程序和數據的工具和服務。 這些工具和服務包括 Amazon Virtual Private Cloud (Amazon VPC)、Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Simple Storage Service (Amazon S3) 和 AWS Identity and Access Management (IAM)。

 

AWS 承擔的職責包括:

– 數據中心的物理安全

- 網絡安全

– 主機安全

– 應用安全

 

客戶負責:

– 保護他們的應用程序和數據

– 管理用戶對 AWS 資源的訪問

– 監控威脅

結論

AWS 是在雲中運行應用程序的絕佳方式。 它易於使用,並提供了一種運行後台作業的簡單方法。

 

AWS 是處理大數據的好方法。 它易於使用,並提供了一種處理大數據的簡單方法。

 

架構完善的框架是開始使用 AWS 的絕佳方式。 它提供了一組指南,可以幫助您決定如何在 AWS 上設計、部署和操作您的應用程序。

 

如果您是 AWS 的新手,我建議您從架構良好的框架開始。 它將幫助您正確起步並避免在基礎設施方面犯下代價高昂的錯誤。