2024年6月23日 星期日

如何查詢AWS EC2 實例的創立時間


查詢AWS EC2 實例相關訊息的方式可透過:

1. 控制台

2. CLI


《CLI》

•  aws ec2 describe-instances : 這是 AWS CLI 的一個命令,用於描述一個或多個 EC2 實例的屬性和狀態。

•  --instance-ids i-xxxxxxxxxxxxxxxxx : 指定要查詢的 EC2 實例的 ID (i-xxxxxxxxxxxxxxxxx)。

步驟:

AWS主選單進入CloudShell,輸入指令”aws ec2 describe-instances --instance-ids i-xxxxxxxxxxxxxxxxx” (xxxxxxxxxxxxxxxxx為實例ID),能查詢到以下資訊


Reservations: 一個包含預定信息的數組。

Instances: 一個包含實例信息的數組。

AmiLaunchIndex: 該實例在 AMI 启动索引中的位置。

ImageId: 該實例使用的 AMI (Amazon Machine Image) ID。

InstanceId: 該實例的 ID。

InstanceType: 該實例的類型(例如 t3.micro)。

KeyName: 用於 SSH 連接到該實例的密鑰對名稱。

LaunchTime: 該實例的啟動時間。

Monitoring: 該實例的監控狀態。

State: 監控狀態(例如 disabled)。

Placement: 該實例的放置信息。

AvailabilityZone: 該實例所在的可用區域(例如 ap-east-1b)。

GroupName: 放置群組名稱。

Tenancy: 該實例的租賃類型(例如 default)。

PrivateDnsName: 該實例的內部 DNS 名稱。

PrivateIpAddress: 該實例的內部 IP 地址。

ProductCodes: 該實例的產品代碼數組。

PublicDnsName: 該實例的公共 DNS 名稱。

PublicIpAddress: 該實例的公共 IP 地址。

State: 該實例的狀態。

Code: 該狀態的代碼(例如 16 表示運行中)。

Name: 該實例的狀態名稱(例如 running)。

StateTransitionReason: 狀態轉變的原因。

SubnetId: 該實例所在的子網 ID。

VpcId: 該實例所在的 VPC ID。

Architecture: 該實例的架構(例如 x86_64)。

BlockDeviceMappings: 該實例的塊設備映射。


但,以上方法查出的都是實例的“啟動時間”,而非“建立時間”,這時可利用其他方法查看,也就是實例的ENI及EBS卷的掛載時間。





(不過若在實例建立完成後,ENI及EBS有重新掛載過,即無法以掛載時間為依據)



參考資料:

AWS官方文檔-列出您的執行個體

https://docs.aws.amazon.com/zh_tw/cli/latest/userguide/cli-services-ec2-instances.html#listing-instances


國外網友分享查看ENI, EBS掛載時間

https://www.youtube.com/watch?v=k6x-zNh0L04



2024年6月16日 星期日

AWS Pre-warm(預熱)服務應用與申請

 

AWS Pre-warm(預熱)服務應用與申請

 

這個服務具體來說是指在有預期的流量暴增前,通過增加與優化資源,確保系統能夠平穩地應對可預期增多的流量。

預熱ELB需要聯繫AWS Support,並且需要預期的流量模式與請求等相關的詳細資訊,以便請原廠能夠優化配置負載均衡器的流量。

預熱的主要目的在於防止流量突然暴增因而導致的性能問題,從而預防並確保系統能在高負載的情況下依舊可以高效能運行,所以通常會類似以下的情形會需要進行AWS預熱,例如:

重大活動或促銷:在預期的流量高峰之前(如行銷活動、產品發布等),預熱可以幫助系統應對突發的大量請求。

流量模式變化:在應用程式或網站即將迎來流量模式顯著變化時(如季節性銷售),預熱有助於保持效能穩定。

負載平衡器的擴展:在規劃手動擴展負載平衡器時,透過預熱可以確保新增加的資源能快速投入使用。

 

如需請原廠幫忙預熱,會需要提供這些資訊

1. 需要手動擴展的 ELB(負載平衡器)的 DNS 名稱是什麼?

2. 流量大致增長的百分比,或預計通過 ELB 的請求及秒數?

3. 每個請求/回應對通過 ELB 的平均資料量? (以 KB 為單位)

4. 預計的平均流量增加趨勢? (ex:預計在一小時內穩定增加、預計會突然增加)

5. 通過 ELB 的流量中預計使用 SSL termination 的百分比?

