2016年11月21日 星期一

AWS Associate SysOps準備(第五天)

Glacier

Glacier 除了 IAM管理資源外,還有一套管理方式(文件庫存取政策)

如何恢復存檔在 Amazon Glacier 中的物件?
要恢復存放在 Amazon Glacier 中的 Amazon S3 資料,您需要使用 Amazon S3 API 或 Amazon S3 管理主控台提出恢復請求。恢復請求通常會在 3 到 5 小時內完成。恢復請求會在 RRS 中建立臨時資料複本,同時在 Amazon Glacier 中完整保留已存檔資料。您可以以天為單位指定將臨時複本存放在 RRS 上的時間。然後,您可以透過 Amazon S3 GET 從 RRS 請求存取已存檔物件的臨時複本



IAM


常見問答集

什麼是 AWS Identity and Access Management (IAM)?
您可以使用 AWS IAM 對存取 AWS 資源的個人或群組進行安全地控管。您可以建立和管理使用者身分 (「IAM 使用者」),並授與這些 IAM 使用者存取資源的許可。也可以將許可授與 AWS 以外的使用者 (聯合身分使用者)。

  • 管理 IAM 使用者和其存取權:您可以在 IAM 的身分管理系統中建立使用者,為他們指派個別安全登入資料 (例如存取金鑰、密碼和多重驗證裝置) 或請求臨時安全登入資料,還有為使用者提供 AWS 服務和資源的存取權。您可以指定許可以控制使用者可執行的操作。
  • 管理聯合身分使用者的存取權:您可以為在公司目錄中管理的使用者請求包含可設定有效期限的安全登入資料,讓員工和應用程式可以安全存取 AWS 帳戶中的資源,而不必為他們建立 IAM 使用者帳戶。您可以指定這些安全登入資料的許可,以控制使用者可執行的操作。

IAM 使用者可以擁有哪些安全登入資料?
IAM 使用者可以將 AWS 支援的登入資料隨意組合使用,例如,AWS 存取金鑰、X.509 憑證、SSH 金鑰、Web 應用程式登入密碼或 MFA 裝置。

如何將 IAM 政策結合 Amazon S3、Amazon SQS、Amazon SNS 和 AWS KMS 以資源為基礎的政策一起評估?
IAM 政策是與服務以資源為基礎的政策一起評估。當任何類型的政策授與存取 (沒有直接拒絕) 時,則允許此動作。有關政策評估邏輯的更多資訊,請參閱IAM Policy Evaluation Logic

不要使用root account做事,透過IAM Role or Identity providers

AWS MFA 如何運作?
AWS MFA 使用身份驗證裝置連續產生一次性使用的隨機六位數身份驗證代碼。使用 AWS MFA 裝置進行驗證主要有兩種方式:
  • AWS 管理主控台使用者:當啟用 MFA 的使用者登入 AWS 網站時,系統會提示他們提供使用者名稱和密碼 (第一重關卡 – 他們知道的資訊),以及來自其 AWS MFA 裝置的身份驗證代碼 (第二重關卡 – 他們擁有的資訊)。需要登入的所有 AWS 網站 (像是 AWS 管理主控台) 都可完整支援 AWS MFA。您也可以將 AWS MFA 與 Amazon S3 Secure Delete 搭配使用,為 Amazon S3 儲存版本增加額外的保護。
  • AWS API 使用者:您可以在 IAM 政策中新增 MFA 限制,以強制執行 MFA 身份驗證。要存取以此方式保護的 API 和資源,開發人員可以請求臨時安全登入資料,並在其 AWS Security Token Service (STS) API 請求 (發出臨時安全登入資料的服務) 中傳遞選用的 MFA 參數。經 MFA 驗證的臨時安全登入資料可用來呼叫 MFA 保護的 API 和資源。

IAM 不能使用相同URL Login id 不同密碼做登入
Whenever the organization is creating an IAM user, there should be a unique ID for each user. It is not possible to have the same login ID for multiple users. The names of users, groups, roles, instance profiles must be alphanumeric, including the following common characters: plus (+), equal (=), comma (,), period (.), at (@), and dash (-).

Lambda


常見問答集

AWS Lambda 是一種運算服務,可執行程式碼以回應事件,並且自動為您管理基礎運算資源

可以使用 AWS Lambda 透過自訂邏輯來擴展其他 AWS 服務,或者自己建立以 AWS 的擴展性、效能和安全性執行的後端服務。

