【總結】學習AWS的VPC並通過快速上手實驗室動手實操
阿新 • • 發佈:2019-01-09
講師:黃濤 高階技術講師
1.邱洋的理解
- AWS的服務型別包括
- 計算、儲存內容分發、聯網、資料庫等10多大類,幾十項服務
- 但是跟網路相關只有2個(VPC和資料中心光纖連線)
- AWS的VPC是雲端計算中網路運維的基石,是SDN能力的體現
- VPC是一整套模擬傳統網路運維的工具,包括:
- 子網
- DHCP
- 防火牆(安全組)
- 路由表(NACL)
- DNS
- 閘道器
- VPN等眾多功能
- AWS的快速上手實驗室,模式值得學習,包括:
- 實驗概述說明
- 實驗具體操作步驟文件(如按照服務的生命週期維度進行設計:建立、修改、刪除1.2.3.4)
- 實驗相關檔案附件(如CFN的json)
- 自動開通的AWS測試賬號
- 針對不同級別級別使用者的練習(如基礎、高階、專家等)
- 針對客戶實際業務場景的練習(如大資料、移動開發)
2.AWS的服務學習方法
2.1.AWS的雲服務列表overview
- 計算
- EC2(雲中的虛擬伺服器)
- EC2 Contrainer Service(執行和管理docker容器)
- Elastic Beanstalk(執行和管理web應用程式)
- Lambda(事件驅動的計算服務)
- 儲存和內容分發
- S3(可擴充套件的雲端儲存)
- CloudFront(全球內容分發網路CDN)
- Elastic File System(針對EC2完全託管的檔案系統)
- Glacier(雲中的歸檔儲存-虛擬帶庫)
- Import/Export Snowball(大規模資料傳遞的硬體)
- Sotrage Gateway(混合儲存整合)
- 分析
- Elastic MapReduce(Hadoop託管框架)
- Kinesis(實時處理流媒體傳輸)
- 聯網
- VPC(隔離的雲網絡)
- Direct Connect(AWS專用網路連線)
- 資料庫
- RDS(管理型關係資料庫服務)
- DynamoDB(可預見,可擴充套件,全託管的NoSQL資料庫)
- RedShift(託管的資料倉庫)
- ElasticCache(記憶體快取)
- 應用程式服務
- API Gateway(構建、部署和管理API)
- AppStream(低延遲的應用程式流)
- CloudSearch(管理型搜尋服務)
- SQS(訊息佇列服務)
- SWF(協調應用程式元件的工作流服務)
- 開發人員工具
- CodeCommit(在私有Git儲存庫中儲存程式碼)
- CodeDeploy(自動程式碼部署)
- CodePipeline(使用持續交付釋出軟體)
- 管理工具
- CloudWatch(監控資源和應用程式)
- CloudFormation(使用模板建立和管理資源)
- CloudTrail(跟蹤使用者活動和API使用)
- Config(跟蹤資源庫存和變更)
- OpsWorks(用Chef自動化操作)
- Service Catlog(建立和使用標準化的產品)
- Trusted Advisor(優化效能和安全)
- 安全&身份
- IAM(管理使用者訪問和加密金鑰)
- 物聯網
- AWS IoT(將裝置連線到雲)
- 遊戲開發
- GameLift(部署和擴充套件基於會話的多人遊戲)
- 移動服務
- Mobile Hub(構建、測試和監控移動應用)
- Cognito(使用者身份和應用程式資料庫同步)??
- Device Farm(在雲中的真實裝置上測試android、ios應用)
- SNS(推送通知服務)
2.2.AWS的服務學習路徑
1.自學視訊
2.線上課程 or AWSome Day(線下公開課)
3.快速上手實驗室 china.qwiklab.com
4.服務文件 or FAQ
5.AWS免費套餐(動手操作)
6.原廠培訓(20人以內小課堂培訓)
7.參加AWS的認證(不一定參加過培訓)
2.3.AWS快速上手實驗室
- 與應用場景高度相關的動手實驗內容,即學即用
- 實驗練習針對服務(包括入門級、基礎級、高階級、專家級)
- 挑戰任務針對場景(主要是按照業務場景需要,重新組合實驗練習的用例)
- 詳盡實驗指導,包括
- 實驗詳細指導步驟(涵蓋的主題說明、相關的AWS服務進行簡單講解、具體的操作步驟)
- 命令列參考檔案(如policy配置)
- 實驗練習的詳細資料
- 比閱讀海量文件更快速、精確、有效
- 無需AWS中國區賬號直接在AWS平臺上動手練習
- 多樣化的虛席挑戰任務,完成獲得實驗勳章
- 不會破壞生產環境
3.VPC的基礎知識
3.1.VPC的概念
- VPC的定義:Virtual Private Cloud—雲網絡,是一個在AWS方便使用者靈活定義自己網路的工具
- 傳統資料中心跟網路相關的內容包括:
- 防火牆(阻擋網際網路威脅,前端和後端服務的保護)
- 公有子網(部署負載均衡器、路由器等)
- 私有子網(部署網路前端、應用伺服器、資料庫伺服器等)
- 防火牆(阻擋網際網路威脅,前端和後端服務的保護)
- 在VPC中定義傳統網路架構
- 安全組
- 公有子網
- 私有子網
- 多可用區(AZ)部署
VPC就是網路
- VPC中的CIDR網路:
- 10.1.2.0/24 → 10.1.2.0/255.255.255.0 約 250個IP地址
- VPC中的子網:
- 配置路由的單位
- 路由和閘道器
- 預設配置是VPC內路由直通(無法通過設定阻止同一VPC中的例項路由不可達)
- 網際網路閘道器(igw)—定義了igw閘道器的子網是公有子網,否則就是私有子網。公有子網內的EC2例項,可以直接訪問網際網路主機,以及被網際網路的其他主機訪問
- NAT伺服器—私有子網的EC2例項無法訪問網際網路以及被訪問。如果要出外網,則需要將公有子網內的EC2設定為NAT伺服器出外網。
AWS自己提供了NAT Gateway服務,不用使用者自己設定NAT例項了
- VPN(vgw)—如果AWS需要與客戶本地IDC互通,則需要申請一個vgw閘道器用於VPN連線
VPC是安全的基礎
VPC相當於一個籬笆,清晰的隔離和內聯
- VPC隔開不同使用者的資源,同一使用者不同邏輯也可隔開
- VPC內的資源保證了互聯互通的能力
網路訪問控制NACL(防火牆type1)
- 保護整個子網的防火牆
- 進出子網的流量歸他管,但是子網內部的流量不歸他管
安全組(防火牆type2)
- 精確到每個虛擬網絡卡的防火牆控制
- 既是安全控制,也是安全身份標識(因為可以在安全組授權的時候,開放另一個安全組到這個安全組的特定埠)
VPC是架構工具
- EC2、RDS在佈局的時候怎麼選擇AZ?
- 子網對映隱藏了AZ的選擇
- VPC可以覆蓋整個區域,但子網必然屬於一個VPC(這就是為什麼經常看到AWS設計的時候一個VPC中對應DB、WEB、APP等應用都規劃2個子網,因為HA架構需要在不同的AZ部署)
- VPC定義完整後,資源只要“放入”子網即可
- 安全組是安全架構的重要部分
- 使用安全組搭建信任鏈
- 勾畫出模組間的安全關係
- 發現安全邊界和可能的發生的許可權提升
3.2.在AWS中建立一個VPC
最終希望達到的效果,建立一個VPC並在其中建立一個VM
1.定義一個VPC(公有子網)
2.在其中一個AZ中定義一個子網
3.設計DNS Server
- 如果啟用DNS解析,則需要指定一個DNS主機,這樣EC2例項就自動使用這個DNS
- 否則就使用AWS提供的router53作為DNS
4.思考Gateway的設定
- 因為一開始定義了公有子網,則系統會自動生成igw,並將其繫結給vpc的公有子網使用
5.思考路由表Router的設定
- 之前提到子網是定義路由表的工具,但是1個路由表可以給多個子網使用
- 一個VPC中有多個路由表,會有1個主路由表和多個非主路由表
- 主路由表無法被刪除的,AWS預設建立的,如果一個子網沒有設定路由表或路由表被刪除,那麼預設就使用主路由表
- 預設VPC的路由表的第一條router規則就是指向自身,如10.1.2.0、local,且無法被刪除 )
6.安全組的設計考慮
- 上行(入站)只開放必要埠
- 下行(出站)亦是
- 通過安全組標識伺服器組(如DB安全組、WEB安全組等)
7.建立EC2例項,在這個VPC中,並使用設計好的安全組
8.為EC2例項繫結EIP
- 雖然EC2的例項跑在公有子網中,但是由於沒有固定的公有IP地址,因此只能通過AWS的域名訪問,而如果想自己解析IP就會有問題(如重啟VM後IP變化等)這是就需要建立一個彈性IP(AWS固定的公有IP)給EC2例項使用
9.刪除VPC
- VPC要刪除必須保證沒有EC2例項在這個VPC下面的子網中
4.VPC總結
- 構建網路的服務
- 安全的基石
- 架構的利器
後續問題
- 整合內部DNS服務
- 可以自定義DNS記錄嗎?
- 多樣的網管可能,可配置的路由選項
- 怎麼連線到企業內部網路?
- CIDR設定需要考慮什麼?
- 靈活的安全功能
- 怎麼設定防火牆?
- 多網絡卡和多IP
- 需要給軟體狗繫結MAC,怎麼破?
- 需要固定IP地址,有解嗎?
以上這些就要參加AWS的講師指導課程了……