การจัดการค่าใช้จ่ายต่างๆโดยการติด tag ให้กับ resource ที่สร้างไว้ และตรวจสอบ tag ด้วย AWS Config
การสร้าง resource ต่างๆภายใน Cloud ของ AWS จะสามารถติด tag ให้กับ resource นั้นๆได้ โดยการติด tag ให้กับ resource มีประโยชน์ต่างๆ เช่น สามารถใช้ Cost Explorer สำหรับสำรวจค่าใช้จ่ายของ resource ที่มีการติด tag ที่เรากำหนดได้
ซึ่งในบทความนี้เราจะใช้ tag ร่วมกับ AWS Config เพื่อตรวจสอบ resource ให้เป็นไปตามที่เรากำหนด
Step 1: ตั้งค่า rule ใน AWS Config
ใน management console ให้มาที่บริการ AWS Config จากนั้นคลิกที่ Rules ในแถบด้านซ้าย
จากนั้นคลิกที่ Add rule
ในช่อง Find Rules ให้ค้นหาคำว่า required-tags จากนั้นติ๊ก แล้วกด Next
ตั้งชื่อตามที่ต้องการในช่อง Name โดยในบทความนี้จะใช้คำว่า Red-tags
ในส่วนของ Evaluation mode สำหรับบทความนี้จะตรวจสอบเฉพาะ EC2 ดังนั้นผมจะตั้งค่าตามภาพด้านล่างนี้
ส่วนของ Parameters ให้กำหนดค่าที่เราต้องการ ซึ่งผมจะกำหนด tag key เป็น Red จากนั้นเลื่อนลงแล้วกด Next
ทำการตรวจสอบการตั้งค่า จากนั้นกด Save
Step 2: สร้าง Channel ใน Slack, ตั้งค่า Amazon SNS และ AWS Chatbot
สำหรับส่วนนี้ สามารถดูการตั้งค่าในแต่ละส่วนได้จากบทความนี้
การส่ง Amazon GuardDuty ด้วย AWS Chatbot ไปยัง Slack
โดยดูที่หัวข้อ การสร้าง Channel ใน Slack, การตั้งค่า Amazon SNS และ การตั้งค่า AWS Chatbot
Step 3: ตั้งค่า Amazon EventBridge
ไปที่บริการ Amazon EventBridge จากนั้นคลิกที่ Rules ในแถบด้านซ้าย แล้วคลิก Create rule
ตั้งชื่อตามที่ต้องการ จากนั้นคลิก Next
ตั้งค่าตามภาพด้านล่าง
ในส่วนของ Creation method ให้ใส่โค๊ดตามนี้ และแก้ไขชื่อในส่วนของ configRuleName ให้เป็น rule ตามที่เราตั้งชื่อใน AWS Config ซึ่งในบทความนี้จะใช้ชื่อ Red-tags จากนั้นคลิก Next
{
"source": ["aws.config"],
"detail-type": ["Config Rules Compliance Change"],
"detail": {
"messageType": ["ComplianceChangeNotification"],
"configRuleName": ["Red-tags"],
"newEvaluationResult": {
"complianceType": ["NON_COMPLIANT"]
}
}
}
ในหน้า Select target(s) ให้เลือกบริการเป็น SNS และเลือก Topic ที่เราสร้างไว้จาก Step 2
จากนั้นคลิก Next จนไปถึงหน้า Review and create แล้วคลิก Create rule
ทดสอบ
ทดสอบโดยการสร้าง EC2 instance สามารถดูวิธีการสร้างได้ที่นี่
วิธีติดตั้ง Amazon Linux 2023 บน EC2 และเชื่อมต่อเซิร์ฟเวอร์ด้วยโปรแกรม PuTTY
เมื่อทำการสร้าง EC2 instance เรียบร้อย ก็จะมีแจ้งเตือนจาก Chatbot มาที่ slack เนื่องจากตอนสร้าง EC2 ไม่ได้กำหนด tag ให้มีค่าเป็น Red
สรุป
เราสามารถใช้ AWS Config ในการกำหนดการตั้งค่าให้เป็นไปตามการปฏิบัติที่ถูกต้องหรือข้อกำหนดที่เราต้องการ และเมื่อมีการสร้าง resource ที่ไม่เป็นไปตามที่เรากำหนด ก็สามารถทราบได้ทันทีผ่านทาง slack