AWS Lambda 將程式碼儲存在 Amazon S3 中並以靜態加密。AWS Lambda 在使用您的程式碼時執行額外的完整性檢查。

上傳的內容不得大於 50 MB (已壓縮)。

何時應該使用 AWS Lambda?何時又該使用 Amazon EC2?

AWS Lambda 是否會重複使用函數執行個體?
為了改善效能,AWS Lambda 可以選擇保留您的函數執行個體,讓它重複使用於後續請求,而不是建立一個新副本。您的程式碼不應假設此操作會經常發生。

AWS Lambda 函數提供暫存空間,應該怎麼做?
每個 Lambda 函數在自己的 /tmp 目錄中都有 500 MB 的非持久性磁碟空間。

是否可在 AWS Lambda 函數程式碼中使用執行緒和程序?
是。AWS Lambda 可讓您使用一般的語言和作業系統功能,例如建立額外的執行緒和程序。分配給 Lambda 函數的資源 (包括記憶體、執行時間、磁碟和網路的使用),都必須透過其使用的所有執行緒/程序進行共享。

AWS Lambda 函數程式碼有哪些限制?
Lambda 嘗試盡可能不對一般的語言和作業系統活動施加限制,但仍有少數活動是停用的:入站網路連線被 AWS Lambda 封鎖而僅支援 TCP/IP 通訊端對外連線,且 ptrace (偵錯) 系統呼叫受到限制。TCP 埠 25 的流量同樣也受到限制,以當做反垃圾郵件的措施。

Lambda 會自動替您監控 Lambda 函數,透過 Amazon CloudWatch 即時報告指標,包括請求總數、延遲、錯誤率和節流請求。您可以透過 Amazon CloudWatch 主控台或 AWS Lambda 主控台檢視每個 Lambda 函數的統計資料。您還可以在 Lambda 函數中呼叫第三方監控 API。

 Lambda 函數可以執行多久的時間?
對 AWS Lambda 進行的所有呼叫必須在 300 秒內完成執行。預設逾時為 3 秒,但您可以將逾時設定為 1 到 300 秒之間的任何值。

一次可執行 AWS Lambda 函數的數量有沒有限制?
否。AWS Lambda 設計成能夠平行執行大量的函數執行個體。不過,AWS Lambda 對於每個區域的每個帳戶設有 100 個並行執行的預設安全限制。

一 Lambda 函數是否可以存取多個 VPC?
否。Lambda 函數只能存取單一 VPC。如果指定多個子網路,它們必須位於同一個 VPC 中。您可以讓多個 VPC 建立對等關係以連接到其他 VPC。

VPC 中的 Lambda 函數也能夠存取網際網路和 AWS 服務終端節點嗎?
設定要存取特定 VPC 中資源的 Lambda 函數,預設無法存取網際網路。如果您需要存取外部終端節點,則必須在 VPC 中建立 NAT 以轉送這個流量,並設定安全群組允許這個傳出流量。

Lambda 用來執行函數的 JVM 環境為何?
Lambda 提供 Amazon Linux 的 openjdk 1.8 組建。

Lambda Monitor
Lambda診斷

OpsWorks

介紹
is an application management service that helps you automate operational tasks like code deployment, software configurations, package installations etc, using Chef.
AWS OpsWorks 是靈活的組態管理解決方案,它提供可針對應用程式及其支援基礎設施建立模型和管理的自動化工具。AWS OpsWorks 使管理完整的應用程式生命週期更加輕鬆,包括資源佈建、設定管理、應用程式部署、軟體更新、監控和存取控制

效果
  • stack
  • layer
  • 1 or more laters in the stack
  • an instance must be assigned to at least 1 layer


Relation Database Servicce


常見問題集

AZ級別服務

幾種可以使用RDS notification 的動作

查每個DB在RDS的限制
Oracle, MySQL,MariaDB能擴充到6T,而SQL Server並不能擴充容量,一開始就需先考量未來的量,並且express板只有300G,最大能擴充到4T

mssql 的限制

Aurora,可擴充至64T,會自動備份六份副本,失去兩本以內,不影響寫入,失去三本以內,不影響讀取性

可以在一個資料庫執行個體內執行多少個資料庫或結構描述?
  • 適用於 Amazon Aurora 的 RDS:軟體沒有強制限制
  • 適用於 MySQL 的 RDS:軟體沒有強制限制
  • 適用於 MariaDB 的 RDS:軟體沒有強制限制
  • 適用於 Oracle 的 RDS:每個執行個體 1 個資料庫;軟體對於每個資料庫的結構描述數量沒有強制限制
  • 適用於 SQL Server 的 RDS:每個執行個體 30 個資料庫
  • 適用於 PostgreSQL 的 RDS:軟體沒有強制限制
