亞馬遜雲主機(EC2)配置與搭建全流程指南
一、核心優勢與適用場景:
亞馬遜雲主機(Amazon EC2)作為AWS核心服務之一,提供彈性、可擴充套件的虛擬化計算資源,適用於:
-
Web服務部署:快速搭建高可用網站或API服務;
-
大資料處理:彈性擴充套件Hadoop/Spark叢集;
-
開發測試環境:按需建立沙箱環境,按秒計費;
-
災難恢復:跨可用區(AZ)部署多副本架構。
核心優勢:
二、配置流程詳解
1. 賬號準備與IAM許可權配置
-
註冊AWS賬號:訪問 https://www.kaihu123.com/Cloud/aws-developer-tools/,使用郵箱或手機號註冊;
-
啟用MFA:為根賬號繫結多因素認證(Google Authenticator或硬體金鑰);
-
建立IAM使用者:遵循最小許可權原則,分配
AmazonEC2FullAccess
策略。
CLI初始化:
# 配置AWS CLI憑證 aws configure AWS Access Key ID [None]: AKIAXXXXXXXXXXXXXXXX AWS Secret Access Key [None]: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Default region name [None]: us-west-2 Default output format [None]: json
2. 建立EC2例項
步驟1:選擇AMI(系統映象)
步驟2:例項型別選擇
-
通用型:t3.micro(免費層適用)/ m6i.large(高性價比);
-
計算最佳化型:c5n.4xlarge(HPC場景);
-
記憶體最佳化型:r6g.2xlarge(資料庫/快取)。
步驟3:網路與安全組配置
-
VPC:預設VPC或自定義CIDR(如10.0.0.0/16);
-
子網:選擇公有子網(自動分配公網IP);
-
安全組(防火牆):
-
開放SSH(22/TCP)源IP限制為管理端;
-
HTTP/HTTPS開放0.0.0.0/0。
-
CLI建立例項:
aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type t3.micro \ --key-name MyKeyPair \ --security-group-ids sg-0abcdef1234567890 \ --subnet-id subnet-0abcdef1234567890
3. 儲存配置(EBS卷)
-
根卷:預設8GB GP2 SSD,建議擴充套件至30GB;
-
資料卷:按需掛載Provisioned IOPS(io1)或吞吐最佳化HDD(st1)。
掛載與格式化:
# 檢視未掛載磁碟 lsblk # 格式化並掛載 sudo mkfs -t xfs /dev/nvme1n1 sudo mkdir /data sudo mount /dev/nvme1n1 /data # 持久化配置 echo "/dev/nvme1n1 /data xfs defaults,nofail 0 2" | sudo tee -a /etc/fstab
4. 網路與訪問管理
-
彈性IP(EIP):保留靜態公網IP並繫結例項;
-
路由表:配置網際網路閘道器(IGW)確保子網可出站;
-
系統管理器(SSM):替代SSH,透過IAM策略控制訪問(更安全)。
啟用SSM訪問:
-
為例項附加IAM角色
AmazonEC2RoleforSSM
; -
透過AWS Console訪問例項終端:
路徑:AWS Systems Manager → Session Manager → 啟動會話。
5. 應用部署與自動化
示例:部署Nginx Web服務
# Amazon Linux 2 sudo amazon-linux-extras install nginx1 -y sudo systemctl enable nginx && sudo systemctl start nginx # 驗證 curl http://localhost
使用UserData自動化初始化:
在EC2啟動配置中填入指令碼:
#!/bin/bash yum update -y yum install -y nginx systemctl start nginx
6. 監控與維護
-
CloudWatch監控:配置CPU、記憶體、磁碟告警閾值;
-
自動擴充套件組(ASG):定義伸縮策略應對流量波動;
-
補丁管理:啟用Systems Manager Patch Manager定期更新。
CLI檢視監控資料:
aws cloudwatch get-metric-statistics \ --namespace AWS/EC2 \ --metric-name CPUUtilization \ --dimensions Name=InstanceId,Value=i-0abcdef1234567890 \ --start-time 2023-10-01T00:00:00Z \ --end-time 2023-10-02T00:00:00Z \ --period 3600 \ --statistics Average
三、成本最佳化與安全加固
1. 成本控制
-
Spot例項:用於容錯任務(降價70%);
-
預留例項:長期負載提前鎖定折扣;
-
S3生命週期策略:歸檔非熱資料至Glacier。
2. 安全最佳實踐
-
停用根卷預設密碼:使用金鑰對或SSM登入;
-
VPC流日誌:監控異常流量(如未經授權的SSH嘗試);
-
定期快照:加密EBS卷並跨區域複製。
四、故障排查工具
1. 例項連線失敗
-
檢查安全組:確保源IP和埠放行;
-
系統日誌診斷:
aws ec2 get-console-output --instance-id i-0abcdef1234567890
2. 效能瓶頸分析
-
CloudWatch Metrics:定位高CPU/記憶體程序;
-
EC2狀態檢查:區分例項級與系統級故障。
五、總結
亞馬遜EC2的配置核心在於資源精準匹配與安全合規:
-
資源選型:根據負載選擇例項族與儲存型別;
-
網路隔離:透過VPC和安全組實施最小化暴露;
-
自動化運維:利用UserData、CloudFormation提升效率。
Azure 虛擬機器上的 SQL Ser...
利用完全託管、智慧且可擴充套件的 Pos...
使用可縮放的開源 MySQL 資料庫進行...
企業就緒且完全託管的社群 MariaDB...
分散式可縮放記憶體中解決方案,提供超快速...
使用 Azure 資料工廠整合所有資料,...