Amazon Web Server
介紹
Amazon EC2
架伺服器的,動態擴充的VPS
Amazon RDS
放資料庫的
Amazon S3
CDN的功能,可以放圖片等等的靜態資源
IAM
Identify And Access Management, Global Service
Root Account是你創辦帳戶時就創建,而Users則是這個組織或是群組裡面的用戶
IMA
在進行IMA的設定時,右上角的區域會被鎖定成「Global」,因為IAM的設定是全局生效的
進行練習時,首先先創立一個User,因為我們所創建的Aws帳號都是Root User
創建使用者
指定使用者的類型,密碼型態
創建好之後,可以使用這邊的Url登入
Account Id在這邊查看
登入畫面
創建群組,創建完之後記得要勾喔,我這邊忘了截圖。創建完、加完後,這個群組的User就有Admin的權限了
IMA Policy
使用JSON來做User的Group的設定,定義了各種Permissions,範例如下
- Version: Policy Language的版本,通常都是2012-10-12
- Id:一個識別碼,可填可不填
- Statement:必填的,可以是一個或是多個
- Sid:每個Statement的Id,選填的
- Effect:Allow 或是 Deny
- Principal: 這個帳戶遵循的是哪個policy
- Action:Effect所Allow或Deny的
- Resource:Action所使用的resouces
- Condition:Effect生效的條件 選填
|
|
Policy的詳細設定
可以點擊右邊的Policies查看
點擊右邊的Json就會顯示出他的Json長什麼樣子
|
|
Json與Action的對應,可以使用WildCard來匹配
當然你也是可以自己Custome自己的Police啦
Aws Command Line Interface
安裝
到官網下載對應的版本
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
安裝好後在Terminal中輸入,就可以看到對應的資料了
|
|
創建AccessKey
跟所有的Access Key一樣,這些Key也只會在這邊顯示這一次,之後就不會再顯示了
輸入來設定
|
|
列出IAM User List
|
|
Cloud Shell
其實就是一個雲端Termianl,跟Digital Ocean的那個差不多
IAM Role
有些 AWS 服務需要代表你執行操作,為此,我們將使用 IAM 角色分配權限給 AWS 服務
Some AWS service will need to perform actions on your behalf. To do so, you assign permissions to AWS services with IAM Roles.
完成!
為Aws設置帳單提醒
記得先用Root帳號,把IAM user and role access to Billing Information
選擇Billing And Cost Management
就能看到這樣的畫面
選擇Bill 可以看到目前的帳單狀況
在最下面有個charge By service,可以查看哪些服務各自花了什麼內容
實際進入帳單警告(Alert)的部分則是從這邊
選擇右邊橘色的ceate a budget
選擇Zero Spend Budget,這樣如果只要有被收到費,就會立刻寄信給我們,要我們處理
還有這種如果月帳單超過10塊,就發通知給我們的
EC2(Elastic Compute Cloud) 彈性雲端運算
是個IAAS(Infrastructure as a Service)
EC2有什麼功能呢
- 租用虛擬機Elastic Compute Cloud(EC2)
- 儲存資料 Elastic Block Store(EBS)
- 負載均衡Elastic Load Balance(ELB)
- Scaling the service using an Auto-Scaling Group(ASG)
一些EC2的類型,當然不只有以下這五種,還有很多,只是列出五種作參考
創建EC2
選擇創建Key Pair
還有網路的部分,要把下面的Allow Http traffic from the Internet,這樣才可以部屬Web服務
接下來拉到最底下,有個User Data,但我覺得命名的不是很好,這邊其實就是指定EC2初次啟動時的執行腳本是什麼,我們可以複製以下的內容到EC2當中
|
|
選好了之後就可以按創建了,創建完之後點選我們剛剛創建的instance,就可以看到詳細的內容
開啟的Port,一些security的內容
你也可以通過訪問你創建的Public Ip 來看到你剛剛User Data 的內容
七種不同的EC2 Instance
https://aws.amazon.com/tw/ec2/instance-types/
Instance的命名邏輯
m5.2xlarge
m: instance class
5: generation 世代
2xlarge: size within the instance class ,通常代表了多大的記憶體、硬碟空間、CPU
General Purpose
通常用來做Web Server或是Code Repository
Compute Optimized
資料處理、高計算、機器學習、遊戲伺服器的Instance
Memory Optimized
可以很快地把東西放到Memory中,適合用來作為資料庫儲存的Instance,或是放一些對Real-Time即時性較高的資料
Storage Optimzed
對於高讀寫很有一套,適合用在高頻交易(OLTP)系統、關聯、非關聯式資料庫
Security Groups
一個類似防火牆的東西,把EC2 繞起來
相同Security Group的Instance可以相互通訊
所謂的Inbound Rules跟Outbound rules就是傳入規則與傳出規則
可以按右上角的Edit Inbound Rules 編輯一下規則,向我這邊就把Http的規則加進來
常見的Port
- 22: SSH連線
- 21: FTP連線
- 22:透過SSH來使用FTP上傳檔案
- 80:HTTP
- 443:HTTPS
- 3389:RDP 登入Windows Instance
如何SSH進去我的EC2 Instance
首先電腦裡面要有你RSD的密鑰檔,並確保你的Security允許SSH連線
然後結合你的Public Ip
語法
ec2-user是創建instance時就會幫我們創建的一個user
|
|
這樣就行囉,如果不行的話可能要用chmod調一下權限
EBS
EBS Volume
類似資料庫的東西,可以儲存資料的東西
參考網址
【Udemy付费课程】Ultimate AWS Certified Solutions Architect Associate AWS认证课程