資料匯入 Amazon RDS?
有幾個簡單的方式可將資料匯入 Amazon RDS,例如,對於 MySQL 使用 mysqldump 或 mysqlimport 公用程式;對於 Oracle 使用 Data Pump、匯入/匯出或 SQL Loader;對於 SQL Server 使用 Import/Export 精靈或 Bulk Copy Program (BCP);或對 PostgreSQL 使用 pg_dump。有關資料匯入和匯出的更多資訊,請參閱 Data Import Guide for MySQL,或 Data Import Guide for Oracle,或 Data Import Guide for SQL Server,或 Data Import Guide for PostgreSQL

維護時段?我的資料庫執行個體在軟體維護期間是否可用?
在經請求或必要的情況下,您可以利用 Amazon RDS 維護時段控制資料庫執行個體修改 (例如,擴展資料庫執行個體類別) 及軟體修補的發生。如果在指定的星期排定維護事件,則將在您指定的維護時段期間的某個時間點啟動和完成維護。維護時段的持續時間為 30 分鐘。
唯一需要 Amazon RDS 將資料庫執行個體離線的情況是擴展運算操作 (從開始到完成通常只需幾分鐘) 或要求軟體修補時。只會針對與安全性和持久性相關的修補程式自動排定必要的修補。這種修補不常發生 (通常幾個月才一次),並且幾乎不需要太長的維護時段。如果您建立資料庫執行個體時未指定偏好的每週維護時段,則會指派 30 分鐘的預設值。

查詢的執行速度有點緩慢,該怎麼辦?
如果是生產資料庫,建議您啟用增強型監控,這可讓您存取超過 50 個 CPU、記憶體、檔案系統和磁碟 I/O 指標。您可以依執行個體啟用這些功能,也可以選擇間隔 (最少可到 1 秒)。較高的 CPU 使用率會降低查詢效能,因此您可以考慮擴展資料庫執行個體的等級。如需監控資料庫執行個體的詳細資訊,請參考 Amazon RDS User Guide
如果您使用的是 MySQL 或 MariaDB,可以存取資料庫的慢速查詢日誌,確定是否有執行速度緩慢的 SQL 查詢,如果有的話,查明每個查詢的效能特性為何。您可以設定 "slow_query_log" 資料庫參數並查詢 mysql.slow_log 表,以檢閱執行速度緩慢的 SQL 查詢。請參閱 Amazon RDS User Guide 進一步了解。
如果您使用的是 Oracle,可以使用 Oracle 追蹤檔案資料以識別緩慢查詢。有關存取追蹤檔案資料的更多資訊,請參閱 Amazon RDS User Guide
如果使用的是 SQL Server,您可以使用用戶端 SQL Server 追蹤功能以識別緩慢查詢。有關存取伺服器端追蹤檔案資料的資訊,請參閱 Amazon RDS User Guide

資料庫執行個體在擴展期間是否保持可用?
您可以增加分配給資料庫執行個體的儲存容量,同時保持資料庫執行個體的可用性。不過,當您決定擴展或縮小資料庫執行個體可用的運算資源,在修改資料庫執行個體類別時將暫時無法使用資料庫。

選擇 Amazon RDS 儲存類型?
選擇最適合您工作負載的儲存類型。
  • 高效能 OLTP 工作負載:Amazon RDS 佈建 IOPS (SSD) 儲存
  • 具有適中 I/O 要求的資料庫工作負載:Amazon RDS 一般用途 (SSD) 儲存
  • 具有低頻率 I/O 的小型資料庫工作負載:Amazon RDS 磁帶儲存

不可以透過RDS Log 所觀看的mysql log

RDS的安全性更新會強迫自動執行

自動備份與快照的差異

關閉 RDS Event, 將console內 enabled radio button 選擇為nO

異地同步備份部署和僅供讀取複本


查一下 Multi-AZ的好處

查Multi-AZ備份的流程(Order of events during maintenance window)

Amazon RDS 会自动切换到另一个可用区中的备用副本。完成故障转移所用的时间取决于在主数据库实例变为不可用时的数据库活动和其他条件。
故障转移机制自动更改数据库实例的 DNS 记录,使其指向备用数据库实例。因此,您需要重新建立与数据库实例之间的所有现有连接。