6. ELB 的可用區域(AZ)為何?

7. 預計何時增加所需的 Instance Type,以及數量為何?

8. Pre-Warm 預計開始以及結束的時間?

9. 您預期的 Request Mode,例如:

(1) 是否為長時間運行的請求?

(2) 屬於基本的 GET/POST/PUT 請求?或大型文件的上傳/下載?

(3) 是否使用持久連線(keep-alive)等設定?

10. 是否有任何 Prod 環境會受到影響?

 

比較需要注意的部分是

通過 ELB 的流量中預計使用 SSL termination 的百分比

l   SSL termination 通常代指 ELB 啟用安全連線 (HTTPS) 的過程,需透過部屬 SSL 伺服器特定憑證(X.509),以及調整 ELB 相關設定方可達成。

預計何時增加所需的 Instance Type,以及數量為何?

l   指的是Pre-warm 期間所需要掛載於 ELB 上的 EC2 規格,包含其 Instance TypeInstance 數量


 參考資料:

Elastic Load Balancer SSL Support Options

https://aws.amazon.com/tw/blogs/aws/elastic-load-balancer-ssl-support-options/

 EC2 規格

https://aws.amazon.com/tw/ec2/instance-types/



2024年6月12日 星期三

收到AWS abuse report 濫用報告須注意與可採取行動

 

收到AWS濫用通知通常表示您的AWS帳戶可能有違規活動,例如託管惡意內容、參與DDoS攻擊或發送垃圾郵件。以下是您可以採取的一些步驟來處理此問題:

 

1. 閱讀通知並瞭解問題
首先,仔細閱讀AWS發給您的濫用通知,並理解具體的違規行為是什麼。通知中通常會包含以下資訊:
• 違規的詳細描述
• 違規的時間和涉及的資源(例如實例IDIP位址)
• 必須採取的行動
2. 檢查和確認違規行為
檢查資源
根據通知中的信息,確認涉及的資源。登入AWS管理控制台,檢查相關執行個體、S3儲存桶或其他資源。
檢查日誌
查看相關資源的日誌文件,找出可能的違規行為來源。例如:
• 查看EC2實例的系統日誌
• 檢查VPC流量日誌
• 審查CloudTrail事件歷史
3. 採取措施
根據通知和您發現的信息,採取必要的措施來解決問題:
修復或關閉受影響的資源
如果某個實例或服務被濫用,您可能需要修復安全漏洞或關閉該實例。
更新安全群組和存取策略
檢查並更新安全群組、網路ACLIAM策略,以防止未經授權的存取。
移除惡意內容
如果有惡意內容被託管在您的資源上,例如S3儲存桶或EC2實例,請立即將其移除。
4. 回覆AWS
根據AWS通知中的指示,回覆他們確認您已採取了適當的行動。通常,您需要提供以下資訊:
• 您已採取的修復措施
• 您計劃採取的預防措施,防止將來再發生類似事件
5. 防止未來的濫用
實施監控及告警
使用CloudWatchGuardDutyAWS Config等服務來監控您的資源並設定告警,以便在發現異常活動時立即採取行動。
定期審計和更新安全策略
定期審計您的AWS帳戶和資源的安全策略,確保它們遵循最佳實務並及時更新。

 

範例郵件回覆

以下是一個範例回覆郵件,您可以根據具體情況進行調整:
markdown
複製程式碼
Dear AWS Abuse Team,
 
We have received your notification regarding the abuse report on our account. We have investigated the issue and taken the following actions:
 
1. [Describe the specific actions you have taken, such as shutting down an affected EC2 instance, removing malicious content, updating security groups, etc.]
2. [Describe any preventative measures you have implemented to avoid future occurrences, such as monitoring enhancements, policy updates, etc.]
 
We appreciate your cooperation and are committed to maintaining compliance with AWS policies and ensuring the security of our resources.
 
Best regards,
[Your Name]
[Your Contact Information]
如果您需要進一步的幫助或具體的技術支持,請提供更多詳細信息,我會盡力協助您解決問題。
 



 參考資料:

* Amazon EC2 Security Groups User Guide:

 

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html(Linux)

https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/using-network-security.html(Windows)

* Tips for Securing EC2 Instances:

https://aws.amazon.com/answers/security/aws-securing-ec2-instances(Linux)

https://aws.amazon.com/answers/security/aws-securing-windows-instances (Windows)


搜尋此網誌