Upgrade to Pro — share decks privately, control downloads, hide ads and more …

aws workshop for beginner

aws workshop for beginner

Ching Yi Chan

February 04, 2014
Tweet

More Decks by Ching Yi Chan

Other Decks in How-to & DIY

Transcript

  1. AWS 服務⼊入⾨門
    WFS

    View Slide

  2. • AWS 的演變

    • AWS 服務與計費模型 

    Lab:導覽計費⾴頁⾯面

    Lab:申請 AWS 帳號


    • AWS 常⽤用服務 EC2、S3

    • AWS Web Console 

    Lab:導覽各服務與 Region
    課程⼤大綱(1)

    View Slide

  3. • Simple Storage Service (Amazon S3) 簡介

    Lab:S3 console 主要功能
    • Elastic Compute Cloud (Amazon EC2) 簡介

    Lab:Web Console

    Lab:設定 EC2 Command Line Tool

    Lab:簡單 Web Server 建置


    • 認識 Security Group、KeyPair、AMI

    • 認識 Spot Instance 與 Reserved Instance
    課程⼤大綱(2)

    View Slide

  4. !
    • 以 Linux VM 為例,設定 public key 認證

    • putty for windows user

    • authorized_keys file for unix-like user


    課程⼤大綱(3)

    View Slide

  5. • 使⽤用 IAM 帳號管理服務

    Lab:IAM 帳號設定


    • 使⽤用 AWS Command Line Tool

    Lab:AWS Cli 安裝
    課程⼤大綱(4)

    View Slide

  6. • http://aws.amazon.com/pricing/
    AWS 計費導覽⾴頁

    View Slide

  7. • 每⼀一個獨⽴立的 AWS 服務都會有 pricing ⾴頁⾯面

    • pricing 的實際⺫⽬目標是以『使⽤用的資源』類型各
    別計算。不同的資源計算的單位、單價各有不
    同。

    • 別忘了使⽤用 API Request 是需收費的『資源』,
    計使⽤用次數與傳輸量(http request 與 http
    response 也是有流量的)。
    AWS 服務與計費模型(1)

    View Slide

  8. • 不同的地理區域(Region)計價不同(各地建置
    機房的成本不同)

    • http://aws.amazon.com/about-aws/
    globalinfrastructure/
    AWS 服務與計費模型(2)

    View Slide

  9. • 提供『價格計算器』讓你試算

    http://aws.amazon.com/calculator
    AWS 服務與計費模型(3)

    View Slide

  10. • 免費套餐僅適⽤用於新的 AWS 客⼾戶,可在註冊
    AWS 後的 12 ⽉月內均可使⽤用。

    • 當免費試⽤用過期或者使⽤用量超過了免費試⽤用套
    餐限額,需依標準費率⽀支付超額的費⽤用。

    • 免費使⽤用量每個⽉月計算⼀一次並⾃自動計⼊入到賬單
    中,免費使⽤用量不能累計。

    • 本課程以 S3 與 EC2 服務為主,它們亦有提免
    費額度。
    新帳號免費套餐 (1)

    View Slide

  11. 新帳號免費套餐 (2)

    View Slide

  12. 新帳號免費套餐 (3)

    View Slide

  13. • 準備事項

    • 信⽤用卡⼀一張

    • 可收發信件的 Email

    • 可⽴立即接聽的電話

    • 帳單英⽂文地址

    (可利⽤用中華郵政地址中翻英)
    AWS 帳號申請(1)
    -"#

    View Slide

  14. AWS 帳號申請(2)
    -"#

    View Slide

  15. AWS 帳號申請(3)
    -"#

    View Slide

  16. AWS 帳號申請(4)
    -"#

    View Slide

  17. AWS 帳號申請(5)
    -"#

    View Slide

  18. AWS 帳號申請(6)
    -"#

    View Slide

  19. AWS 帳號申請(7)
    -"#

    View Slide

  20. AWS 帳號申請(8)
    -"#

    View Slide

  21. AWS 帳號申請(9)
    -"#

    View Slide

  22. AWS 帳號申請(10)
    -"#

    View Slide

  23. AWS 帳號申請(11)
    -"#

    View Slide

  24. AWS 帳號申請(12)
    -"#
    點選 Continue 完成帳號啟⽤用

    View Slide

  25. AWS 帳號申請(13)
    -"#

    View Slide

  26. AWS 帳號申請(14)
    -"#

    View Slide

  27. AWS 帳號申請(15)
    -"#

    View Slide

  28. Elastic Compute Cloud
    AWS 常⽤用服務 EC2

    View Slide

  29. • http://aws.amazon.com/ec2/

    • EC2 服務簡⽽而⾔言之就是『虛擬機』與相關的週
    邊服務的集合。

    • Elastic IP:提供 IP 綁定服務

    • Elastic Loading Balance:負載平衡器

    • CloudWatch:提供監控資料與事件觸發

    • AutoScaling:動態管理 EC2 Instance 數量的機制
    EC2 服務

    View Slide

  30. • http://aws.amazon.com/pricing/ec2/

    • 機器(instance)使⽤用以⼩小時計費,不滿⼀一⼩小時
    算⼀一⼩小時(所以,關機⼀一次就是⼀一⼩小時的
    錢)。機器使⽤用的存儲空間,EBS 每⽉月使⽤用容量
    (GB)收費,並額外對 Disk IO 計次收費,固
    定 IP(EIP)綁定 Instance 時不收費,閒置時收
    費。

    • 網路的流出以每 GB 量收費,但流出的⺫⽬目的不
    同,計費不同。流出 AWS 之外的地區單價最
    ⾼高,AWS 之內對傳次之,同帳號同區,依不同
    服務可免費,或使⽤用較便宜的計價.
    EC2 計費模型(1)

    View Slide

  31. • 在 Pay As You Go 的基本模型下,只要你

    • 關閉主機,就停⽌止 Instance 計費

    • 取消 EBS 的⽀支配,就停⽌止 EBS 的計費

    • 釋放 EIP 的佔⽤用,就停⽌止閒置 EIP 的計費

    • Pay As You Go 的優點即為付費的時間單位遠⽐比
    傳統的以『⽉月份』為單位的合約⼩小,但換算成
    『⽉月份』時,總價也許不是優勢。
    EC2 計費模型(2)

    View Slide

  32. EC2 計費模型
    Elastic & PAY AS YOU GO
    system loading
    date-time

    View Slide

  33. EC2 計費模型
    Elastic & PAY AS YOU GO
    system loading
    date-time
    固定運算容量的
    合約,依可預估
    的極值事先採購

    View Slide

  34. EC2 計費模型
    Elastic & PAY AS YOU GO
    system loading
    date-time
    依系統負責需求,決定所需運算量的模式。

    View Slide

  35. • On Demand Instances

    以⼩小時計費。使⽤用成本較⾼高,但若是有緊急需
    求時,有隨時建⽴立、⾺馬上使⽤用的便利性存在。

    • Reserved Instances

    ⻑⾧長租型的 Instances,預付⼀一筆使⽤用期限(⼀一年
    或三年)的約合,將 On Demand Instances 的價
    格換成另⼀一種等級。換句話說,付了這筆之後
    的每⼩小時計費是⽐比便宜的價⺫⽬目表。
    EC2 Instance 類型(1)

    View Slide

  36. • Spot Instances

    AWS 將『閒置』沒有⼈人使⽤用的機器開放出來
    『競標』。使⽤用的不是複雜的競標機制,單純
    填寫⼀一個價格,若此價格有機器可以⽤用,你就
    能使⽤用。當市場價格已⾼高於你當出的出價時,
    AWS 會回收 Instances 供更⾼高出價者使⽤用。

    • 使⽤用 Spot Instances 常被⽤用在進⾏行『運算』的事
    項,機器被回收時,只要針對整體結果缺少的
    部分進⾏行『重算』。(前提是軟體架構設計要
    能⽀支援這件事)

    EC2 Instance 類型(2)

    View Slide

  37. • 以價格為導向的 Region 選擇

    參考 pricing ⾴頁⾯面⾃自然會有結論,⻑⾧長久以來是規
    模最⼤大的點較省錢(US-EAST)

    • 在價格的前提下,應注意蒐集各區的『故障』
    記錄。將 EC2 Region 就想像成 IDC 機房,也是
    有⼈人去維運的,值得考慮各種故障因素。天災
    (冬天的暴雪)、設備故障(電⼒力設備過載,
    無法開出新的 Instance)、⼈人為失誤。
    EC2 Region 的選擇(1)

    View Slide

  38. • 以網路速度為導向的 Region 選擇

    http://www.cloudping.info/
    EC2 Region 的選擇(2)

    View Slide

  39. • 以『 』為導向的 Region 選擇,留⽩白表⽰示
    有各種可能。

    • 例如:你的網路會不會經過『國家級特殊的防
    ⽕火牆』。它可能關係各別國家政策或是宗教信
    仰對於內容控管的反映。

    • 例如:你的資料是否有法律或合約載明的區域
    限制。

    • 例如:『經驗』,這是⼀一種歸納法,雖然不⾒見
    得科學,但有時挺有⽤用的。
    EC2 Region 的選擇(3)

    View Slide

  40. • 實在太多 Instance Type 該如何選?
    EC2 Instance Type (1)

    View Slide

  41. • 任何的建議都⽐比不上 benchmark,無論⽤用商⽤用⼯工
    具、Open Source ⼯工具,甚⾄至是簡單的 log 訊息
    記錄效能數據,都有助於你了解你的程式在
    EC2 上的執⾏行效能。

    • 有了數據後,你可以知道你的程式『慢/快』
    在哪裡。針對慢的部分,有計劃改寫嗎?或是
    再換更⾼高級的 Instance Type?⼀一直換 Instance
    Type 換到頂了該如何?還是得認真⾯面對程式效
    能不佳的問題!太吃 CPU?太吃 Disk IO?太吃
    RAM?終極⽅方法還是得做平⽔水擴充的架構。
    EC2 Instance Type (2)

    View Slide

  42. • 使⽤用簡易的 CloudWatch 瞭解機器使⽤用狀態
    EC2 Instance Type (3)

    View Slide

  43. • 別試著把原本的服務直接搬上 EC2。Instance 遠
    ⽐比你想像中的慢(即使你可以選更貴的
    Instance)。Disk IO 即網路 IO,所以 Disk IO 重
    的服務也⽐比你想像中的慢(可以加開 IO 速度保
    證,但 EBS 的收費會不同)
    EC2 Instance Type (4)

    View Slide

  44. EC2 in Action
    -"#
    • EC2 Console 導覽

    • 建⽴立 EC2 Instance 的準備⼯工作

    • 建⽴立 Security Group

    • 建⽴立 Key Pair

    • 建⽴立 EC2 Instance

    • 使⽤用 Amazon Linux AMI

    • 安裝與啟動 HTTP Server

    View Slide

  45. EC2 Console 導覽 (1)
    -"#
    點選 EC2 服務,進⼊入 EC2 Console

    View Slide

  46. -"#
    EC2 Console 導覽 (2)
    左上⾓角的選單裡有
    提供選擇 EC2
    Region 的功能

    View Slide

  47. -"#
    EC2 Console 導覽 (3)
    Resources 提供使⽤用
    資源的總覽資訊,
    能⽅方便觀看出⺫⽬目前
    使⽤用的資源數量。

    View Slide

  48. -"#
    EC2 Console 導覽 (4)
    INSTANCES 選單內,提供建⽴立各種
    INSTANCE 的功能。如先前介紹的三
    種類型的 INSTANCE:

    On-Demand、Spot、Reserved

    View Slide

  49. -"#
    EC2 Console 導覽 (5)
    IMAGES 功能以 AMIs 最常⽤用,針對
    安裝好的 Instance 我們能將它建⽴立成
    AMI 作為建⽴立 Instance 的『範本』,
    不⽤用每回都從無到有安裝。

    View Slide

  50. -"#
    EC2 Console 導覽 (6)
    Security Group 即為 Instance 套⽤用的
    防⽕火牆設定,透過 Security Group 可
    指定對外開通的 port 與通訊協定。

    !
    unix-like 主機通常會開通 tcp:22 讓
    SSH Client;Windows 主機通常會開
    通 tcp:3389 讓遠端桌⾯面可以登⼊入。

    View Slide

  51. -"#
    EC2 Console 導覽 (7)
    KeyPairs 指定 unix-like 主機透過 SSH
    連線時使⽤用的 KeyPair。

    Windows 是使⽤用 RDP 與指定的
    KeyPair ⾃自動產⽣生的密碼

    View Slide

  52. -"#
    準備建⽴立 EC2 Instance
    • 準備⼯工作是必要的嗎?

    • 準備⼯工作不是必要的。任何有需要建⽴立的資源,
    例如 Security Group 與 Key Pair 在建⽴立的過程都
    會有提⽰示與分枝流程處理。

    • 事先準備有什麼好處?

    • 先計劃好你的設定,掌握安裝流程。未事先計
    劃,你的思路將被安裝流程掌握。

    View Slide

  53. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (1)
    預設的 Security Group,開
    放所有的網路通道。

    View Slide

  54. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (2)
    按下 Create Security Group 後,出現另⼀一個表單

    View Slide

  55. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (3)
    在 Type 欄選擇要加⼊入的防⽕火牆規則

    View Slide

  56. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (4)
    在 Source 欄指定允存進⼊入的 IP

    View Slide

  57. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (5)
    選擇 Anywhere 出現 0.0.0.0/0 表⽰示允許任意 IP

    View Slide

  58. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (6)
    重複先前的步驟加⼊入 HTTP 防⽕火牆規則

    View Slide

  59. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Security Group (7)
    完成 SSH 與 HTTP 防⽕火牆設定,按 Create 建⽴立

    View Slide

  60. 輸⼊入此 Key Pair 的命名
    -"#
    準備建⽴立 EC2 Instance

    建⽴立 Key Pair (1)

    View Slide

  61. -"#
    準備建⽴立 EC2 Instance

    建⽴立 Key Pair (2)
    按下『Create』後,畫⾯面會
    提⽰示你將有檔案要下載,請
    將此檔妥善保存。

    View Slide

  62. -"#
    準備事項『回顧』
    • 回顧⼀一下我們做了什麼

    • 建⽴立 Security Group 開通 SSH、RDP、HTTP

    • 建⽴立 Key Pair 並下載了⼀一份 .pem 檔

    • 其他⼯工作事項

    • 對 Windows User 來說,使⽤用 putty (ssh client)
    無法直接以 .pem 檔作為 key 登⼊入 Linux
    Server,需轉換為 putty 可接受的格式

    View Slide

  63. -"#
    建⽴立 EC2 Instance

    View Slide

  64. -"#
    建⽴立 EC2 Instance

    View Slide

  65. -"#
    建⽴立 EC2 Instance

    View Slide

  66. -"#
    建⽴立 EC2 Instance

    View Slide

  67. -"#
    建⽴立 EC2 Instance

    View Slide

  68. -"#
    建⽴立 EC2 Instance
    可以替 EC2 Instance 設定 Tag。⽽而 Name Tag
    會被當作機器的名稱,顯⽰示在 EC2 Instance
    總表,不填的情況則顯⽰示為空⽩白。

    View Slide

  69. -"#
    建⽴立 EC2 Instance
    選擇事先建⽴立的 MySecurityGroup

    View Slide

  70. -"#
    建⽴立 EC2 Instance

    View Slide

  71. -"#
    建⽴立 EC2 Instance
    選擇使⽤用 MyKeyPair,並勾選確認使⽤用。

    View Slide

  72. -"#
    建⽴立 EC2 Instance
    完成 EC2 Instance 啟動,接
    著可回到 EC2 管理⾴頁查看。

    View Slide

  73. -"#
    建⽴立 EC2 Instance
    新的 EC2 Instance 正在啟動中 ...

    View Slide

  74. -"#
    在 Linux or OSX 登⼊入 VM

    View Slide

  75. -"#
    在 Windows 登⼊入 Linux VM (1)
    下載 PuTTY 與 PuTTYgen

    View Slide

  76. -"#
    在 Windows 登⼊入 Linux VM (2)

    View Slide

  77. -"#
    在 Windows 登⼊入 Linux VM (3)
    檔案類型選 All Files 才會
    看得到 .pem 檔

    View Slide

  78. -"#
    在 Windows 登⼊入 Linux VM (4)
    載⼊入 Key File 後,它提⽰示
    你這是⼀一個 OpenSSH ⽤用
    的 private key,你需要使
    ⽤用 Save private key 功能,
    存成 Putty 可⽤用的格式

    View Slide

  79. -"#
    在 Windows 登⼊入 Linux VM (5)
    由功能表或 Actions 區的 Button 都有 Save
    private key 的功能,它們是⼀一樣的。請點選
    它,將檔案存成 ppk 格式

    View Slide

  80. -"#
    在 Windows 登⼊入 Linux VM (6)
    載⼊入 Key File 後,它提⽰示
    你這是⼀一個 OpenSSH ⽤用
    的 private key,你需要使
    ⽤用 Save private key 功能,
    存成 Putty 可⽤用的格式

    View Slide

  81. -"#
    在 Windows 登⼊入 Linux VM (7)
    Save private key 會跳出對
    話窗,詢問存檔位置。取
    個好記的檔名唄。

    View Slide

  82. -"#
    在 Windows 登⼊入 Linux VM (8)
    啟動 putty 後,要使⽤用 private key 登⼊入,
    需填寫 Connection/SSH/Auth 內的 Private
    key file to authentication 欄。

    !
    將先前轉換好的 ppk 格式的 private key 路
    徑指定上去。

    View Slide

  83. -"#
    在 Windows 登⼊入 Linux VM (9)

    View Slide

  84. -"#
    在 Windows 登⼊入 Linux VM (10)

    View Slide

  85. -"#
    在 Windows 登⼊入 Linux VM (11)
    確定 key file 指定完成後,可在 ec2 console
    查到您的主機位置,並填在 Host Name 欄,
    準備進⾏行連線

    View Slide

  86. -"#
    在 Windows 登⼊入 Linux VM (12)
    連線前,建議使⽤用 Saved Session,將剛剛⾟辛
    苦設定的內容存起來。

    View Slide

  87. -"#
    在 Windows 登⼊入 Linux VM (13)
    第 1 次連線的主機都會有此警告
    訊息,請按「是」繼續。

    View Slide

  88. -"#
    在 Windows 登⼊入 Linux VM (14)
    我們使⽤用的 AMI 它預設的使⽤用者為 ec2-user

    View Slide

  89. -"#
    在 Windows 登⼊入 Linux VM (15)

    View Slide

  90. -"#
    安裝並啟動 Http Server
    • 使⽤用 yum 安裝 apache http server

    View Slide

  91. -"#
    安裝並啟動 Http Server

    View Slide

  92. 關閉 Instance (1)

    View Slide

  93. 關閉 Instance (2)

    View Slide

  94. 關閉 Instance (3)

    View Slide

  95. -"#
    EC2 Lab 回顧
    • 你已經試過

    • 準備 security group 與 key pair

    • 建⽴立、關閉、移除 Instance

    • 能由 Linux 使⽤用 .pem 檔登⼊入

    • 轉換 .pem 成 putty 可使⽤用的 key file 由
    Windows 登⼊入

    • 安裝 httpd 並測試連線

    View Slide

  96. Simple Storage Service
    AWS 常⽤用服務 S3

    View Slide

  97. • http://aws.amazon.com/s3/

    • S3 服務即為 AWS 的資料存取服務。

    • 使⽤用者將檔案上傳⾄至 S3 的 Bucket 內,S3 將儲
    存於 Bucket 內的資料稱為 Object。

    • 使⽤用者可以修改 Object 的權限或 Metadata。
    S3 服務

    View Slide

  98. • Bucket 是 S3 服務儲存 Object 的容器。同時,
    可以想像成它是程式語⾔言內『名命空間』的概
    念。所以,Bucket 的名稱在整個 S3 服務內是唯
    ⼀一的,不可重複的命名。

    • 每⼀一組 AWS 帳號最多能建 100 個 Bucket。在
    Bucket 內沒有限制能放多少 Object,Object的
    存取效率與 Bucket 內的 Object 數量無關。
    Bucket

    View Slide

  99. • Bucket 會影響存取 S3 的 Domain Name 所以對
    命名規則有些要求(DNS 相容規則):

    • ⻑⾧長度需在 3 ⾄至 63 個字元之間

    • DNS 相容規則:名稱以⼀一個或⼀一個以上的單字
    組成,並以『.』相隔

    • 僅採⽤用⼩小寫字元

    • 開頭與結尾必需是字⺟母或數字

    • 可以使⽤用 {⼩小寫字元、數字、破折號(Dashes)}
    Bucket 命名規則

    View Slide

  100. • 合法命名的範例

    • myawsbucket

    • my.aws.bucket

    • myawsbucket.1

    • 不合法命名的範例

    • .myawsbucket

    • myawsbucket.

    • my..examplebucket
    Bucket 命名範例

    View Slide

  101. • 簡⽽而⾔言之,放的地理區域不同、付費價格不同。
    若與 EC2 同地理區傳輸免錢,若不同區算 AWS
    內傳輸價格。S3 傳檔⾄至 CloudFront 也算是 AWS
    內傳輸價格。
    Bucket 與 Region

    View Slide

  102. Object
    • S3 是⼀一個 key-value 的 storage。

    • 每⼀一個被放在 Bucket 內的 Object 會有⼀一個唯⼀一
    的 key,⽽而 value 即為此 Object 的內容。

    • key 的命名只有規範必需是以 UTF-8 編碼的字
    元,資料⻑⾧長度上限為 1024 Bytes。

    • Bucket 內沒有限定最多可放⼊入的 Object 的數
    量,但 value 必需在 5 TB 以內(單⼀一次上傳限
    制為 5 GB)

    View Slide

  103. 模擬 File System
    • 由於 S3 是⼀一個 key-value 的 storage,它並沒有
    『⺫⽬目錄』的概念,但是能以 key 來模擬。

    • 在 key 使⽤用 『/』符號隔開,寫成 Linux 路徑分
    隔字元的型式:

    !
    !
    • 在 API 裡將可指定『prefix』,例如:列出
    Object 時, 指定 john 就只會列出以 john 為開
    頭的 key 相關的 Object。
    For Example: the bucket "my-application" could include the following keys:
    1. john/settings/conf.txt
    2. jane/settings/conf.txt

    View Slide

  104. 權限控制
    • 每⼀一個 Object 有它獨⽴立的權限,可以限定被授
    權的對象,也能設定公開可讀。對於將 S3 當作
    靜態網⾴頁資料的檔案庫時,常是設為公開可讀
    的。

    • 權限控制的⽅方法

    • IAM Policies

    • Bucket Policies

    • ACL

    • Query String

    View Slide

  105. S3 常⾒見使⽤用情境
    • 當作靜態網站發佈,例如 AWS CTO 的 Blog

    http://www.allthingsdistributed.com/

    • 當作網站的圖床,也就是放⼤大量靜態圖⽚片的位
    置。靜態資料也常⾒見有⼈人放 S3,像是 css 或
    javascript 檔。S3 也能輕易接上 CDN 服務。

    • 解決瞬間⼤大量下載的⽅方案。例如:研討會的簡
    報、遊戲更新檔或瀏覽器 plugin。放在⼀一般的機
    房是有限流量的(依合約規定),短時間⼤大量
    下載使⽤用 Pay As You Go 沒有限流量,讓使⽤用者
    有⽐比較好的體驗。

    View Slide

  106. -"#
    建⽴立 S3 Bucket
    填上符合規則的 Bucket Name。
    這名稱必需是 S3 唯⼀一的 Bucket
    Name。

    View Slide

  107. -"#
    S3 Buckets Page
    建⽴立完成第1個 Bucket 後,S3 將你導向列
    出所有 Bucket 的⾴頁⾯面。這將是你未來進
    ⼊入 S3 看到的第 1 ⾴頁。

    !
    接著可 『 Double-Click』Bucket 名稱進⼊入
    列出所有 Object 的⾴頁⾯面。

    View Slide

  108. -"#
    S3 Objects Page
    由於沒有上傳過檔案,Bucket 內是空的。

    使⽤用『Upload』開啟上傳的對話窗。

    View Slide

  109. -"#
    Select Files to Upload
    點 Add Files 出現檔案選擇對話窗

    View Slide

  110. -"#
    Select Files
    能試著⽤用 Ctrl、Shift 鍵配合滑⿏鼠點擊多重
    選擇想上傳的檔案。

    View Slide

  111. -"#
    Modified Selected Files
    選擇了多個檔案,在這⼀一步,你還有機會調整要上傳
    的檔案清單,按『x』刪除不想上傳的檔

    View Slide

  112. -"#
    Go to Details Setting
    點選 Details 設定權限或其他屬性

    View Slide

  113. -"#
    Storage Type & Encryption

    View Slide

  114. -"#
    S3 ACL
    勾選 Make everything public 讓檔案可以公
    開下載:

    !
    !

    View Slide

  115. -"#
    S3 Metadata
    設定 Metadata。例如:Http Cache Control。若
    沒有要修改的,那就按下『Start Upload』開始
    上傳。

    View Slide

  116. -"#
    Upload Completed

    View Slide

  117. -"#
    S3 Object Properties
    點選 Object 後,按 Properties 觀看它的屬性。
    試著下載網址的內容

    View Slide

  118. -"#
    Object Context Menu
    在 Object 上點選滑⿏鼠右鍵,開啟 Context
    Menu,可以看到許多能針對 Object 操作
    的動作。

    View Slide

  119. -"#
    Remove Public Access
    展開 Permissions 將 Grantee: Everyone 刪除

    並 refresh 此⾴頁,讓 properties 更新。
    refresh

    View Slide

  120. -"#
    Private Object
    Object 不再有 Public Access 權限時,網址前會標⽰示鎖頭。

    若試著開啟它會得到『Access Denied』

    View Slide

  121. -"#
    Access By Query String
    https://s3-ap-southeast-1.amazonaws.com/lab.iii.20131006.qty/skype_nat_travsal.pdf?
    AWSAccessKeyId=ASIAIJYYLYFXTG3VJULQ&Expires=1381032318&Signature=zC7GkZ6e0ePnP1RVga1XrylguSM
    %3D&x-amz-security-token=AQoDYXdzEDwawAK%2BsaBNiQ2/9crgfWyKg9e0HzaRBTpOsAmmfM/
    aUD39C5WpML4YF4D2iSITChep7aCTyyica60B8%2BTwesN6Yml/1i/4NprIeWppqEK/
    39Hx7cox4lKA7LUZVfgUUEx9FqerE993dv4y/typ
    %2BtSoBuQnyKbgvoNnHGgDtqtv37EWjDMSgnMbO2kPfPOQ8MJiSSu/
    L8awBRsv2avSaAHt1LbyFAXtVmmelZo6p3HqJoiq5%2B4%2B5QbhrEBGG7mpXUahOPqsgNxt0VEjgut2zRA5GLVf
    mr0e43C4oQGr5kqMygWQaO/
    fo8OD77dGlqd0Z6lOKcCvmO9w0ZDl9OrJcZNN93Q3rpiyeUlBHSVSie8bwi6oQZwluhNJMEW/
    y1ejgdc9HVOHJhH8iDhn7wnAdBUGsJxb2xm%2BTSFLQIvtWr1jdTyTfiDancOSBQ%3D%3D

    View Slide

  122. -"#
    Access By Query String
    有可能是 180 秒開始倒數的,當時間變成負值時,此 URL 也過期了。
    https://s3-ap-southeast-1.amazonaws.com/lab.iii.20131006.qty/skype_nat_travsal.pdf?
    AWSAccessKeyId=ASIAIJYYLYFXTG3VJULQ
    &Expires=1381032318&Signature
    =zC7GkZ6e0ePnP1RVga1XrylguSM%3D&x-amz-security-token=AQoDYXdzEDwawAK
    %2BsaBNiQ2/9crgfWyKg9e0HzaRBTpOsAmmfM/aUD39C5WpML4YF4D2iSITChep7aCTyyica60B8%2BTwesN6Yml/1i/
    4NprIeWppqEK/39Hx7cox4lKA7LUZVfgUUEx9FqerE993dv4y/typ
    %2BtSoBuQnyKbgvoNnHGgDtqtv37EWjDMSgnMbO2kPfPOQ8MJiSSu/
    L8awBRsv2avSaAHt1LbyFAXtVmmelZo6p3HqJoiq5%2B4%2B5QbhrEBGG7mpXUahOPqsgNxt0VEjgut2zRA5GLVfmr0e4
    3C4oQGr5kqMygWQaO/
    fo8OD77dGlqd0Z6lOKcCvmO9w0ZDl9OrJcZNN93Q3rpiyeUlBHSVSie8bwi6oQZwluhNJMEW/
    y1ejgdc9HVOHJhH8iDhn7wnAdBUGsJxb2xm%2BTSFLQIvtWr1jdTyTfiDancOSBQ%3D%3D
    qty:~ qrtt1$ python

    Python 2.6.1 (r261:67515, Aug 2 2010, 20:10:18)

    [GCC 4.2.1 (Apple Inc. build 5646)] on darwin

    Type "help", "copyright", "credits" or "license" for more information.

    >>> import time

    >>> print (1381032318) - time.time()

    152.522821903

    View Slide

  123. -"#
    S3 Lab 回顧
    • 你已經試過

    • 建⽴立 Bucket,並上傳 Object

    • 能透過 S3 Console 修改它的屬性,權限設成
    public Object。

    • 由 Object Properties 查詢下載網址

    • 變更 Object 權限,例如將物件設為 private
    Object

    • 使⽤用 Query String 下載 private Object

    View Slide

  124. IAM Console 導覽 (1)
    -"#
    選擇『Users』進⼊入使⽤用者管理⾴頁⾯面

    View Slide

  125. IAM Console 導覽 (2)
    -"#
    選擇『Create New Users』建⽴立帳號

    View Slide

  126. IAM Console 導覽 (3)
    -"#
    輸⼊入帳號名稱

    View Slide

  127. IAM Console 導覽 (4)
    -"#
    帳號建⽴立成功 !!!

    View Slide

  128. IAM Console 導覽 (5)
    -"#
    查看帳號登⼊入資訊

    AWS Cli 或 AWS SDK 需要有它才能夠使⽤用

    View Slide

  129. IAM Console 導覽 (6)
    -"#
    將帳號資訊存檔

    View Slide

  130. IAM Console 導覽 (7)
    -"#
    點選權限設定⾴頁⾯面

    View Slide

  131. IAM Console 導覽 (8)
    -"#
    選擇『Power User Access』權限,

    授予⼤大部分的 API 實⽤用權限。

    View Slide

  132. IAM Console 導覽 (9)
    -"#
    系統產⽣生的權限設定

    按『Apply Policy』加⼊入權限

    View Slide

  133. IAM Console 導覽 (10)
    -"#
    完成權限設定,可以開始使
    ⽤用 AWS Cli 或 AWS SDK

    View Slide

  134. AWS Command Line (1)
    • AWS Command Line,簡稱 AWS Cli

    • 功能:下指令的控制 AWS 服務

    • AWS Cli 事實上是呼叫 AWS SDK for Python

    • 會使⽤用 AWS Cli 即距離 AWS SDK 不遠矣

    View Slide

  135. AWS Command Line (2)
    • AWS Cli 安裝

    • Windows:下載 .msi 安裝檔

    • Linux:使⽤用 Python 安裝⼯工具安裝

    • AWS Cli 設定

    • 使⽤用 aws configure 指令

    View Slide

  136. AWS Cli 安裝 (1)
    -"#

    View Slide

  137. AWS Cli 安裝 (2)
    -"#
    使⽤用預設設定即可,全都選擇『Next』

    View Slide

  138. AWS Cli 安裝 (3)
    -"#
    使⽤用預設設定即可,全都選擇『Next』

    View Slide

  139. AWS Cli 安裝 (4)
    -"#
    使⽤用預設設定即可,全都選擇『Next』

    View Slide

  140. AWS Cli 設定
    -"#
    • 準備項⺫⽬目

    • 使⽤用者 access key、secret key、region

    • 建⽴立設定檔

    • aws configure
    $ aws configure
    AWS Access Key ID [None]: (accesskey)
    AWS Secret Access Key [None]: (secretkey)
    Default region name [None]: ap-southeast-1
    Default output format [None]:

    View Slide

  141. AWS 帳單
    進⼊入帳單管理⾴頁⾯面

    View Slide

  142. AWS 帳單

    View Slide

  143. AWS 付款⽅方式
    在付款⽅方式管理⾴頁,會顯⽰示⺫⽬目前已註冊的信⽤用卡。

    在這⾴頁只有『增加』信⽤用卡的功能,

    刪除需使⽤用 AWS 帳號⾄至 amazon.com 登⼊入刪除。

    View Slide

  144. AWS 付款⽅方式
    登⼊入 amazon.com 後,進⼊入帳號管理⾴頁
    ⾯面,選擇 Manage Payment Options

    View Slide

  145. AWS 付款⽅方式
    編輯信⽤用卡內容,可選擇
    修改內容或刪除信⽤用卡。

    View Slide

  146. AWS 帳號停⽤用
    進⼊入 AWS 帳單管理⾴頁⾯面

    View Slide

  147. AWS 帳號停⽤用
    在帳號管理⾴頁的下⽅方
    有取消帳號的選項

    View Slide

  148. AWS 帳號停⽤用
    確認取消帳號後,即完成停⽤用。

    (只剩下 amazon.com 的功能)

    View Slide