啟動轉移的情境
高可用性

get notifications whn someone modifies the security group of RDS

ReplicaLag Metric 用來檢查 Primary RDS Instance 與 read replica間的差異

Read Replica 與  Multiple AZ的 資料庫差異及備份時的使用方式

查各版本db在RDS的限制與唯讀副本數

可以做唯讀副本中的唯讀副本

將 RDS 執行個體從單一可用區轉換到多可用區域時會發生什麼情況?
對於 RDS MySQL、MariaDB、PostgreSQL 和 Oracle 資料庫引擎,當您選擇將 RDS 執行個體從單一可用區轉換到多可用區域時,會發生下列情況:
  • 拍攝主執行個體的快照
  • 從快照的另一個可用區域建立新的備用執行個體
  • 在主執行個體和備用執行個體之間設定同步複寫
因此,當執行個體從單一可用區轉換到多可用區域時,應該不會發生停機時間。


導致 Amazon RDS 將容錯移轉啟動到備用副本?
Amazon RDS 可偵測異地同步備份部署中最常見的故障並自動從中恢復,讓您在無管理介入的情況下盡快恢復資料庫操作。如果發生以下任何一種情況,Amazon RDS 將自動執行容錯移轉:
  • 主可用區域的可用性受損
  • 主可用區域的網路連線能力受損
  • 主可用區域的運算單位故障
  • 主可用區域的儲存故障

RDS唯讀副本

Amazon RDS for MySQL 和 PostgreSQL 支援僅供讀取複本。與異地同步備份部署不同,這些引擎的僅供讀取複本使用各自內建的複寫技術,且各有其優點和限制。
Amazon RDS for MariaDB:自動備份必須啟用且維持啟用狀態,僅供讀取複本才能運作。

每個db至多五份副本,做Read Replica的前提是必須啟用backup功能

用途

舒緩Primary DB 的壓力,若事前有啟用multi-az,則跨az快照時,會對secondary db做快照,而不影響Primary db, 若無啟用Read Replica,則會對Primary db快照,影響Primary db效能

使用方式
創建後,會產生新的DNS endpoint,可以使用該dns做連結


問:是否可以將僅供讀取複本提升成「獨立」資料庫執行個體?
是。有關詳細資訊,請參閱 Amazon RDS User Guide

Mulit-az 與 replica間的差異
在於備份寫入的時候,前者為同步寫入,後者為異步寫入

若將主節點刪除後,唯讀副本的情況

RDS 維護步驟

RDS監控

監控RDS的兩種方式,一種是monitor RDS by Metrics, 一種是 monitor RDS by events.

前者 metric 的種類

monitor RDS by events 可透過Events Subscription 來做推播消息

考試要注意的地方

Amazon RDS for Oracle 可使用哪些類型的授權選項?
Amazon RDS for Oracle 提供兩種授權使用選項:
  • 使用自有授權 (BYOL):在這種授權模式下,您可以使用自己現有的 Oracle 資料庫授權在 Amazon RDS 上執行 Oracle 部署。要以 BYOL 模式執行資料庫執行個體,您必須具有與想要執行的資料庫執行個體類別和 Oracle 資料庫版本對應的 Oracle 資料庫授權 (及軟體更新授權和支援)。您也必須遵循 Oracle 對雲端運算環境中授權 Oracle 資料庫軟體的政策。資料庫執行個體駐留在 Amazon EC2 環境中,Oracle 對於 Amazon EC2 的授權政策位於此處
  • 已包含授權:在「已包含授權」服務模式中,您不必另外購買 Oracle 授權;Oracle 資料庫軟體已由 AWS 提供授權。「已包含授權」定價中包含軟體、基本硬體資源,以及 Amazon RDS 管理功能。

RDS的Log
不能從console 看到mysql 的transaction log

增強型監控


RDS 增強型監控?
答:RDS 增強型監控讓您更深入地看到 RDS 執行個體的運作狀態。只需開啟 RDS 執行個體的 "Enhanced Monitoring" 選項並設定間隔,增強型監控就會依據定義的間隔來收集重要的作業系統指標和處理資訊。增強型監控支援所有 RDS 資料庫引擎。增強型監控支援每種執行個體類型,但 t1.micro 和 m1.small 除外。

安全性


監控


使用Event notification 監聽DB Security group

沒有留言:

張貼留言