--- title: GooGle Compute Engine # 簡報的名稱 tags: GCP # 簡報的標籤 --- ## GCP Compute Engine ---- ## Agenda - GCE介紹 - 建立VM - 登入VM - 中繼資料 - 序列控制台 - 監控 --- ## GCE介紹 ---- ### Resource | | Description | | -------- | -------- | | Global | global static external IP(HTTP(S)LB)、image、Snapshots、VPC Network、Firewal、Routes | Region |regional static external IP、VPC Subnet、Regional persistent disks | Zone | Instances、Persistent disks、Machine types、instance group ---- ### Machine types | Type | Description | | -------- | -------- | | N1 | 提供多達96 個vCPU,並為每個vCPU 提供最高6.5 GB 內存 | N2 | 提供多達80 個vCPU,並為每個vCPU 提供最高8 GB 內存 | N2D | 提供多達224 個vCPU,並為每個vCPU 提供最高8 GB 內存 | E2 | 總擁有成本最低,可提供多達16個vCPU,並為每個vCPU提供最高8 GB內存。 | 計算優化(C2) |提供高端的vCPU 性能,適合計算密集型工作負載 | 內存優化(M2) | 機器提供的內存最大,最適合內存數據庫 ---- ### 對不同工作負載的機器類型建議 ![](https://i.imgur.com/KevrmI7.png) ---- ### Disk - Regional standard persistent disk and regional SSD persistent disk - Zonal standard persistent disk and zonal SSD persistent disk - Local SSD - 比SSD擁有更高的讀寫與低延遲 - 資料會在停止或刪除VM時被清除 ---- ### 計價方式 - 用多少付多少 - 以秒計費 - 停用服務後,就不必再支付費用 - 先占VM執行個體(最多可省79%) - 承諾使用折扣(最多可省57%) - 續用折扣(最多可省30%) - 自訂機器類型(最多可省48%) ---- ### ### 所有定價 - [VM 執行個體定價](https://cloud.google.com/compute/vm-instance-pricing?hl=zh-tw) - [網路定價](https://cloud.google.com/compute/network-pricing?hl=zh-tw) - [單一用戶群節點定價](https://cloud.google.com/compute/sole-tenant-pricing?hl=zh-tw) - [GPU 定價](https://cloud.google.com/compute/gpus-pricing?hl=zh-tw) - [磁碟和映像檔定價](https://cloud.google.com/compute/disks-image-pricing?hl=zh-tw) - [計算工具](https://cloud.google.com/products/calculator?hl=zh-tw) ---- ### 配額 VS 保留項目 | |Quotas | Reservations | | -------- | -------- | -------- | | 費用 | 免費 | 收費 | |取得|向GCP申請|在目前可使用配額範圍內可設定保留的資源 | 用途 | 創建特定類型資源的最大數量(如果這些資源的可用數量足够)|保留的資源可供 Project 無限期使用,直到保留被刪除 |資源|CPU、GPU、VM、preemptible、Disk、IP、Instance groups|CPU、CPU platform、RAM、GPU、Local SSD| ---- ### Labels - 協助我們管理專案資源 - 主機的群組化管理 - 查詢各機器的cpu、disk花費 --- ## Create instance - New VM instance - GCE Console - gcloud command-line - New VM instance from template - New VM instance from machine image - Marketplace ---- ### gcloud command-line ``` gcloud compute images list ``` ``` gcloud compute instances create [INSTANCE_NAME] \ --zone [Zone] --image-project [cloud] \ --image-family [IMAGE_FAMILY] \ --machine-type [MACHINE_TYPE] \ --boot-disk-size [BOOT_DISK_SIZE] \ --boot-disk-type [BOOT_DISK_TYPE] ``` --- ## Login VM instance ---- ### Windows Login 1. 設定帳密 2. 防火牆開3389 Port 3. 下載RDP連線 ---- ### Linux Login 1. 上傳公鑰 2. 防火牆開22 Port 3. SSH ---- ### SSH公鑰認證 <h5 style="text-align:left"> GCP SSH連線是使用「公鑰認證(Public Key Authentication)」方式,透過非對稱金鑰的方式來驗證 SSH 連線。 首先我們要產生一組公私鑰,私鑰自己保管,公鑰則放到遠端主機。 公鑰用於加密;私鑰用於解密。</h5> ---- #### 產金鑰 ``` ssh-keygen -m PEM -t rsa -b 4096 -C "jay" ``` ``` ssh-keygen = 用來建立金鑰的程式 -m PEM= 將金鑰格式化為 PEM -t rsa = 要建立的金鑰類型 -b 4096 = 金鑰中的位元數 -C = 附加至公開金鑰檔案結尾以便輕鬆識別的註解 ``` ---- ### 本機SSH ``` ssh -i [私鑰路徑] [遠端主機IP] ``` ---- #### Google Cloud Console SSH --- ## 中繼資料 - metedata 可以分配給 Project 與 VM 2個級別 - 每個VM都會將metedata 存在 metedata server - project metedata 會套用到 project 內所有的VM,而VM metedata 只會套用在該 VM上 - 以 key:value 格式儲存 - metedata server 在處理 startup 與 shutdown script 會特別有用 - VM metedata 優先於Project metedata --- ## 序列控制台 <h5 style="text-align:left"> 協助我們處理未正確啟動或無法存取的執行個體問題 </h5> <h6 style="text-align:left"> 以windows為例 </h6> 1. 啟用序列控制台 2. 連線序列控制台 3. 在SAC執行cmd 取得一個channel 4. 輸入 ESC+tab 切換到這個 channel 5. 輸入帳號及密碼登入到 windows 命令提示字元視窗 --- ## 監控 - Stackdriver Logging - 硬體、網路 ---- ## Thank you for listening